本文整理汇总了C#中Loader.Store方法的典型用法代码示例。如果您正苦于以下问题:C# Loader.Store方法的具体用法?C# Loader.Store怎么用?C# Loader.Store使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Loader
的用法示例。
在下文中一共展示了Loader.Store方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: PrintCompound
/// <summary>
/// Prints a stored representation of each application in the compound that has its "request_dump" flag set.
/// </summary>
public void PrintCompound()
{
var tasks =
Application.Compound.Where(app => app.Meta[DumpRequestFlag].Switch).Select(
app =>
new KeyValuePair<ModuleName, Task<ITarget>>(app.Module.Name, ModuleCache.BuildAsync(app.Module.Name)))
.ToDictionary(k => k.Key, k => k.Value);
foreach (var entry in tasks)
{
var name = entry.Key;
var target = entry.Value.Result;
Console.WriteLine();
Console.WriteLine("################################## begin of stored representation for {0} ",name);
var opt = new LoaderOptions(Engine, new Application(target.Module), target.Symbols)
{ReconstructSymbols = false, RegisterCommands = false, StoreSymbols = true};
var ldr = new Loader(opt);
ldr.Store(Console.Out);
Console.WriteLine("################################## end of stored representation for {0} ----------", name);
}
}
示例2: Store
/// <summary>
/// Writes the application to the supplied <paramref name = "writer" /> using the default settings.
/// </summary>
/// <param name = "writer">The <see cref = "TextWriter" /> to write the application to.</param>
/// <remarks>
/// <para>
/// <c>Store</c> is always superior to <see cref = "StoreInString" />.
/// </para>
/// <example>
/// <para>
/// If you want to write the application to stdout, use <see cref = "Store" /> and not <see
/// cref = "StoreInString" /> like in the following example:
/// </para>
/// <code>
/// public void WriteApplicationToStdOut(Application app)
/// {
/// app.Store(Console.Out);
/// //instead of
/// // Console.Write(app.StoreInString());
/// }
/// </code>
/// <para>
/// By using the <see cref = "Store" />, everything Prexonite assembles is immedeately sent to stdout.
/// </para>
/// </example>
/// </remarks>
public void Store(TextWriter writer)
{
//Create a crippled engine for this process
var eng = new Engine {ExecutionProhibited = true};
var ldr = new Loader(eng, this);
ldr.Store(writer);
}