System.Reflection.Emit.SignatureHelper
Provides methods for building signatures.
namespace System.Reflection.Emit
{
public sealed class SignatureHelper
{
public void AddArgument(Type clsArgument);
public void AddArgument(Type argument, bool pinned);
public void AddArgument(Type argument, Type[] requiredCustomModifiers, Type[] optionalCustomModifiers);
public void AddArguments(Type[] arguments, Type[][] requiredCustomModifiers, Type[][] optionalCustomModifiers);
public void AddSentinel();
public static SignatureHelper GetFieldSigHelper(Module mod);
public static SignatureHelper GetLocalVarSigHelper();
public static SignatureHelper GetLocalVarSigHelper(Module mod);
public static SignatureHelper GetMethodSigHelper(CallingConventions callingConvention, Type returnType);
public static SignatureHelper GetMethodSigHelper(Module mod, CallingConventions callingConvention, Type returnType);
public static SignatureHelper GetMethodSigHelper(Module mod, Type returnType, Type[] parameterTypes);
public static SignatureHelper GetPropertySigHelper(Module mod, CallingConventions callingConvention, Type returnType, Type[] requiredReturnTypeCustomModifiers, Type[] optionalReturnTypeCustomModifiers, Type[] parameterTypes, Type[][] requiredParameterTypeCustomModifiers, Type[][] optionalParameterTypeCustomModifiers);
public static SignatureHelper GetPropertySigHelper(Module mod, Type returnType, Type[] parameterTypes);
public static SignatureHelper GetPropertySigHelper(Module mod, Type returnType, Type[] requiredReturnTypeCustomModifiers, Type[] optionalReturnTypeCustomModifiers, Type[] parameterTypes, Type[][] requiredParameterTypeCustomModifiers, Type[][] optionalParameterTypeCustomModifiers);
public byte[] GetSignature();
}
}
namespace System.Reflection.Emit
{
public class ILGenerator
{
public virtual int ILOffset { get; }
internal ILGenerator();
public virtual void BeginCatchBlock(Type exceptionType);
public virtual void BeginExceptFilterBlock();
public virtual Label BeginExceptionBlock();
public virtual void BeginFaultBlock();
public virtual void BeginFinallyBlock();
public virtual void BeginScope();
public virtual LocalBuilder DeclareLocal(Type localType);
public virtual LocalBuilder DeclareLocal(Type localType, bool pinned);
public virtual Label DefineLabel();
public virtual void Emit(OpCode opcode);
public virtual void Emit(OpCode opcode, byte arg);
public virtual void Emit(OpCode opcode, double arg);
public virtual void Emit(OpCode opcode, short arg);
public virtual void Emit(OpCode opcode, int arg);
public virtual void Emit(OpCode opcode, long arg);
public virtual void Emit(OpCode opcode, ConstructorInfo con);
public virtual void Emit(OpCode opcode, Label label);
public virtual void Emit(OpCode opcode, Label[] labels);
public virtual void Emit(OpCode opcode, LocalBuilder local);
public virtual void Emit(OpCode opcode, SignatureHelper signature);
public virtual void Emit(OpCode opcode, FieldInfo field);
public virtual void Emit(OpCode opcode, MethodInfo meth);
[CLSCompliant(false)]
public void Emit(OpCode opcode, sbyte arg);
public virtual void Emit(OpCode opcode, float arg);
public virtual void Emit(OpCode opcode, string str);
public virtual void Emit(OpCode opcode, Type cls);
public virtual void EmitCall(OpCode opcode, MethodInfo methodInfo, Type[] optionalParameterTypes);
public virtual void EmitCalli(OpCode opcode, CallingConventions callingConvention, Type returnType, Type[] parameterTypes, Type[] optionalParameterTypes);
public virtual void EmitWriteLine(LocalBuilder localBuilder);
public virtual void EmitWriteLine(FieldInfo fld);
public virtual void EmitWriteLine(string value);
public virtual void EndExceptionBlock();
public virtual void EndScope();
public virtual void MarkLabel(Label loc);
public virtual void ThrowException(Type excType);
public virtual void UsingNamespace(string usingNamespace);
}
}