Class ILGeneratorShim
Abstract version of System.Reflection.Emit.ILGenerator. See System.Reflection.Emit.ILGenerator for proper documentation.
Inheritance
System.Object
ILGeneratorShim
Assembly: MonoMod.Utils.dll
Syntax
public abstract class ILGeneratorShim : Object
Constructors
ILGeneratorShim()
Declaration
protected ILGeneratorShim()
Properties
ILOffset
Declaration
public abstract int ILOffset { get; }
Property Value
| Type |
Description |
| System.Int32 |
|
ProxyType
Get the non-generic proxy type implementing ILGenerator.
Declaration
public static Type ProxyType { get; }
Property Value
| Type |
Description |
| System.Type |
The "real" ILGenerator type, non-generic.
|
Methods
BeginCatchBlock(Type)
Declaration
public abstract void BeginCatchBlock(Type exceptionType)
Parameters
| Type |
Name |
Description |
| System.Type |
exceptionType |
|
BeginExceptFilterBlock()
Declaration
public abstract void BeginExceptFilterBlock()
BeginExceptionBlock()
Declaration
public abstract Label BeginExceptionBlock()
Returns
| Type |
Description |
| System.Reflection.Emit.Label |
|
BeginFaultBlock()
Declaration
public abstract void BeginFaultBlock()
BeginFinallyBlock()
Declaration
public abstract void BeginFinallyBlock()
BeginScope()
Declaration
public abstract void BeginScope()
DeclareLocal(Type)
Declaration
public abstract LocalBuilder DeclareLocal(Type localType)
Parameters
| Type |
Name |
Description |
| System.Type |
localType |
|
Returns
| Type |
Description |
| System.Reflection.Emit.LocalBuilder |
|
DeclareLocal(Type, Boolean)
Declaration
public abstract LocalBuilder DeclareLocal(Type localType, bool pinned)
Parameters
| Type |
Name |
Description |
| System.Type |
localType |
|
| System.Boolean |
pinned |
|
Returns
| Type |
Description |
| System.Reflection.Emit.LocalBuilder |
|
DefineLabel()
Declaration
public abstract Label DefineLabel()
Returns
| Type |
Description |
| System.Reflection.Emit.Label |
|
Emit(OpCode)
Declaration
public abstract void Emit(OpCode opcode)
Parameters
| Type |
Name |
Description |
| System.Reflection.Emit.OpCode |
opcode |
|
Emit(OpCode, Byte)
Declaration
public abstract void Emit(OpCode opcode, byte arg)
Parameters
| Type |
Name |
Description |
| System.Reflection.Emit.OpCode |
opcode |
|
| System.Byte |
arg |
|
Emit(OpCode, Double)
Declaration
public abstract void Emit(OpCode opcode, double arg)
Parameters
| Type |
Name |
Description |
| System.Reflection.Emit.OpCode |
opcode |
|
| System.Double |
arg |
|
Emit(OpCode, Int16)
Declaration
public abstract void Emit(OpCode opcode, short arg)
Parameters
| Type |
Name |
Description |
| System.Reflection.Emit.OpCode |
opcode |
|
| System.Int16 |
arg |
|
Emit(OpCode, Int32)
Declaration
public abstract void Emit(OpCode opcode, int arg)
Parameters
| Type |
Name |
Description |
| System.Reflection.Emit.OpCode |
opcode |
|
| System.Int32 |
arg |
|
Emit(OpCode, Int64)
Declaration
public abstract void Emit(OpCode opcode, long arg)
Parameters
| Type |
Name |
Description |
| System.Reflection.Emit.OpCode |
opcode |
|
| System.Int64 |
arg |
|
Emit(OpCode, ConstructorInfo)
Declaration
public abstract void Emit(OpCode opcode, ConstructorInfo con)
Parameters
| Type |
Name |
Description |
| System.Reflection.Emit.OpCode |
opcode |
|
| System.Reflection.ConstructorInfo |
con |
|
Emit(OpCode, Label)
Declaration
public abstract void Emit(OpCode opcode, Label label)
Parameters
| Type |
Name |
Description |
| System.Reflection.Emit.OpCode |
opcode |
|
| System.Reflection.Emit.Label |
label |
|
Emit(OpCode, Label[])
Declaration
public abstract void Emit(OpCode opcode, Label[] labels)
Parameters
| Type |
Name |
Description |
| System.Reflection.Emit.OpCode |
opcode |
|
| System.Reflection.Emit.Label[] |
labels |
|
Emit(OpCode, LocalBuilder)
Declaration
public abstract void Emit(OpCode opcode, LocalBuilder local)
Parameters
| Type |
Name |
Description |
| System.Reflection.Emit.OpCode |
opcode |
|
| System.Reflection.Emit.LocalBuilder |
local |
|
Emit(OpCode, SignatureHelper)
Declaration
public abstract void Emit(OpCode opcode, SignatureHelper signature)
Parameters
| Type |
Name |
Description |
| System.Reflection.Emit.OpCode |
opcode |
|
| System.Reflection.Emit.SignatureHelper |
signature |
|
Emit(OpCode, FieldInfo)
Declaration
public abstract void Emit(OpCode opcode, FieldInfo field)
Parameters
| Type |
Name |
Description |
| System.Reflection.Emit.OpCode |
opcode |
|
| System.Reflection.FieldInfo |
field |
|
Emit(OpCode, MethodInfo)
Declaration
public abstract void Emit(OpCode opcode, MethodInfo meth)
Parameters
| Type |
Name |
Description |
| System.Reflection.Emit.OpCode |
opcode |
|
| System.Reflection.MethodInfo |
meth |
|
Emit(OpCode, SByte)
Declaration
public abstract void Emit(OpCode opcode, sbyte arg)
Parameters
| Type |
Name |
Description |
| System.Reflection.Emit.OpCode |
opcode |
|
| System.SByte |
arg |
|
Emit(OpCode, Single)
Declaration
public abstract void Emit(OpCode opcode, float arg)
Parameters
| Type |
Name |
Description |
| System.Reflection.Emit.OpCode |
opcode |
|
| System.Single |
arg |
|
Emit(OpCode, String)
Declaration
public abstract void Emit(OpCode opcode, string str)
Parameters
| Type |
Name |
Description |
| System.Reflection.Emit.OpCode |
opcode |
|
| System.String |
str |
|
Emit(OpCode, Type)
Declaration
public abstract void Emit(OpCode opcode, Type cls)
Parameters
| Type |
Name |
Description |
| System.Reflection.Emit.OpCode |
opcode |
|
| System.Type |
cls |
|
EmitCall(OpCode, MethodInfo, Type[])
Declaration
public abstract void EmitCall(OpCode opcode, MethodInfo methodInfo, Type[] optionalParameterTypes)
Parameters
| Type |
Name |
Description |
| System.Reflection.Emit.OpCode |
opcode |
|
| System.Reflection.MethodInfo |
methodInfo |
|
| System.Type[] |
optionalParameterTypes |
|
EmitCalli(OpCode, CallingConventions, Type, Type[], Type[])
Declaration
public abstract void EmitCalli(OpCode opcode, CallingConventions callingConvention, Type returnType, Type[] parameterTypes, Type[] optionalParameterTypes)
Parameters
| Type |
Name |
Description |
| System.Reflection.Emit.OpCode |
opcode |
|
| System.Reflection.CallingConventions |
callingConvention |
|
| System.Type |
returnType |
|
| System.Type[] |
parameterTypes |
|
| System.Type[] |
optionalParameterTypes |
|
EmitCalli(OpCode, CallingConvention, Type, Type[])
Declaration
public abstract void EmitCalli(OpCode opcode, CallingConvention unmanagedCallConv, Type returnType, Type[] parameterTypes)
Parameters
| Type |
Name |
Description |
| System.Reflection.Emit.OpCode |
opcode |
|
| System.Runtime.InteropServices.CallingConvention |
unmanagedCallConv |
|
| System.Type |
returnType |
|
| System.Type[] |
parameterTypes |
|
EmitWriteLine(LocalBuilder)
Declaration
public abstract void EmitWriteLine(LocalBuilder localBuilder)
Parameters
| Type |
Name |
Description |
| System.Reflection.Emit.LocalBuilder |
localBuilder |
|
EmitWriteLine(FieldInfo)
Declaration
public abstract void EmitWriteLine(FieldInfo fld)
Parameters
| Type |
Name |
Description |
| System.Reflection.FieldInfo |
fld |
|
EmitWriteLine(String)
Declaration
public abstract void EmitWriteLine(string value)
Parameters
| Type |
Name |
Description |
| System.String |
value |
|
EndExceptionBlock()
Declaration
public abstract void EndExceptionBlock()
EndScope()
Declaration
public abstract void EndScope()
GetProxy()
Get a "real" ILGenerator for this ILGeneratorShim.
Declaration
public ILGenerator GetProxy()
Returns
| Type |
Description |
| System.Reflection.Emit.ILGenerator |
A "real" ILGenerator.
|
GetProxyType(Type)
Get the proxy type for a given ILGeneratorShim type. The proxy type implements ILGenerator.
Declaration
public static Type GetProxyType(Type tShim)
Parameters
| Type |
Name |
Description |
| System.Type |
tShim |
The ILGeneratorShim type.
|
Returns
| Type |
Description |
| System.Type |
The "real" ILGenerator type.
|
GetProxyType<TShim>()
Get the proxy type for a given ILGeneratorShim type. The proxy type implements ILGenerator.
Declaration
public static Type GetProxyType<TShim>()
where TShim : ILGeneratorShim
Returns
| Type |
Description |
| System.Type |
The "real" ILGenerator type.
|
Type Parameters
| Name |
Description |
| TShim |
The ILGeneratorShim type.
|
MarkLabel(Label)
Declaration
public abstract void MarkLabel(Label loc)
Parameters
| Type |
Name |
Description |
| System.Reflection.Emit.Label |
loc |
|
ThrowException(Type)
Declaration
public abstract void ThrowException(Type excType)
Parameters
| Type |
Name |
Description |
| System.Type |
excType |
|
UsingNamespace(String)
Declaration
public abstract void UsingNamespace(string usingNamespace)
Parameters
| Type |
Name |
Description |
| System.String |
usingNamespace |
|