C# Class MsgPack.Serialization.Reflection.TracingILGenerator

ILGenerator like IL stream builder with tracing.
Inheritance: IDisposable
ファイルを表示 Open project: msgpack/msgpack-cli Class Usage Examples

Private Properties

Property Type Description
DeclareLocalCore System.Reflection.Emit.LocalBuilder
DeclareLocalCore System.Reflection.Emit.LocalBuilder
EmitAdd_Ovf void
EmitAdd_Ovf_Un void
EmitBeq_S void
EmitBge_S void
EmitBge_Un void
EmitBge_Un_S void
EmitBgt_S void
EmitBgt_Un void
EmitBgt_Un_S void
EmitBle_S void
EmitBle_Un void
EmitBle_Un_S void
EmitBlt_S void
EmitBlt_Un void
EmitBlt_Un_S void
EmitBne_Un void
EmitBne_Un_S void
EmitBr void
EmitBr_S void
EmitBrfalse_S void
EmitBrtrue_S void
EmitCgt_Un void
EmitClt_Un void
EmitConv_I void
EmitConv_I1 void
EmitConv_I2 void
EmitConv_I4 void
EmitConv_I8 void
EmitConv_Ovf_I void
EmitConv_Ovf_I1 void
EmitConv_Ovf_I1_Un void
EmitConv_Ovf_I2 void
EmitConv_Ovf_I2_Un void
EmitConv_Ovf_I4 void
EmitConv_Ovf_I4_Un void
EmitConv_Ovf_I8 void
EmitConv_Ovf_I8_Un void
EmitConv_Ovf_I_Un void
EmitConv_Ovf_U void
EmitConv_Ovf_U1 void
EmitConv_Ovf_U1_Un void
EmitConv_Ovf_U2 void
EmitConv_Ovf_U2_Un void
EmitConv_Ovf_U4 void
EmitConv_Ovf_U4_Un void
EmitConv_Ovf_U8 void
EmitConv_Ovf_U8_Un void
EmitConv_Ovf_U_Un void
EmitConv_R4 void
EmitConv_R8 void
EmitConv_R_Un void
EmitConv_U void
EmitConv_U1 void
EmitConv_U2 void
EmitConv_U4 void
EmitConv_U8 void
EmitDiv_Un void
EmitExceptionBlock void
EmitExceptionBlockCore void
EmitLdarg_0 void
EmitLdarg_1 void
EmitLdarg_2 void
EmitLdarg_3 void
EmitLdarg_S void
EmitLdarga_S void
EmitLdc_I4 void
EmitLdc_I4_0 void
EmitLdc_I4_1 void
EmitLdc_I4_2 void
EmitLdc_I4_3 void
EmitLdc_I4_4 void
EmitLdc_I4_5 void
EmitLdc_I4_6 void
EmitLdc_I4_7 void
EmitLdc_I4_8 void
EmitLdc_I4_M1 void
EmitLdc_I4_S void
EmitLdc_I8 void
EmitLdc_R4 void
EmitLdc_R8 void
EmitLdelem_I void
EmitLdelem_I1 void
EmitLdelem_I2 void
EmitLdelem_I4 void
EmitLdelem_I8 void
EmitLdelem_R4 void
EmitLdelem_R8 void
EmitLdelem_Ref void
EmitLdelem_U1 void
EmitLdelem_U2 void
EmitLdelem_U4 void
EmitLdind_I void
EmitLdind_I1 void
EmitLdind_I2 void
EmitLdind_I4 void
EmitLdind_I8 void
EmitLdind_R4 void
EmitLdind_R8 void
EmitLdind_Ref void
EmitLdind_U1 void
EmitLdind_U2 void
EmitLdind_U4 void
EmitLdloc_0 void
EmitLdloc_1 void
EmitLdloc_2 void
EmitLdloc_3 void
EmitLdloc_S void
EmitLdloca_S void
EmitLeave_S void
EmitMul_Ovf void
EmitMul_Ovf_Un void
EmitNewarrCore void
EmitRem_Un void
EmitShr_Un void
EmitStarg_S void
EmitStelem_I void
EmitStelem_I1 void
EmitStelem_I2 void
EmitStelem_I4 void
EmitStelem_I8 void
EmitStelem_R4 void
EmitStelem_R8 void
EmitStelem_Ref void
EmitStind_I void
EmitStind_I1 void
EmitStind_I2 void
EmitStind_I4 void
EmitStind_I8 void
EmitStind_R4 void
EmitStind_R8 void
EmitStind_Ref void
EmitStloc_0 void
EmitStloc_1 void
EmitStloc_2 void
EmitStloc_3 void
EmitStloc_S void
EmitStringFormatArgumentAndCall void
EmitSub_Ovf void
EmitSub_Ovf_Un void
EmitUnbox_Any void
Indent void
TraceField void
TraceMethod void
TraceOpCode void
TraceOperand void
TraceOperand void
TraceOperand void
TraceOperand void
TraceOperand void
TraceOperand void
TraceOperand void
TraceOperand void
TraceOperandToken void
TraceOperandToken void
TraceOperandToken void
TraceOperandTokenValue void
TraceSignature void
TraceStart void
TraceType void
TracingILGenerator System
Unindent void
WriteCallingConventions void
WriteIndent void
WriteIndent void
WriteLineNumber void
WriteType void

Public Methods

Method Description
BeginCatchBlock ( Type exceptionType ) : void

Begin catch block with specified exception. Note that you do not have to emit leave or laeve.s instrauction at tail of the body.

BeginExceptFilterBlock ( ) : void

Begin filter block. Note that you do not have to emit leave or laeve.s instrauction at tail of the body.

BeginExceptionBlock ( ) : Label

