本文整理汇总了C#中Mono.CompilerServices.SymbolWriter.SourceMethodBuilder类的典型用法代码示例。如果您正苦于以下问题:C# SourceMethodBuilder类的具体用法?C# SourceMethodBuilder怎么用?C# SourceMethodBuilder使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
SourceMethodBuilder类属于Mono.CompilerServices.SymbolWriter命名空间,在下文中一共展示了SourceMethodBuilder类的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C#代码示例。
示例1: ConvertSequencePoints
void ConvertSequencePoints (PdbFunction function, SourceFile file, SourceMethodBuilder builder)
{
foreach (var line in function.lines.SelectMany (lines => lines.lines))
builder.MarkSequencePoint (
(int) line.offset,
file.CompilationUnit.SourceFile,
(int) line.lineBegin,
(int) line.colBegin, line.lineBegin == 0xfeefee);
}
开发者ID:kumpera,项目名称:mono,代码行数:9,代码来源:Driver.cs
示例2: ConvertSequencePoints
void ConvertSequencePoints (PdbFunction function, SourceFile file, SourceMethodBuilder builder)
{
int last_line = 0;
foreach (var line in function.lines.SelectMany (lines => lines.lines)) {
// 0xfeefee is an MS convention, we can't pass it into mdb files, so we use the last non-hidden line
bool is_hidden = line.lineBegin == 0xfeefee;
builder.MarkSequencePoint (
(int) line.offset,
file.CompilationUnit.SourceFile,
is_hidden ? last_line : (int) line.lineBegin,
(int) line.colBegin, is_hidden);
if (!is_hidden)
last_line = (int) line.lineBegin;
}
}
开发者ID:GirlD,项目名称:mono,代码行数:15,代码来源:Driver.cs
示例3: CreateEmitContext
public override EmitContext CreateEmitContext (ILGenerator ig, SourceMethodBuilder sourceMethod)
{
EmitContext ec = new EmitContext (this, ig, ReturnType, sourceMethod);
ec.CurrentAnonymousMethod = AnonymousMethod;
return ec;
}
开发者ID:rabink,项目名称:mono,代码行数:6,代码来源:anonymous.cs
示例4: CreateEmitContext
public virtual EmitContext CreateEmitContext (ILGenerator ig, SourceMethodBuilder sourceMethod)
{
return new EmitContext (this, ig, MemberType, sourceMethod);
}
开发者ID:OpenFlex,项目名称:playscript-mono,代码行数:4,代码来源:method.cs
示例5: NotImplementedException
EmitContext IMethodData.CreateEmitContext (ILGenerator ig, SourceMethodBuilder sourceMethod)
{
throw new NotImplementedException ();
}
开发者ID:OpenFlex,项目名称:playscript-mono,代码行数:4,代码来源:method.cs
示例6: EmitContext
public EmitContext (IMemberContext rc, ILGenerator ig, TypeSpec return_type, SourceMethodBuilder methodSymbols)
{
this.member_context = rc;
this.ig = ig;
this.return_type = return_type;
if (rc.Module.Compiler.Settings.Checked)
flags |= Options.CheckedScope;
if (methodSymbols != null) {
this.methodSymbols = methodSymbols;
if (!rc.Module.Compiler.Settings.Optimize)
flags |= Options.AccurateDebugInfo;
} else {
flags |= Options.OmitDebugInfo;
}
#if STATIC
ig.__CleverExceptionBlockAssistance ();
#endif
}
开发者ID:blinds52,项目名称:mono,代码行数:21,代码来源:codegen.cs
示例7: CloseMethod
public void CloseMethod ()
{
current_method = (SourceMethodBuilder) current_method_stack.Pop ();
}
开发者ID:transformersprimeabcxyz,项目名称:monodevelop-1,代码行数:4,代码来源:MonoSymbolWriter.cs
示例8: OpenMethod
public SourceMethodBuilder OpenMethod (ICompileUnit file, int ns_id, IMethodDef method)
{
SourceMethodBuilder builder = new SourceMethodBuilder (file, ns_id, method);
current_method_stack.Push (current_method);
current_method = builder;
methods.Add (current_method);
return builder;
}
开发者ID:transformersprimeabcxyz,项目名称:monodevelop-1,代码行数:8,代码来源:MonoSymbolWriter.cs
示例9: CloseMethod
public void CloseMethod ()
{
if (current_method._comp_unit != null)
methods.Add (current_method);
current_method = (SourceMethodBuilder) current_method_stack.Pop ();
}
开发者ID:cupsster,项目名称:Unity3D.IncrementalCompiler,代码行数:6,代码来源:MonoSymbolWriter.cs
示例10: Emit
//
// Emits the code
//
public void Emit (TypeDefinition parent)
{
DefineOverride (parent);
var mc = (IMemberContext) method;
method.ParameterInfo.ApplyAttributes (mc, MethodBuilder);
ToplevelBlock block = method.Block;
if (block != null) {
BlockContext bc = new BlockContext (mc, block, method.ReturnType);
if (block.Resolve (null, bc, method)) {
debug_builder = member.Parent.CreateMethodSymbolEntry ();
EmitContext ec = method.CreateEmitContext (MethodBuilder.GetILGenerator (), debug_builder);
block.Emit (ec);
}
}
}
开发者ID:OpenFlex,项目名称:playscript-mono,代码行数:22,代码来源:method.cs
示例11: SourceMethod
protected SourceMethod (DeclSpace parent, MethodBase method, ICompileUnit file)
{
this.method = method;
builder = SymbolWriter.OpenMethod (file, parent.NamespaceEntry.SymbolFileID, this);
}
开发者ID:spencerhakim,项目名称:mono,代码行数:6,代码来源:method.cs
注:本文中的Mono.CompilerServices.SymbolWriter.SourceMethodBuilder类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论