Class Method<D>
Represents reflected method.
Implements
Namespace: DotNext.Reflection
Assembly: DotNext.Reflection.dll
Syntax
public sealed class Method<D> : MethodInfo, IMethod<D>, IMethod<MethodInfo, D>, IMember<MethodInfo, D>, IMember<MethodInfo>, ICustomAttributeProvider, IEquatable<MethodInfo> where D : MulticastDelegate
Type Parameters
Name | Description |
---|---|
D | Type of delegate describing signature of the reflected method. |
Properties
| Improve this Doc View SourceAttributes
Gets the attributes associated with this method.
Declaration
public override MethodAttributes Attributes { get; }
Property Value
Type | Description |
---|---|
MethodAttributes |
CallingConvention
Gets a value indicating the calling conventions for this constructor.
Declaration
public override CallingConventions CallingConvention { get; }
Property Value
Type | Description |
---|---|
CallingConventions |
ContainsGenericParameters
Gets a value indicating whether the generic method contains unassigned generic type parameters.
Declaration
public override bool ContainsGenericParameters { get; }
Property Value
Type | Description |
---|---|
Boolean |
CustomAttributes
Gets a collection that contains this member's custom attributes.
Declaration
public override IEnumerable<CustomAttributeData> CustomAttributes { get; }
Property Value
Type | Description |
---|---|
IEnumerable<CustomAttributeData> |
DeclaringType
Gets the class that declares this method.
Declaration
public override Type DeclaringType { get; }
Property Value
Type | Description |
---|---|
DotNext.Reflection.Type |
IsGenericMethod
Gets a value indicating whether the method is generic.
Declaration
public override bool IsGenericMethod { get; }
Property Value
Type | Description |
---|---|
Boolean |
IsGenericMethodDefinition
Gets a value indicating whether the method is a generic method definition.
Declaration
public override bool IsGenericMethodDefinition { get; }
Property Value
Type | Description |
---|---|
Boolean |
IsSecurityCritical
Gets a value that indicates whether the method is security-critical or security-safe-critical at the current trust level, and therefore can perform critical operations.
Declaration
public override bool IsSecurityCritical { get; }
Property Value
Type | Description |
---|---|
Boolean |
IsSecuritySafeCritical
Gets a value that indicates whether the method is security-safe-critical at the current trust level; that is, whether it can perform critical operations and can be accessed by transparent code.
Declaration
public override bool IsSecuritySafeCritical { get; }
Property Value
Type | Description |
---|---|
Boolean |
IsSecurityTransparent
Gets a value that indicates whether the current method is transparent at the current trust level, and therefore cannot perform critical operations.
Declaration
public override bool IsSecurityTransparent { get; }
Property Value
Type | Description |
---|---|
Boolean |
MemberType
Always returns
Declaration
public override MemberTypes MemberType { get; }
Property Value
Type | Description |
---|---|
MemberTypes |
MetadataToken
Gets a value that identifies a metadata element.
Declaration
public override int MetadataToken { get; }
Property Value
Type | Description |
---|---|
Int32 |
MethodHandle
Gets a handle to the internal metadata representation of a method.
Declaration
public override RuntimeMethodHandle MethodHandle { get; }
Property Value
Type | Description |
---|---|
RuntimeMethodHandle |
MethodImplementationFlags
Gets method implementation attributes.
Declaration
public override MethodImplAttributes MethodImplementationFlags { get; }
Property Value
Type | Description |
---|---|
MethodImplAttributes |
Module
Gets the module in which the type that declares the method represented by the current instance is defined.
Declaration
public override Module Module { get; }
Property Value
Type | Description |
---|---|
Module |
Name
Gets name of this method.
Declaration
public override string Name { get; }
Property Value
Type | Description |
---|---|
String |
ReflectedType
Gets the class object that was used to obtain this instance.
Declaration
public override Type ReflectedType { get; }
Property Value
Type | Description |
---|---|
DotNext.Reflection.Type |
ReturnParameter
Gets information about the return type of the method, such as whether the return type has custom modifiers.
Declaration
public override ParameterInfo ReturnParameter { get; }
Property Value
Type | Description |
---|---|
ParameterInfo |
ReturnType
Gets the return type of this method.
Declaration
public override Type ReturnType { get; }
Property Value
Type | Description |
---|---|
DotNext.Reflection.Type |
ReturnTypeCustomAttributes
Gets the custom attributes for the return type.
Declaration
public override ICustomAttributeProvider ReturnTypeCustomAttributes { get; }
Property Value
Type | Description |
---|---|
ICustomAttributeProvider |
Methods
| Improve this Doc View SourceCreateDelegate(Type)
Creates a delegate of the specified type from this method.
Declaration
public override Delegate CreateDelegate(Type delegateType)
Parameters
Type | Name | Description |
---|---|---|
DotNext.Reflection.Type | delegateType | The type of the delegate to create. |
Returns
Type | Description |
---|---|
Delegate | The delegate for this method. |
CreateDelegate(Type, Object)
Creates a delegate of the specified type from this method.
Declaration
public override Delegate CreateDelegate(Type delegateType, object target)
Parameters
Type | Name | Description |
---|---|---|
DotNext.Reflection.Type | delegateType | The type of the delegate to create. |
Object | target | The object targeted by the delegate. |
Returns
Type | Description |
---|---|
Delegate | The delegate for this method. |
Equals(MethodInfo)
Determines whether this method is equal to the given method.
Declaration
public bool Equals(MethodInfo other)
Parameters
Type | Name | Description |
---|---|---|
MethodInfo | other | Other constructor to compare. |
Returns
Type | Description |
---|---|
Boolean | true if this object reflects the same method as the specified object; otherwise, false. |
Equals(Object)
Determines whether this method is equal to the given method.
Declaration
public override bool Equals(object other)
Parameters
Type | Name | Description |
---|---|---|
Object | other | Other constructor to compare. |
Returns
Type | Description |
---|---|
Boolean | true if this object reflects the same method as the specified object; otherwise, false. |
GetBaseDefinition()
Returns the method on the direct or indirect base class in which the method represented by this instance was first declared.
Declaration
public override MethodInfo GetBaseDefinition()
Returns
Type | Description |
---|---|
MethodInfo | The first implementation of this method. |
GetCustomAttributes(Type, Boolean)
Returns an array of all custom attributes applied to this method.
Declaration
public override object[] GetCustomAttributes(Type attributeType, bool inherit)
Parameters
Type | Name | Description |
---|---|---|
DotNext.Reflection.Type | attributeType | The type of attribute to search for. Only attributes that are assignable to this type are returned. |
Boolean | inherit | true to search this member's inheritance chain to find the attributes; otherwise, false. |
Returns
Type | Description |
---|---|
Object[] | An array that contains all the custom attributes applied to this method. |
GetCustomAttributes(Boolean)
Returns an array of all custom attributes applied to this method.
Declaration
public override object[] GetCustomAttributes(bool inherit)
Parameters
Type | Name | Description |
---|---|---|
Boolean | inherit | true to search this member's inheritance chain to find the attributes; otherwise, false. |
Returns
Type | Description |
---|---|
Object[] | An array that contains all the custom attributes applied to this method. |
GetCustomAttributesData()
Returns a list of custom attributes that have been applied to the target method.
Declaration
public override IList<CustomAttributeData> GetCustomAttributesData()
Returns
Type | Description |
---|---|
IList<CustomAttributeData> | The data about the attributes that have been applied to the target method. |
GetGenericArguments()
Returns the type arguments of a generic method or the type parameters of a generic method definition.
Declaration
public override Type[] GetGenericArguments()
Returns
Type | Description |
---|---|
DotNext.Reflection.Type[] | The list of generic arguments. |
GetGenericMethodDefinition()
Returns generic method definition from which the current method can be constructed.
Declaration
public override MethodInfo GetGenericMethodDefinition()
Returns
Type | Description |
---|---|
MethodInfo | Generic method definition from which the current method can be constructed. |
GetHashCode()
Computes hash code uniquely identifies the reflected method.
Declaration
public override int GetHashCode()
Returns
Type | Description |
---|---|
Int32 | The hash code of the method. |
GetMethodBody()
Provides access to the MSIL stream, local variables, and exceptions for the current method.
Declaration
public override MethodBody GetMethodBody()
Returns
Type | Description |
---|---|
MethodBody | An object that provides access to the MSIL stream, local variables, and exceptions for the current method. |
GetMethodImplementationFlags()
Gets method implementation attributes.
Declaration
public override MethodImplAttributes GetMethodImplementationFlags()
Returns
Type | Description |
---|---|
MethodImplAttributes | Implementation attributes. |
GetParameters()
Gets method parameters.
Declaration
public override ParameterInfo[] GetParameters()
Returns
Type | Description |
---|---|
ParameterInfo[] | The array of method parameters. |
Invoke(Object, BindingFlags, Binder, Object[], CultureInfo)
Invokes this method.
Declaration
public override object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture)
Parameters
Type | Name | Description |
---|---|---|
Object | obj | The object on which to invoke the method. |
BindingFlags | invokeAttr | Specifies the type of binding. |
Binder | binder | Defines a set of properties and enables the binding, coercion of argument types, and invocation of members using reflection. |
Object[] | parameters | A list of method arguments. |
CultureInfo | culture | Used to govern the coercion of types. |
Returns
Type | Description |
---|---|
Object | The return value of the invoked method. |
IsDefined(Type, Boolean)
Determines whether one or more attributes of the specified type or of its derived types is applied to this method.
Declaration
public override bool IsDefined(Type attributeType, bool inherit)
Parameters
Type | Name | Description |
---|---|---|
DotNext.Reflection.Type | attributeType | The type of custom attribute to search for. The search includes derived types. |
Boolean | inherit | true to search this member's inheritance chain to find the attributes; otherwise, false. |
Returns
Type | Description |
---|---|
Boolean | true if one or more instances of |
MakeGenericMethod(Type[])
Substitutes the elements of an array of types for the type parameters of the current generic method definition, and returns the resulting constructed method.
Declaration
public override MethodInfo MakeGenericMethod(params Type[] typeArguments)
Parameters
Type | Name | Description |
---|---|---|
DotNext.Reflection.Type[] | typeArguments | An array of types to be substituted for the type parameters of the current generic method definition. |
Returns
Type | Description |
---|---|
MethodInfo | The constructed method formed by substituting the elements of |
ToString()
Returns textual representation of this method.
Declaration
public override string ToString()
Returns
Type | Description |
---|---|
String | The textual representation of this method. |
Operators
| Improve this Doc View SourceImplicit(Method<D> to D)
Gets a delegate representing this method.
Declaration
public static implicit operator D(Method<D> method)
Parameters
Type | Name | Description |
---|---|---|
Method<D> | method | The reflected method. |
Returns
Type | Description |
---|---|
D |
Explicit Interface Implementations
| Improve this Doc View SourceIMember<MethodInfo, D>.Invoker
Declaration
D IMember<MethodInfo, D>.Invoker { get; }
Returns
Type | Description |
---|---|
D |
IMember<MethodInfo>.RuntimeMember
Declaration
MethodInfo IMember<MethodInfo>.RuntimeMember { get; }
Returns
Type | Description |
---|---|
MethodInfo |