Begin exception block (try in C#) here. Note that you do not have to emit leave or laeve.s instrauction at tail of the body.

BeginFaultBlock ( ) : void

Begin fault block. Note that you do not have to emit endfinally instrauction at tail of the body.

BeginFinallyBlock ( ) : void

Begin finally block. Note that you do not have to emit endfinally instrauction at tail of the body.

DeclareLocal ( Type localType ) : LocalBuilder

Declare local without pinning and name for debugging.

DeclareLocal ( Type localType, bool pinned ) : LocalBuilder

Declare local without name for debugging.

DeclareLocal ( Type localType, string name ) : LocalBuilder

Declare local with name for debugging and without pinning. Note that this method is not enabled for dynamic method.

DeclareLocal ( Type localType, string name, bool pinned ) : LocalBuilder

Declare local with name for debugging. Note that this method is not enabled for dynamic method.

DefineLabel ( ) : Label

Define new Label without name for tracing.

DefineLabel ( string name ) : Label

Define new Label with name for tracing.

Dispose ( ) : void

Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.

EmitAdd ( ) : void

Emit 'add' instruction with specified arguments.

EmitAnd ( ) : void

Emit 'and' instruction with specified arguments.

EmitAnyCall ( MethodInfo target ) : void

Emit 'call' or 'callvirt' appropriately.

EmitAnyLdarg ( int argumentIndex ) : void

Emit apprpriate 'ldarg.*' instruction. Post condition is that the loaded value will be added on the evaluation stack.

EmitAnyLdarga ( int argumentIndex ) : void
EmitAnyLdc_I4 ( int value ) : void
EmitAnyLdelem ( Type elementType, Action arrayLoadingEmitter, Action indexEmitter ) : void

Emit array element storing instructions. Post condition is evaluation stack will no be modified as previous state.

EmitAnyLdelem ( Type elementType, Action arrayLoadingEmitter, long index ) : void

Emit array element loading instructions. Post condition is that exactly one loaded element will be placed on the top of stack and its element type is elementType.

EmitAnyLdloc ( LocalBuilder local ) : void
EmitAnyLdloc ( int localIndex ) : void

Emit apprpriate 'ldloc.*' instruction. Post condition is that the loaded value will be added on the evaluation stack.

EmitAnyLdloca ( LocalBuilder local ) : void
EmitAnyLdloca ( int localIndex ) : void
EmitAnyStelem ( Type elementType, Action arrayLoadingEmitter, Action indexEmitter, Action elementLoadingEmitter ) : void

Emit array element storing instructions. Post condition is evaluation stack will no be modified as previous state.

EmitAnyStelem ( Type elementType, Action arrayLoadingEmitter, long index, Action elementLoadingEmitter ) : void

Emit array element storing instructions. Post condition is evaluation stack will no be modified as previous state.

EmitAnyStloc ( LocalBuilder local ) : void
EmitAnyStloc ( int localIndex ) : void

Emit array initialization code with initializer. Pre condition is that the storing value is placed on the top of evaluation stack and its type is valid. Post condition is that the stored value will be removed from the evaluation stack.

EmitArglist ( ) : void

Emit 'arglist' instruction with specified arguments.

EmitBeq ( System target ) : void

Emit 'beq' instruction with specified arguments.

EmitBge ( System target ) : void

Emit 'bge' instruction with specified arguments.

EmitBgt ( System target ) : void

Emit 'bgt' instruction with specified arguments.

EmitBle ( System target ) : void

Emit 'ble' instruction with specified arguments.

EmitBlt ( System target ) : void

Emit 'blt' instruction with specified arguments.

EmitBox ( System type ) : void

Emit 'box' instruction with specified arguments.

EmitBreak ( ) : void

Emit 'break' instruction with specified arguments.

EmitBrfalse ( System target ) : void

Emit 'brfalse' instruction with specified arguments.

EmitBrtrue ( System target ) : void

Emit 'brtrue' instruction with specified arguments.

EmitCall ( System target ) : void

Emit 'call' instruction with specified arguments.

EmitCallConstructor ( ConstructorInfo constructor ) : void
EmitCalli ( CallingConvention unmanagedCallingConvention, Type returnType, Type parameterTypes ) : void

Emit 'calli' instruction for indirect unmanaged function call.

EmitCalli ( CallingConventions managedCallingConventions, Type returnType, Type requiredParameterTypes, Type optionalParameterTypes ) : void

Emit 'calli' instruction for indirect managed method call.

EmitCallvirt ( System target ) : void

Emit 'callvirt' instruction with specified arguments.

EmitCastclass ( System type ) : void

Emit 'castclass' instruction with specified arguments.

EmitCeq ( ) : void

Emit 'ceq' instruction with specified arguments.

EmitCgt ( ) : void

Emit 'cgt' instruction with specified arguments.

EmitCkfinite ( ) : void

Emit 'ckfinite' instruction with specified arguments.

EmitClt ( ) : void

Emit 'clt' instruction with specified arguments.

EmitConstrainedCallvirt ( Type constrainedTo, MethodInfo target ) : void

Emit constrained 'callvirt' instruction.

EmitCpblk ( ) : void

Emit 'cpblk' instruction with specified arguments.

EmitCpobj ( System type ) : void

Emit 'cpobj' instruction with specified arguments.

EmitCurrentCulture ( ) : void

Emit CultureInfo.CurrentCulture invocation.

EmitDiv ( ) : void

Emit 'div' instruction with specified arguments.

EmitDup ( ) : void

Emit 'dup' instruction with specified arguments.

EmitEndfilter ( ) : void

Emit 'endfilter' instruction with specified arguments.

EmitEndfinally ( ) : void

Emit 'endfinally' instruction with specified arguments.

EmitExceptionBlock ( Label>.Action tryBlockEmitter, Label>.Action finallyBlockEmitter ) : void

Emit exception block with catch blocks and a finally block.

EmitGetProperty ( PropertyInfo property ) : void

Emit property getter invocation. Pre condition is there is target instance on the top of evaluation stack when property is instance property. Post condition are that target instance will be removed from the stack for instance property, and property value will be placed on there.

EmitGetType ( ) : void

Emit Object.GetType invocation. Pre condition is that target instance is placed on the top of evaluation stack. Post condition is that target instance will be replaced with Type of it.

EmitInitblk ( ) : void

Emit 'initblk' instruction with specified arguments.

EmitInitobj ( System type ) : void

Emit 'initobj' instruction with specified arguments.

EmitInvariantCulture ( ) : void

Emit CultureInfo.InvariantCulture invocation.

EmitIsinst ( System type ) : void

Emit 'isinst' instruction with specified arguments.

EmitJmp ( System target ) : void

Emit 'jmp' instruction with specified arguments.

EmitLdarg ( System index ) : void

Emit 'ldarg' instruction with specified arguments.

EmitLdargThis ( ) : void

Emit load 'this' pointer instruction (namely 'ldarg.0'). Post condition is that the loaded value will be added on the evaluation stack.

EmitLdarga ( System index ) : void

Emit 'ldarga' instruction with specified arguments.

EmitLdelem ( System type ) : void

Emit 'ldelem' instruction with specified arguments.

EmitLdelema ( Type type ) : void

Emit 'ldelema' instruction with specified arguments.

EmitLdfld ( System field ) : void

Emit 'ldfld' instruction with specified arguments.

EmitLdflda ( System field ) : void

Emit 'ldflda' instruction with specified arguments.

EmitLdftn ( System method ) : void

Emit 'ldftn' instruction with specified arguments.

EmitLdlen ( ) : void

Emit 'ldlen' instruction with specified arguments.

EmitLdloc ( System index ) : void

Emit 'ldloc' instruction with specified arguments.

EmitLdloca ( System index ) : void

Emit 'ldloca' instruction with specified arguments.

EmitLdnull ( ) : void

Emit 'ldnull' instruction with specified arguments.

EmitLdobj ( System type ) : void

Emit 'ldobj' instruction with specified arguments.

EmitLdsfld ( System field ) : void

Emit 'ldsfld' instruction with specified arguments.

EmitLdsflda ( System field ) : void

Emit 'ldsflda' instruction with specified arguments.

EmitLdstr ( System value ) : void

Emit 'ldstr' instruction with specified arguments.

EmitLdtoken ( System target ) : void

Emit 'ldtoken' instruction with specified arguments.

EmitLdvirtftn ( System method ) : void

Emit 'ldvirtftn' instruction with specified arguments.

EmitLeave ( System target ) : void

Emit 'leave' instruction with specified arguments.

EmitLiteralInteger ( long value ) : void

Emit efficient integer constant loading. Post condition is that exactly one integer will be added on the top of stack.

EmitLocalloc ( ) : void

Emit 'localloc' instruction with specified arguments.

EmitMkrefany ( System type ) : void

Emit 'mkrefany' instruction with specified arguments.

EmitMul ( ) : void

Emit 'mul' instruction with specified arguments.

EmitNeg ( ) : void

Emit 'neg' instruction with specified arguments.

EmitNewarr ( Action arrayLoadingEmitter, Action arrayStoringEmitter, Type elementType ) : void

Emit array initialization code with initializer. Post condition is evaluation stack will no be modified as previous state. Note that initialized array is not placed on the top of evaluation stack.

EmitNewarr ( System type ) : void

Emit 'newarr' instruction with specified arguments.

EmitNewarr ( Type elementType, long length ) : void

Emit array initialization code without initializer. Post condition is evaluation stack will no be modified as previous state. Note that initialized array is not placed on the top of evaluation stack.

EmitNewarr ( int arrayLocalIndex, Type elementType ) : void

Emit array initialization code with initializer. Post condition is evaluation stack will no be modified as previous state. Note that initialized array is not placed on the top of evaluation stack.

EmitNewobj ( System constructor ) : void

Emit 'newobj' instruction with specified arguments.

EmitNop ( ) : void

Emit 'nop' instruction with specified arguments.

EmitNot ( ) : void

Emit 'not' instruction with specified arguments.

EmitOr ( ) : void

Emit 'or' instruction with specified arguments.

EmitPop ( ) : void

Emit 'pop' instruction with specified arguments.

EmitReadOnlyLdelema ( Type elementType ) : void

Emit readonly 'ldelema' instruction.

EmitRefanytype ( ) : void

Emit 'refanytype' instruction with specified arguments.

EmitRefanyval ( System type ) : void

Emit 'refanyval' instruction with specified arguments.

EmitRem ( ) : void

Emit 'rem' instruction with specified arguments.

EmitRet ( ) : void

Emit 'ret' instruction with specified arguments.

EmitRethrow ( ) : void

Emit 'rethrow' instruction with specified arguments.

EmitSetProperty ( PropertyInfo property ) : void
EmitShl ( ) : void

Emit 'shl' instruction with specified arguments.

EmitShr ( ) : void

Emit 'shr' instruction with specified arguments.

EmitSizeof ( System type ) : void

Emit 'sizeof' instruction with specified arguments.

EmitStarg ( System index ) : void

Emit 'starg' instruction with specified arguments.

EmitStelem ( System type ) : void

Emit 'stelem' instruction with specified arguments.

EmitStfld ( System field ) : void

Emit 'stfld' instruction with specified arguments.

EmitStloc ( System index ) : void

Emit 'stloc' instruction with specified arguments.

EmitStobj ( System type ) : void

Emit 'stobj' instruction with specified arguments.

EmitStringFormat ( int temporaryLocalArrayIndex, Type resource, string resourceKey ) : void

Emit String.Format(IFormatProvider,String,Object[]) invocation with CultureInfo.CurrentCulture.

EmitStringFormat ( int temporaryLocalArrayIndex, string formatLiteral ) : void

Emit String.Format(IFormatProvider,String,Object[]) invocation with CultureInfo.InvariantCulture.

EmitStringFormatInvariant ( int temporaryLocalArrayIndex, Type resource, string resourceKey ) : void

Emit String.Format(IFormatProvider,String,Object[]) invocation with CultureInfo.InvariantCulture.

EmitStringFormatInvariant ( int temporaryLocalArrayIndex, string formatLiteral ) : void

Emit String.Format(IFormatProvider,String,Object[]) invocation with CultureInfo.InvariantCulture.

EmitStsfld ( System field ) : void

Emit 'stsfld' instruction with specified arguments.

EmitSub ( ) : void

Emit 'sub' instruction with specified arguments.

EmitSwitch ( ) : void

Emit 'switch' instruction with specified arguments.

EmitTailCall ( MethodInfo target ) : void

Emit 'call' instruction with specified arguments as tail call.

Subsequent 'ret' instruction will be emitted together.

EmitTailCallVirt ( MethodInfo target ) : void

Emit 'callvirt' instruction with specified arguments as tail call.

Subsequent 'ret' instruction will be emitted together.

EmitTailCalli ( CallingConvention unmanagedCallingConvention, Type returnType, Type parameterTypes ) : void

Emit 'calli' instruction for indirect unmanaged function call as tail call.

Subsequent 'ret' instruction will be emitted together.

EmitTailCalli ( CallingConventions managedCallingConventions, Type returnType, Type requiredParameterTypes, Type optionalParameterTypes ) : void

Emit 'calli' instruction for indirect managed method call as tail call.

Subsequent 'ret' instruction will be emitted together.

EmitThrow ( ) : void

Emit 'throw' instruction with specified arguments.

EmitThrowNewArgumentExceptionWithInnerException ( ) : void

Emit 'throw new ArgumentException(String,String,Exception)' statement. Pre condition is that there are exactly three entries in the evaluation stack, which are string, string, and Exception instance. Post condition is that the evaluation statck will be empty.

EmitThrowNewExceptionWithInnerException ( Type exceptionType ) : void

Emit 'throw new TException(String,String,Exception)' statement. Pre condition is that there are exactly two entries in the evaluation stack, which are string and Exception instance. Post condition is that the evaluation statck will be empty.

EmitTypeOf ( Type type ) : void

Emit 'typeof' expression. Post condition is Type instance for type will be placed on the top of evaluation stack.

EmitUnaligned ( byte alignment ) : void

Emit 'unaligned.' prefix.

EmitUnbox ( System type ) : void

Emit 'unbox' instruction with specified arguments.

EmitXor ( ) : void

Emit 'xor' instruction with specified arguments.

EndExceptionBlock ( ) : void

End current exception block and its last clause.

FlushTrace ( ) : void
MarkLabel ( Label label ) : void

Mark current position using specifieid Label.

TraceWrite ( string value ) : void

Write trace message.

TraceWrite ( string format, object arg0 ) : void

Write trace message.

TraceWriteLine ( ) : void

Write trace line break.

TraceWriteLine ( string value ) : void

Write trace message followed by line break.

TraceWriteLine ( string format, object arg0 ) : void

Write trace message followed by line break.

TracingILGenerator ( ConstructorBuilder constructorBuilder, TextWriter traceWriter, bool isDebuggable ) : System

Initializes a new instance of the TracingILGenerator class.

TracingILGenerator ( DynamicMethod dynamicMethod, TextWriter traceWriter, bool isDebuggable ) : System

Initializes a new instance of the TracingILGenerator class.

TracingILGenerator ( MethodBuilder methodBuilder, TextWriter traceWriter ) : System

Initializes a new instance of the TracingILGenerator class.

TracingILGenerator ( MethodBuilder methodBuilder, TextWriter traceWriter, bool isDebuggable ) : System

Initializes a new instance of the TracingILGenerator class.

Private Methods

Method Description
DeclareLocalCore ( Type localType, string name ) : LocalBuilder
DeclareLocalCore ( Type localType, string name, bool pinned ) : LocalBuilder
EmitAdd_Ovf ( ) : void
EmitAdd_Ovf_Un ( ) : void
EmitBeq_S ( System target ) : void
EmitBge_S ( System target ) : void
EmitBge_Un ( System target ) : void
EmitBge_Un_S ( System target ) : void
EmitBgt_S ( System target ) : void
EmitBgt_Un ( System target ) : void
EmitBgt_Un_S ( System target ) : void
EmitBle_S ( System target ) : void
EmitBle_Un ( System target ) : void
EmitBle_Un_S ( System target ) : void
EmitBlt_S ( System target ) : void
EmitBlt_Un ( System target ) : void
EmitBlt_Un_S ( System target ) : void
EmitBne_Un ( System target ) : void
EmitBne_Un_S ( System target ) : void
EmitBr ( System target ) : void
EmitBr_S ( System target ) : void
EmitBrfalse_S ( System target ) : void
EmitBrtrue_S ( System target ) : void
EmitCgt_Un ( ) : void
EmitClt_Un ( ) : void
EmitConv_I ( ) : void
EmitConv_I1 ( ) : void
EmitConv_I2 ( ) : void
EmitConv_I4 ( ) : void
EmitConv_I8 ( ) : void
EmitConv_Ovf_I ( ) : void
EmitConv_Ovf_I1 ( ) : void
EmitConv_Ovf_I1_Un ( ) : void
EmitConv_Ovf_I2 ( ) : void
EmitConv_Ovf_I2_Un ( ) : void
EmitConv_Ovf_I4 ( ) : void
EmitConv_Ovf_I4_Un ( ) : void
EmitConv_Ovf_I8 ( ) : void
EmitConv_Ovf_I8_Un ( ) : void
EmitConv_Ovf_I_Un ( ) : void
EmitConv_Ovf_U ( ) : void
EmitConv_Ovf_U1 ( ) : void
EmitConv_Ovf_U1_Un ( ) : void
EmitConv_Ovf_U2 ( ) : void
EmitConv_Ovf_U2_Un ( ) : void
EmitConv_Ovf_U4 ( ) : void
EmitConv_Ovf_U4_Un ( ) : void
EmitConv_Ovf_U8 ( ) : void
EmitConv_Ovf_U8_Un ( ) : void
EmitConv_Ovf_U_Un ( ) : void
EmitConv_R4 ( ) : void
EmitConv_R8 ( ) : void
EmitConv_R_Un ( ) : void
EmitConv_U ( ) : void
EmitConv_U1 ( ) : void
EmitConv_U2 ( ) : void
EmitConv_U4 ( ) : void
EmitConv_U8 ( ) : void
EmitDiv_Un ( ) : void
EmitExceptionBlock ( Label>.Action tryBlockEmitter, Tuple firstCatchBlock ) : void
EmitExceptionBlockCore ( Label>.Action tryBlockEmitter, Tuple firstCatchBlockEmitter, Tuple remainingCatchBlockEmitters, Label>.Action finallyBlockEmitter ) : void
EmitLdarg_0 ( ) : void
EmitLdarg_1 ( ) : void
EmitLdarg_2 ( ) : void
EmitLdarg_3 ( ) : void
EmitLdarg_S ( System value ) : void
EmitLdarga_S ( System value ) : void
EmitLdc_I4 ( System value ) : void
EmitLdc_I4_0 ( ) : void
EmitLdc_I4_1 ( ) : void
EmitLdc_I4_2 ( ) : void
EmitLdc_I4_3 ( ) : void
EmitLdc_I4_4 ( ) : void
EmitLdc_I4_5 ( ) : void
EmitLdc_I4_6 ( ) : void
EmitLdc_I4_7 ( ) : void
EmitLdc_I4_8 ( ) : void
EmitLdc_I4_M1 ( ) : void
EmitLdc_I4_S ( System value ) : void
EmitLdc_I8 ( System value ) : void
EmitLdc_R4 ( System value ) : void
EmitLdc_R8 ( System value ) : void
EmitLdelem_I ( ) : void
EmitLdelem_I1 ( ) : void
EmitLdelem_I2 ( ) : void
EmitLdelem_I4 ( ) : void
EmitLdelem_I8 ( ) : void
EmitLdelem_R4 ( ) : void
EmitLdelem_R8 ( ) : void
EmitLdelem_Ref ( ) : void
EmitLdelem_U1 ( ) : void
EmitLdelem_U2 ( ) : void
EmitLdelem_U4 ( ) : void
EmitLdind_I ( ) : void
EmitLdind_I1 ( ) : void
EmitLdind_I2 ( ) : void
EmitLdind_I4 ( ) : void
EmitLdind_I8 ( ) : void
EmitLdind_R4 ( ) : void
EmitLdind_R8 ( ) : void
EmitLdind_Ref ( ) : void
EmitLdind_U1 ( ) : void
EmitLdind_U2 ( ) : void
EmitLdind_U4 ( ) : void
EmitLdloc_0 ( ) : void
EmitLdloc_1 ( ) : void
EmitLdloc_2 ( ) : void
EmitLdloc_3 ( ) : void
EmitLdloc_S ( System value ) : void
EmitLdloca_S ( System value ) : void
EmitLeave_S ( System target ) : void
EmitMul_Ovf ( ) : void
EmitMul_Ovf_Un ( ) : void
EmitNewarrCore ( Type elementType, long length ) : void
EmitRem_Un ( ) : void
EmitShr_Un ( ) : void
EmitStarg_S ( System value ) : void
EmitStelem_I ( ) : void
EmitStelem_I1 ( ) : void
EmitStelem_I2 ( ) : void
EmitStelem_I4 ( ) : void
EmitStelem_I8 ( ) : void
EmitStelem_R4 ( ) : void
EmitStelem_R8 ( ) : void
EmitStelem_Ref ( ) : void
EmitStind_I ( ) : void
EmitStind_I1 ( ) : void
EmitStind_I2 ( ) : void
EmitStind_I4 ( ) : void
EmitStind_I8 ( ) : void
EmitStind_R4 ( ) : void
EmitStind_R8 ( ) : void
EmitStind_Ref ( ) : void
EmitStloc_0 ( ) : void
EmitStloc_1 ( ) : void
EmitStloc_2 ( ) : void
EmitStloc_3 ( ) : void
EmitStloc_S ( System value ) : void
EmitStringFormatArgumentAndCall ( int temporaryLocalArrayIndex, Action argumentEmitters ) : void
EmitSub_Ovf ( ) : void
EmitSub_Ovf_Un ( ) : void
EmitUnbox_Any ( System type ) : void
Indent ( ) : void
TraceField ( FieldInfo field ) : void
TraceMethod ( MethodBase method ) : void
TraceOpCode ( OpCode opCode ) : void
TraceOperand ( FieldInfo value ) : void
TraceOperand ( Label value ) : void
TraceOperand ( MethodBase value ) : void
TraceOperand ( Type value ) : void
TraceOperand ( double value ) : void
TraceOperand ( int value ) : void
TraceOperand ( long value ) : void
TraceOperand ( string value ) : void
TraceOperandToken ( FieldInfo target ) : void
TraceOperandToken ( MethodBase target ) : void
TraceOperandToken ( Type target ) : void
TraceOperandTokenValue ( int value ) : void
TraceSignature ( CallingConventions managedCallingConventions, CallingConvention unmanagedCallingConvention, Type returnType, Type requiredParameterTypes, Type optionalParameterTypes ) : void
TraceStart ( ) : void
TraceType ( Type type ) : void
TracingILGenerator ( ILGenerator underlying, bool isInDynamicMethod, TextWriter traceWriter, bool isDebuggable ) : System
Unindent ( ) : void
WriteCallingConventions ( TextWriter writer, CallingConventions managedCallingConverntions, CallingConvention unamangedCallingConvention ) : void
WriteIndent ( ) : void
WriteIndent ( TextWriter writer, int indentLevel ) : void
WriteLineNumber ( ) : void
WriteType ( TextWriter writer, Type type ) : void

Method Details

BeginCatchBlock() public method

Begin catch block with specified exception. Note that you do not have to emit leave or laeve.s instrauction at tail of the body.
public BeginCatchBlock ( Type exceptionType ) : void
exceptionType System.Type for catch.
return void

BeginExceptFilterBlock() public method

Begin filter block. Note that you do not have to emit leave or laeve.s instrauction at tail of the body.
public BeginExceptFilterBlock ( ) : void
return void

BeginExceptionBlock() public method

Begin exception block (try in C#) here. Note that you do not have to emit leave or laeve.s instrauction at tail of the body.
public BeginExceptionBlock ( ) : Label
return System.Reflection.Emit.Label

BeginFaultBlock() public method

Begin fault block. Note that you do not have to emit endfinally instrauction at tail of the body.
public BeginFaultBlock ( ) : void
return void

BeginFinallyBlock() public method

Begin finally block. Note that you do not have to emit endfinally instrauction at tail of the body.
public BeginFinallyBlock ( ) : void
return void

DeclareLocal() public method

Declare local without pinning and name for debugging.
public DeclareLocal ( Type localType ) : LocalBuilder
localType System.Type of local variable.
return System.Reflection.Emit.LocalBuilder

DeclareLocal() public method

Declare local without name for debugging.
public DeclareLocal ( Type localType, bool pinned ) : LocalBuilder
localType System.Type of local variable.
pinned bool If true, the local variable will be pinned.
return System.Reflection.Emit.LocalBuilder

DeclareLocal() public method

Declare local with name for debugging and without pinning. Note that this method is not enabled for dynamic method.
public DeclareLocal ( Type localType, string name ) : LocalBuilder
localType System.Type of local variable.
name string Name of the local variable.
return System.Reflection.Emit.LocalBuilder

DeclareLocal() public method

Declare local with name for debugging. Note that this method is not enabled for dynamic method.
public DeclareLocal ( Type localType, string name, bool pinned ) : LocalBuilder
localType System.Type of local variable.
name string Name of the local variable.
pinned bool If true, the local variable will be pinned.
return System.Reflection.Emit.LocalBuilder

DefineLabel() public method

Define new Label without name for tracing.
public DefineLabel ( ) : Label
return System.Reflection.Emit.Label

DefineLabel() public method

Define new Label with name for tracing.
public DefineLabel ( string name ) : Label
name string Name of label. Note that debugging information will not have this name.
return System.Reflection.Emit.Label

Dispose() public method

Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
public Dispose ( ) : void
return void

EmitAdd() public method

Emit 'add' instruction with specified arguments.
public EmitAdd ( ) : void
return void

EmitAnd() public method

Emit 'and' instruction with specified arguments.
public EmitAnd ( ) : void
return void

EmitAnyCall() public method

Emit 'call' or 'callvirt' appropriately.
public EmitAnyCall ( MethodInfo target ) : void
target System.Reflection.MethodInfo to be called.
return void

EmitAnyLdarg() public method

Emit apprpriate 'ldarg.*' instruction. Post condition is that the loaded value will be added on the evaluation stack.
public EmitAnyLdarg ( int argumentIndex ) : void
argumentIndex int /// Index of argument to be fetched. ///
return void

EmitAnyLdarga() public method

public EmitAnyLdarga ( int argumentIndex ) : void
argumentIndex int
return void

EmitAnyLdc_I4() public method

public EmitAnyLdc_I4 ( int value ) : void
value int
return void

EmitAnyLdelem() public method

Emit array element storing instructions. Post condition is evaluation stack will no be modified as previous state.
public EmitAnyLdelem ( Type elementType, Action arrayLoadingEmitter, Action indexEmitter ) : void
elementType System.Type of array element. This can be generaic parameter.
arrayLoadingEmitter Action /// Delegate to emittion of array loading instruction. /// 1st argument is this instance. /// Post condition is that exactly one target array will be added on the top of stack and its element type is . ///
indexEmitter Action /// Delegate to emittion of array index. /// 1st argument is this instance. /// Post condition is that int4 or int8 type value will be added on the top of stack and its element type is . ///
return void

EmitAnyLdelem() public method

Emit array element loading instructions. Post condition is that exactly one loaded element will be placed on the top of stack and its element type is elementType.
public EmitAnyLdelem ( Type elementType, Action arrayLoadingEmitter, long index ) : void
elementType System.Type of array element. This can be generaic parameter.
arrayLoadingEmitter Action /// Delegate to emittion of array loading instruction. /// 1st argument is this instance. /// Post condition is that exactly one target array will be added on the top of stack and its element type is . ///
index long Index of array element.
return void

EmitAnyLdloc() public method

public EmitAnyLdloc ( LocalBuilder local ) : void
local System.Reflection.Emit.LocalBuilder
return void

EmitAnyLdloc() public method

Emit apprpriate 'ldloc.*' instruction. Post condition is that the loaded value will be added on the evaluation stack.
public EmitAnyLdloc ( int localIndex ) : void
localIndex int /// Index of local variable to be fetched. ///
return void

EmitAnyLdloca() public method

public EmitAnyLdloca ( LocalBuilder local ) : void
local System.Reflection.Emit.LocalBuilder
return void

EmitAnyLdloca() public method

public EmitAnyLdloca ( int localIndex ) : void
localIndex int
return void

EmitAnyStelem() public method

Emit array element storing instructions. Post condition is evaluation stack will no be modified as previous state.
public EmitAnyStelem ( Type elementType, Action arrayLoadingEmitter, Action indexEmitter, Action elementLoadingEmitter ) : void
elementType System.Type of array element. This can be generaic parameter.
arrayLoadingEmitter Action /// Delegate to emittion of array loading instruction. /// 1st argument is this instance. /// Post condition is that exactly one target array will be added on the top of stack and its element type is . ///
indexEmitter Action /// Delegate to emittion of array index. /// 1st argument is this instance. /// Post condition is that int4 or int8 type value will be added on the top of stack and its element type is . ///
elementLoadingEmitter Action /// Delegate to emittion of storing element loading instruction. /// 1st argument is this instance. /// Post condition is that exactly one storing element will be added on the top of stack and its type is compatible. ///
return void

EmitAnyStelem() public method

Emit array element storing instructions. Post condition is evaluation stack will no be modified as previous state.
public EmitAnyStelem ( Type elementType, Action arrayLoadingEmitter, long index, Action elementLoadingEmitter ) : void
elementType System.Type of array element. This can be generaic parameter.
arrayLoadingEmitter Action /// Delegate to emittion of array loading instruction. /// 1st argument is this instance. /// Post condition is that exactly one target array will be added on the top of stack and its element type is . ///
index long Index of array element.
elementLoadingEmitter Action /// Delegate to emittion of storing element loading instruction. /// 1st argument is this instance. /// Post condition is that exactly one storing element will be added on the top of stack and its type is compatible. ///
return void

EmitAnyStloc() public method

public EmitAnyStloc ( LocalBuilder local ) : void
local System.Reflection.Emit.LocalBuilder
return void

EmitAnyStloc() public method

Emit array initialization code with initializer. Pre condition is that the storing value is placed on the top of evaluation stack and its type is valid. Post condition is that the stored value will be removed from the evaluation stack.
public EmitAnyStloc ( int localIndex ) : void
localIndex int /// Index of local variable which stores the array. ///
return void

EmitArglist() public method

Emit 'arglist' instruction with specified arguments.
public EmitArglist ( ) : void
return void

EmitBeq() public method

Emit 'beq' instruction with specified arguments.
public EmitBeq ( System target ) : void
target System as target.
return void

EmitBge() public method

Emit 'bge' instruction with specified arguments.
public EmitBge ( System target ) : void
target System as target.
return void

EmitBgt() public method

Emit 'bgt' instruction with specified arguments.
public EmitBgt ( System target ) : void
target System as target.
return void

EmitBle() public method

Emit 'ble' instruction with specified arguments.
public EmitBle ( System target ) : void
target System as target.
return void

EmitBlt() public method

Emit 'blt' instruction with specified arguments.
public EmitBlt ( System target ) : void
target System as target.
return void

EmitBox() public method

Emit 'box' instruction with specified arguments.
public EmitBox ( System type ) : void
type System as type.
return void

EmitBreak() public method

Emit 'break' instruction with specified arguments.
public EmitBreak ( ) : void
return void

EmitBrfalse() public method

Emit 'brfalse' instruction with specified arguments.
public EmitBrfalse ( System target ) : void
target System as target.
return void

EmitBrtrue() public method

Emit 'brtrue' instruction with specified arguments.
public EmitBrtrue ( System target ) : void
target System as target.
return void

EmitCall() public method

Emit 'call' instruction with specified arguments.
public EmitCall ( System target ) : void
target System as target.
return void

EmitCallConstructor() public method

public EmitCallConstructor ( ConstructorInfo constructor ) : void
constructor System.Reflection.ConstructorInfo
return void

EmitCalli() public method

Emit 'calli' instruction for indirect unmanaged function call.
public EmitCalli ( CallingConvention unmanagedCallingConvention, Type returnType, Type parameterTypes ) : void
unmanagedCallingConvention CallingConvention of unmanaged function.
returnType System.Type Return of the function.
parameterTypes System.Type Parameter s of the function.
return void

EmitCalli() public method

Emit 'calli' instruction for indirect managed method call.
public EmitCalli ( CallingConventions managedCallingConventions, Type returnType, Type requiredParameterTypes, Type optionalParameterTypes ) : void
managedCallingConventions CallingConventions of managed method.
returnType System.Type Return of the method.
requiredParameterTypes System.Type Required parameter s of the method.
optionalParameterTypes System.Type Optional varargs parameter s of the method.
return void

EmitCallvirt() public method

Emit 'callvirt' instruction with specified arguments.
public EmitCallvirt ( System target ) : void
target System as target.
return void

EmitCastclass() public method

Emit 'castclass' instruction with specified arguments.
public EmitCastclass ( System type ) : void
type System as type.
return void

EmitCeq() public method

Emit 'ceq' instruction with specified arguments.
public EmitCeq ( ) : void
return void

EmitCgt() public method

Emit 'cgt' instruction with specified arguments.
public EmitCgt ( ) : void
return void

EmitCkfinite() public method

Emit 'ckfinite' instruction with specified arguments.
public EmitCkfinite ( ) : void
return void

EmitClt() public method

Emit 'clt' instruction with specified arguments.
public EmitClt ( ) : void
return void

EmitConstrainedCallvirt() public method

Emit constrained 'callvirt' instruction.
public EmitConstrainedCallvirt ( Type constrainedTo, MethodInfo target ) : void
constrainedTo System.Type to be constrained to.
target System.Reflection.MethodInfo Target which must be virtual method.
return void

EmitCpblk() public method

Emit 'cpblk' instruction with specified arguments.
public EmitCpblk ( ) : void
return void

EmitCpobj() public method

Emit 'cpobj' instruction with specified arguments.
public EmitCpobj ( System type ) : void
type System as type.
return void

EmitCurrentCulture() public method

Emit CultureInfo.CurrentCulture invocation.
public EmitCurrentCulture ( ) : void
return void

EmitDiv() public method

Emit 'div' instruction with specified arguments.
public EmitDiv ( ) : void
return void

EmitDup() public method

Emit 'dup' instruction with specified arguments.
public EmitDup ( ) : void
return void

EmitEndfilter() public method

Emit 'endfilter' instruction with specified arguments.
public EmitEndfilter ( ) : void
return void

EmitEndfinally() public method

Emit 'endfinally' instruction with specified arguments.
public EmitEndfinally ( ) : void
return void

EmitExceptionBlock() public method

Emit exception block with catch blocks and a finally block.
public EmitExceptionBlock ( Label>.Action tryBlockEmitter, Label>.Action finallyBlockEmitter ) : void
tryBlockEmitter Label>.Action /// which emits exception block (try in C#) body. /// A 1st argument is this , /// and a 2nd argument is will to be end of emitting exception block. /// The delegate do not have to emit leave or leave.s instrauction at tail of the body. ///
finallyBlockEmitter Label>.Action /// which emits finally block body. /// A 1st argument is this , /// and a 2nd argument is will to be end of emitting exception block. /// The delegate do not have to emit endfinally instrauction at tail of the body. ///
return void

EmitGetProperty() public method

Emit property getter invocation. Pre condition is there is target instance on the top of evaluation stack when property is instance property. Post condition are that target instance will be removed from the stack for instance property, and property value will be placed on there.
public EmitGetProperty ( PropertyInfo property ) : void
property System.Reflection.PropertyInfo for target property.
return void

EmitGetType() public method

Emit Object.GetType invocation. Pre condition is that target instance is placed on the top of evaluation stack. Post condition is that target instance will be replaced with Type of it.
public EmitGetType ( ) : void
return void

EmitInitblk() public method

Emit 'initblk' instruction with specified arguments.
public EmitInitblk ( ) : void
return void

EmitInitobj() public method

Emit 'initobj' instruction with specified arguments.
public EmitInitobj ( System type ) : void
type System as type.
return void

EmitInvariantCulture() public method

Emit CultureInfo.InvariantCulture invocation.
public EmitInvariantCulture ( ) : void
return void

EmitIsinst() public method

Emit 'isinst' instruction with specified arguments.
public EmitIsinst ( System type ) : void
type System as type.
return void

EmitJmp() public method

Emit 'jmp' instruction with specified arguments.
public EmitJmp ( System target ) : void
target System as target.
return void

EmitLdarg() public method

Emit 'ldarg' instruction with specified arguments.
public EmitLdarg ( System index ) : void
index System as index.
return void

EmitLdargThis() public method

Emit load 'this' pointer instruction (namely 'ldarg.0'). Post condition is that the loaded value will be added on the evaluation stack.
public EmitLdargThis ( ) : void
return void

EmitLdarga() public method

Emit 'ldarga' instruction with specified arguments.
public EmitLdarga ( System index ) : void
index System as index.
return void

EmitLdelem() public method

Emit 'ldelem' instruction with specified arguments.
public EmitLdelem ( System type ) : void
type System as type.
return void

EmitLdelema() public method

Emit 'ldelema' instruction with specified arguments.
public EmitLdelema ( Type type ) : void
type System.Type as type.
return void

EmitLdfld() public method

Emit 'ldfld' instruction with specified arguments.
public EmitLdfld ( System field ) : void
field System as field.
return void

EmitLdflda() public method

Emit 'ldflda' instruction with specified arguments.
public EmitLdflda ( System field ) : void
field System as field.
return void

EmitLdftn() public method

Emit 'ldftn' instruction with specified arguments.
public EmitLdftn ( System method ) : void
method System as method.
return void

EmitLdlen() public method

Emit 'ldlen' instruction with specified arguments.
public EmitLdlen ( ) : void
return void

EmitLdloc() public method

Emit 'ldloc' instruction with specified arguments.
public EmitLdloc ( System index ) : void
index System as index.
return void

EmitLdloca() public method

Emit 'ldloca' instruction with specified arguments.
public EmitLdloca ( System index ) : void
index System as index.
return void

EmitLdnull() public method

Emit 'ldnull' instruction with specified arguments.
public EmitLdnull ( ) : void
return void

EmitLdobj() public method

Emit 'ldobj' instruction with specified arguments.
public EmitLdobj ( System type ) : void
type System as type.
return void

EmitLdsfld() public method

Emit 'ldsfld' instruction with specified arguments.
public EmitLdsfld ( System field ) : void
field System as field.
return void

EmitLdsflda() public method

Emit 'ldsflda' instruction with specified arguments.
public EmitLdsflda ( System field ) : void
field System as field.
return void

EmitLdstr() public method

Emit 'ldstr' instruction with specified arguments.
public EmitLdstr ( System value ) : void
value System as value.
return void

EmitLdtoken() public method

Emit 'ldtoken' instruction with specified arguments.
public EmitLdtoken ( System target ) : void
target System as target.
return void

EmitLdvirtftn() public method

Emit 'ldvirtftn' instruction with specified arguments.
public EmitLdvirtftn ( System method ) : void
method System as method.
return void

EmitLeave() public method

Emit 'leave' instruction with specified arguments.
public EmitLeave ( System target ) : void
target System as target.
return void

EmitLiteralInteger() public method

Emit efficient integer constant loading. Post condition is that exactly one integer will be added on the top of stack.
public EmitLiteralInteger ( long value ) : void
value long Integer value.
return void

EmitLocalloc() public method

Emit 'localloc' instruction with specified arguments.
public EmitLocalloc ( ) : void
return void

EmitMkrefany() public method

Emit 'mkrefany' instruction with specified arguments.
public EmitMkrefany ( System type ) : void
type System as type.
return void

EmitMul() public method

Emit 'mul' instruction with specified arguments.
public EmitMul ( ) : void
return void

EmitNeg() public method

Emit 'neg' instruction with specified arguments.
public EmitNeg ( ) : void
return void

EmitNewarr() public method

Emit array initialization code with initializer. Post condition is evaluation stack will no be modified as previous state. Note that initialized array is not placed on the top of evaluation stack.
public EmitNewarr ( Action arrayLoadingEmitter, Action arrayStoringEmitter, Type elementType ) : void
arrayLoadingEmitter Action /// Delegate to emittion of array loading instruction. /// 1st argument is this instance. /// Post condition is that exactly one target array will be added on the top of stack and element type is . ///
arrayStoringEmitter Action /// Delegate to emittion of array storing instruction. /// 1st argument is this instance. /// Pre condition is that the top of evaluation stack is array type and its element type is . /// Post condition is that exactly one target array will be removed from the top of stack. ///
elementType Type of array element. This can be generaic parameter.
return void

EmitNewarr() public method

Emit 'newarr' instruction with specified arguments.
public EmitNewarr ( System type ) : void
type System as type.
return void

EmitNewarr() public method

Emit array initialization code without initializer. Post condition is evaluation stack will no be modified as previous state. Note that initialized array is not placed on the top of evaluation stack.
public EmitNewarr ( Type elementType, long length ) : void
elementType Type of array element. This can be generaic parameter.
length long Size of array.
return void

EmitNewarr() public method

Emit array initialization code with initializer. Post condition is evaluation stack will no be modified as previous state. Note that initialized array is not placed on the top of evaluation stack.
public EmitNewarr ( int arrayLocalIndex, Type elementType ) : void
arrayLocalIndex int /// Index of local variable which stores the array. ///
elementType Type of array element. This can be generaic parameter.
return void

EmitNewobj() public method

Emit 'newobj' instruction with specified arguments.
public EmitNewobj ( System constructor ) : void
constructor System as constructor.
return void

EmitNop() public method

Emit 'nop' instruction with specified arguments.
public EmitNop ( ) : void
return void

EmitNot() public method

Emit 'not' instruction with specified arguments.
public EmitNot ( ) : void
return void

EmitOr() public method

Emit 'or' instruction with specified arguments.
public EmitOr ( ) : void
return void

EmitPop() public method

Emit 'pop' instruction with specified arguments.
public EmitPop ( ) : void
return void

EmitReadOnlyLdelema() public method

Emit readonly 'ldelema' instruction.
public EmitReadOnlyLdelema ( Type elementType ) : void
elementType Type of array element.
return void

EmitRefanytype() public method

Emit 'refanytype' instruction with specified arguments.
public EmitRefanytype ( ) : void
return void

EmitRefanyval() public method

Emit 'refanyval' instruction with specified arguments.
public EmitRefanyval ( System type ) : void
type System as type.
return void

EmitRem() public method

Emit 'rem' instruction with specified arguments.
public EmitRem ( ) : void
return void

EmitRet() public method

Emit 'ret' instruction with specified arguments.
public EmitRet ( ) : void
return void

EmitRethrow() public method

Emit 'rethrow' instruction with specified arguments.
public EmitRethrow ( ) : void
return void

EmitSetProperty() public method

public EmitSetProperty ( PropertyInfo property ) : void
property PropertyInfo
return void

EmitShl() public method

Emit 'shl' instruction with specified arguments.
public EmitShl ( ) : void
return void

EmitShr() public method

Emit 'shr' instruction with specified arguments.
public EmitShr ( ) : void
return void

EmitSizeof() public method

Emit 'sizeof' instruction with specified arguments.
public EmitSizeof ( System type ) : void
type System as type.
return void

EmitStarg() public method

Emit 'starg' instruction with specified arguments.
public EmitStarg ( System index ) : void
index System as index.
return void

EmitStelem() public method

Emit 'stelem' instruction with specified arguments.
public EmitStelem ( System type ) : void
type System as type.
return void

EmitStfld() public method

Emit 'stfld' instruction with specified arguments.
public EmitStfld ( System field ) : void
field System as field.
return void

EmitStloc() public method

Emit 'stloc' instruction with specified arguments.
public EmitStloc ( System index ) : void
index System as index.
return void

EmitStobj() public method

Emit 'stobj' instruction with specified arguments.
public EmitStobj ( System type ) : void
type System as type.
return void

EmitStringFormat() public method

Emit String.Format(IFormatProvider,String,Object[]) invocation with CultureInfo.CurrentCulture.
public EmitStringFormat ( int temporaryLocalArrayIndex, Type resource, string resourceKey ) : void
temporaryLocalArrayIndex int /// Index of temporary local variable index to store param array for . /// Note that the type of local variable must be Object[]. ///
resource Type /// Type of resource accessor. ///
resourceKey string /// Key of rethis. Note that this method assumes that key equals to accessor property name. ///
return void

EmitStringFormat() public method

Emit String.Format(IFormatProvider,String,Object[]) invocation with CultureInfo.InvariantCulture.
public EmitStringFormat ( int temporaryLocalArrayIndex, string formatLiteral ) : void
temporaryLocalArrayIndex int /// Index of temporary local variable index to store param array for . /// Note that the type of local variable must be Object[]. ///
formatLiteral string Forat string literal.
return void

EmitStringFormatInvariant() public method

Emit String.Format(IFormatProvider,String,Object[]) invocation with CultureInfo.InvariantCulture.
public EmitStringFormatInvariant ( int temporaryLocalArrayIndex, Type resource, string resourceKey ) : void
temporaryLocalArrayIndex int /// Index of temporary local variable index to store param array for . /// Note that the type of local variable must be Object[]. ///
resource Type /// Type of resource accessor. ///
resourceKey string /// Key of rethis. Note that this method assumes that key equals to accessor property name. ///
return void

EmitStringFormatInvariant() public method

Emit String.Format(IFormatProvider,String,Object[]) invocation with CultureInfo.InvariantCulture.
public EmitStringFormatInvariant ( int temporaryLocalArrayIndex, string formatLiteral ) : void
temporaryLocalArrayIndex int /// Index of temporary local variable index to store param array for . /// Note that the type of local variable must be Object[]. ///
formatLiteral string Forat string literal.
return void

EmitStsfld() public method

Emit 'stsfld' instruction with specified arguments.
public EmitStsfld ( System field ) : void
field System as field.
return void

EmitSub() public method

Emit 'sub' instruction with specified arguments.
public EmitSub ( ) : void
return void

EmitSwitch() public method

Emit 'switch' instruction with specified arguments.
public EmitSwitch ( ) : void
return void

EmitTailCall() public method

Emit 'call' instruction with specified arguments as tail call.
Subsequent 'ret' instruction will be emitted together.
public EmitTailCall ( MethodInfo target ) : void
target MethodInfo as target.
return void

EmitTailCallVirt() public method

Emit 'callvirt' instruction with specified arguments as tail call.
Subsequent 'ret' instruction will be emitted together.
public EmitTailCallVirt ( MethodInfo target ) : void
target MethodInfo as target.
return void

EmitTailCalli() public method

Emit 'calli' instruction for indirect unmanaged function call as tail call.
Subsequent 'ret' instruction will be emitted together.
public EmitTailCalli ( CallingConvention unmanagedCallingConvention, Type returnType, Type parameterTypes ) : void
unmanagedCallingConvention CallingConvention of unmanaged function.
returnType Type Return of the function.
parameterTypes Type Parameter s of the function.
return void

EmitTailCalli() public method

Emit 'calli' instruction for indirect managed method call as tail call.
Subsequent 'ret' instruction will be emitted together.
public EmitTailCalli ( CallingConventions managedCallingConventions, Type returnType, Type requiredParameterTypes, Type optionalParameterTypes ) : void
managedCallingConventions CallingConventions of managed method.
returnType Type Return of the method.
requiredParameterTypes Type Required parameter s of the method.
optionalParameterTypes Type Optional varargs parameter s of the method.
return void

EmitThrow() public method

Emit 'throw' instruction with specified arguments.
public EmitThrow ( ) : void
return void

EmitThrowNewArgumentExceptionWithInnerException() public method

Emit 'throw new ArgumentException(String,String,Exception)' statement. Pre condition is that there are exactly three entries in the evaluation stack, which are string, string, and Exception instance. Post condition is that the evaluation statck will be empty.
public EmitThrowNewArgumentExceptionWithInnerException ( ) : void
return void

EmitThrowNewExceptionWithInnerException() public method

Emit 'throw new TException(String,String,Exception)' statement. Pre condition is that there are exactly two entries in the evaluation stack, which are string and Exception instance. Post condition is that the evaluation statck will be empty.
public EmitThrowNewExceptionWithInnerException ( Type exceptionType ) : void
exceptionType Type of initializing and throwing .
return void

EmitTypeOf() public method

Emit 'typeof' expression. Post condition is Type instance for type will be placed on the top of evaluation stack.
public EmitTypeOf ( Type type ) : void
type Type Target .
return void

EmitUnaligned() public method

Emit 'unaligned.' prefix.
public EmitUnaligned ( byte alignment ) : void
alignment byte Alignment.
return void

EmitUnbox() public method

Emit 'unbox' instruction with specified arguments.
public EmitUnbox ( System type ) : void
type System as type.
return void

EmitXor() public method

Emit 'xor' instruction with specified arguments.
public EmitXor ( ) : void
return void

EndExceptionBlock() public method

End current exception block and its last clause.
public EndExceptionBlock ( ) : void
return void

FlushTrace() public method

public FlushTrace ( ) : void
return void

MarkLabel() public method

Mark current position using specifieid Label.
public MarkLabel ( Label label ) : void
label Label .
return void

TraceWrite() public method

Write trace message.
public TraceWrite ( string value ) : void
value string The string.
return void

TraceWrite() public method

Write trace message.
public TraceWrite ( string format, object arg0 ) : void
format string The format string.
arg0 object Format argument.
return void

TraceWriteLine() public method

Write trace line break.
public TraceWriteLine ( ) : void
return void

TraceWriteLine() public method

Write trace message followed by line break.
public TraceWriteLine ( string value ) : void
value string The string.
return void

TraceWriteLine() public method

Write trace message followed by line break.
public TraceWriteLine ( string format, object arg0 ) : void
format string The format string.
arg0 object Format argument.
return void

TracingILGenerator() public method

Initializes a new instance of the TracingILGenerator class.
public TracingILGenerator ( ConstructorBuilder constructorBuilder, TextWriter traceWriter, bool isDebuggable ) : System
constructorBuilder ConstructorBuilder The constructor builder.
traceWriter TextWriter The trace writer.
isDebuggable bool true if the underlying builders are debuggable; othersie false.
return System

TracingILGenerator() public method

Initializes a new instance of the TracingILGenerator class.
public TracingILGenerator ( DynamicMethod dynamicMethod, TextWriter traceWriter, bool isDebuggable ) : System
dynamicMethod DynamicMethod The dynamic method.
traceWriter TextWriter The trace writer.
isDebuggable bool true if the underlying builders are debuggable; othersie false.
return System

TracingILGenerator() public method

Initializes a new instance of the TracingILGenerator class.
public TracingILGenerator ( MethodBuilder methodBuilder, TextWriter traceWriter ) : System
methodBuilder MethodBuilder The method builder.
traceWriter TextWriter The trace writer.
return System

TracingILGenerator() public method

Initializes a new instance of the TracingILGenerator class.
public TracingILGenerator ( MethodBuilder methodBuilder, TextWriter traceWriter, bool isDebuggable ) : System
methodBuilder MethodBuilder The method builder.
traceWriter TextWriter The trace writer.
isDebuggable bool true if the underlying builders are debuggable; othersie false.
return System