This topic has not yet been rated - Rate this topic

SignatureHelper Class

Provides methods for building signatures.

System.Object
  System.Reflection.Emit.SignatureHelper

Namespace:  System.Reflection.Emit
Assembly:  mscorlib (in mscorlib.dll)
[ClassInterfaceAttribute(ClassInterfaceType.None)]
[ComVisibleAttribute(true)]
public sealed class SignatureHelper : _SignatureHelper

The SignatureHelper type exposes the following members.

  Name Description
Public method AddArgument(Type) Adds an argument to the signature.
Public method AddArgument(Type, Boolean) Adds an argument of the specified type to the signature, specifying whether the argument is pinned.
Public method AddArgument(Type, Type[], Type[]) Adds an argument to the signature, with the specified custom modifiers.
Public method AddArguments Adds a set of arguments to the signature, with the specified custom modifiers.
Public method AddSentinel Marks the end of a vararg fixed part. This is only used if the caller is creating a vararg signature call site.
Public method Equals Checks if this instance is equal to the given object. (Overrides Object.Equals(Object).)
Protected method Finalize Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public method Static member GetFieldSigHelper Returns a signature helper for a field.
Public method GetHashCode Creates and returns a hash code for this instance. (Overrides Object.GetHashCode().)
Public method Static member GetLocalVarSigHelper() Returns a signature helper for a local variable.
Public method Static member GetLocalVarSigHelper(Module) Returns a signature helper for a local variable.
Public method Static member GetMethodSigHelper(CallingConvention, Type) Returns a signature helper for a method given the method's unmanaged calling convention and return type.
Public method Static member GetMethodSigHelper(CallingConventions, Type) Returns a signature helper for a method given the method's calling convention and return type.
Public method Static member GetMethodSigHelper(Module, CallingConventions, Type) Returns a signature helper for a method given the method's module, calling convention, and return type.
Public method Static member GetMethodSigHelper(Module, CallingConvention, Type) Returns a signature helper for a method given the method's module, unmanaged calling convention, and return type.
Public method Static member GetMethodSigHelper(Module, Type, Type[]) Returns a signature helper for a method with a standard calling convention, given the method's module, return type, and argument types.
Public method Static member GetPropertySigHelper(Module, Type, Type[]) Returns a signature helper for a property, given the dynamic module that contains the property, the property type, and the property arguments.
Public method Static member GetPropertySigHelper(Module, Type, Type[], Type[], Type[], Type[][], Type[][]) Returns a signature helper for a property, given the dynamic module that contains the property, the property type, the property arguments, and custom modifiers for the return type and arguments.
Public method Static member GetPropertySigHelper(Module, CallingConventions, Type, Type[], Type[], Type[], Type[][], Type[][]) Returns a signature helper for a property, given the dynamic module that contains the property, the calling convention, the property type, the property arguments, and custom modifiers for the return type and arguments.
Public method GetSignature Adds the end token to the signature and marks the signature as finished, so no further tokens can be added.
Public method GetType Gets the Type of the current instance. (Inherited from Object.)
Protected method MemberwiseClone Creates a shallow copy of the current Object. (Inherited from Object.)
Public method ToString Returns a string representing the signature arguments. (Overrides Object.ToString().)
Top
  Name Description
Explicit interface implemetation Private method _SignatureHelper.GetIDsOfNames Maps a set of names to a corresponding set of dispatch identifiers.
Explicit interface implemetation Private method _SignatureHelper.GetTypeInfo Retrieves the type information for an object, which can then be used to get the type information for an interface.
Explicit interface implemetation Private method _SignatureHelper.GetTypeInfoCount Retrieves the number of type information interfaces that an object provides (either 0 or 1).
Explicit interface implemetation Private method _SignatureHelper.Invoke Provides access to properties and methods exposed by an object.
Top

Use the SignatureHelper class to create a signature blob that can be passed to the SetLocalSignature method of the DynamicILInfo class. A SignatureHelper object can also be passed to the ILGenerator.Emit(OpCode, SignatureHelper) method overload to insert an instruction and a signature token into a Microsoft intermediate language (MSIL) stream. For information on signature blobs and signature metadata, see the ECMA Partition II Metadata documentation.

Note Note

The ECMA Partition II documentation is available online; see ECMA C# and Common Language Infrastructure Standards on MSDN and Standard ECMA-335 - Common Language Infrastructure (CLI) on the Ecma International Web site.

.NET Framework

Supported in: 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Did you find this helpful?
(1500 characters remaining)
Community Content Add
Annotations FAQ