using System; using System.Globalization; using System.Runtime.InteropServices; using Cpp2IlInjected; namespace System.Reflection.Emit { /// Defines and represents a dynamic method that can be compiled, executed, and discarded. Discarded methods are available for garbage collection. // Token: 0x02000705 RID: 1797 [Token(Token = "0x2000705")] [ComVisible(true)] public sealed class DynamicMethod : MethodInfo { /// Creates a dynamic method that is global to a module, specifying the method name, return type, parameter types, module, and whether just-in-time (JIT) visibility checks should be skipped for types and members accessed by the Microsoft intermediate language (MSIL) of the dynamic method. /// The name of the dynamic method. This can be a zero-length string, but it cannot be . /// A object that specifies the return type of the dynamic method, or if the method has no return type. /// An array of objects specifying the types of the parameters of the dynamic method, or if the method has no parameters. /// A representing the module with which the dynamic method is to be logically associated. /// /// to skip JIT visibility checks on types and members accessed by the MSIL of the dynamic method. /// An element of is or . /// -or- /// is a module that provides anonymous hosting for dynamic methods. /// /// is . /// -or- /// is . /// /// is a type for which returns . // Token: 0x06003432 RID: 13362 RVA: 0x00002050 File Offset: 0x00000250 [Token(Token = "0x6003432")] [Address(RVA = "0x30B72C0", Offset = "0x30B62C0", VA = "0x1830B72C0")] public DynamicMethod(string name, Type returnType, Type[] parameterTypes, Module m, bool skipVisibility) { } /// Creates a dynamic method, specifying the method name, return type, parameter types, the type with which the dynamic method is logically associated, and whether just-in-time (JIT) visibility checks should be skipped for types and members accessed by the Microsoft intermediate language (MSIL) of the dynamic method. /// The name of the dynamic method. This can be a zero-length string, but it cannot be . /// A object that specifies the return type of the dynamic method, or if the method has no return type. /// An array of objects specifying the types of the parameters of the dynamic method, or if the method has no parameters. /// A with which the dynamic method is logically associated. The dynamic method has access to all members of the type. /// /// to skip JIT visibility checks on types and members accessed by the MSIL of the dynamic method; otherwise, . /// An element of is or . /// -or- /// is an interface, an array, an open generic type, or a type parameter of a generic type or method. /// /// is . /// -or- /// is . /// /// is , or is a type for which returns . // Token: 0x06003433 RID: 13363 RVA: 0x00002050 File Offset: 0x00000250 [Token(Token = "0x6003433")] [Address(RVA = "0x30B72F0", Offset = "0x30B62F0", VA = "0x1830B72F0")] public DynamicMethod(string name, Type returnType, Type[] parameterTypes, Type owner, bool skipVisibility) { } /// Gets the attributes specified when the dynamic method was created. /// A bitwise combination of the values representing the attributes for the method. // Token: 0x17000835 RID: 2101 // (get) Token: 0x06003434 RID: 13364 RVA: 0x0001BDE0 File Offset: 0x00019FE0 [Token(Token = "0x17000835")] public override MethodAttributes Attributes { [Token(Token = "0x6003434")] [Address(RVA = "0x30B7320", Offset = "0x30B6320", VA = "0x1830B7320", Slot = "22")] get { return MethodAttributes.PrivateScope; } } /// Gets the type that declares the method, which is always for dynamic methods. /// Always . // Token: 0x17000836 RID: 2102 // (get) Token: 0x06003435 RID: 13365 RVA: 0x00002082 File Offset: 0x00000282 [Token(Token = "0x17000836")] public override Type DeclaringType { [Token(Token = "0x6003435")] [Address(RVA = "0x30B7350", Offset = "0x30B6350", VA = "0x1830B7350", Slot = "9")] get { return null; } } /// Gets or sets a value indicating whether the local variables in the method are zero-initialized. /// /// if the local variables in the method are zero-initialized; otherwise, . The default is . // Token: 0x17000837 RID: 2103 // (set) Token: 0x06003436 RID: 13366 RVA: 0x00002050 File Offset: 0x00000250 [Token(Token = "0x17000837")] public bool InitLocals { [Token(Token = "0x6003436")] [Address(RVA = "0x30B7410", Offset = "0x30B6410", VA = "0x1830B7410")] set { } } /// Not supported for dynamic methods. /// Not supported for dynamic methods. /// Not allowed for dynamic methods. // Token: 0x17000838 RID: 2104 // (get) Token: 0x06003437 RID: 13367 RVA: 0x0001BDF8 File Offset: 0x00019FF8 [Token(Token = "0x17000838")] public override RuntimeMethodHandle MethodHandle { [Token(Token = "0x6003437")] [Address(RVA = "0x30B7380", Offset = "0x30B6380", VA = "0x1830B7380", Slot = "21")] get { return default(RuntimeMethodHandle); } } /// Gets the name of the dynamic method. /// The simple name of the method. // Token: 0x17000839 RID: 2105 // (get) Token: 0x06003438 RID: 13368 RVA: 0x00002082 File Offset: 0x00000282 [Token(Token = "0x17000839")] public override string Name { [Token(Token = "0x6003438")] [Address(RVA = "0x30B73B0", Offset = "0x30B63B0", VA = "0x1830B73B0", Slot = "8")] get { return null; } } /// Gets the class that was used in reflection to obtain the method. /// Always . // Token: 0x1700083A RID: 2106 // (get) Token: 0x06003439 RID: 13369 RVA: 0x00002082 File Offset: 0x00000282 [Token(Token = "0x1700083A")] public override Type ReflectedType { [Token(Token = "0x6003439")] [Address(RVA = "0x30B73E0", Offset = "0x30B63E0", VA = "0x1830B73E0", Slot = "10")] get { return null; } } /// Returns the base implementation for the method. /// The base implementation of the method. // Token: 0x0600343A RID: 13370 RVA: 0x00002082 File Offset: 0x00000282 [Token(Token = "0x600343A")] [Address(RVA = "0x30B7140", Offset = "0x30B6140", VA = "0x1830B7140", Slot = "44")] public override MethodInfo GetBaseDefinition() { return null; } /// Returns all the custom attributes defined for the method. /// /// to search the method's inheritance chain to find the custom attributes; to check only the current method. /// An array of objects representing all the custom attributes of the method. // Token: 0x0600343B RID: 13371 RVA: 0x00002082 File Offset: 0x00000282 [Token(Token = "0x600343B")] [Address(RVA = "0x30B71A0", Offset = "0x30B61A0", VA = "0x1830B71A0", Slot = "12")] public override object[] GetCustomAttributes(bool inherit) { return null; } /// Returns the custom attributes of the specified type that have been applied to the method. /// A representing the type of custom attribute to return. /// /// to search the method's inheritance chain to find the custom attributes; to check only the current method. /// An array of objects representing the attributes of the method that are of type or derive from type . /// /// is . // Token: 0x0600343C RID: 13372 RVA: 0x00002082 File Offset: 0x00000282 [Token(Token = "0x600343C")] [Address(RVA = "0x30B7170", Offset = "0x30B6170", VA = "0x1830B7170", Slot = "13")] public override object[] GetCustomAttributes(Type attributeType, bool inherit) { return null; } /// Returns a Microsoft intermediate language (MSIL) generator for the method with a default MSIL stream size of 64 bytes. /// An object for the method. // Token: 0x0600343D RID: 13373 RVA: 0x00002082 File Offset: 0x00000282 [Token(Token = "0x600343D")] [Address(RVA = "0x30B71D0", Offset = "0x30B61D0", VA = "0x1830B71D0")] public ILGenerator GetILGenerator() { return null; } /// Returns the implementation flags for the method. /// A bitwise combination of values representing the implementation flags for the method. // Token: 0x0600343E RID: 13374 RVA: 0x0001BE10 File Offset: 0x0001A010 [Token(Token = "0x600343E")] [Address(RVA = "0x30B7200", Offset = "0x30B6200", VA = "0x1830B7200", Slot = "20")] public override MethodImplAttributes GetMethodImplementationFlags() { return MethodImplAttributes.IL; } /// Returns the parameters of the dynamic method. /// An array of objects that represent the parameters of the dynamic method. // Token: 0x0600343F RID: 13375 RVA: 0x00002082 File Offset: 0x00000282 [Token(Token = "0x600343F")] [Address(RVA = "0x30B7230", Offset = "0x30B6230", VA = "0x1830B7230", Slot = "19")] public override ParameterInfo[] GetParameters() { return null; } /// Invokes the dynamic method using the specified parameters, under the constraints of the specified binder, with the specified culture information. /// This parameter is ignored for dynamic methods, because they are static. Specify . /// A bitwise combination of values. /// A object that enables the binding, coercion of argument types, invocation of members, and retrieval of objects through reflection. If is , the default binder is used. For more details, see . /// An argument list. This is an array of arguments with the same number, order, and type as the parameters of the method to be invoked. If there are no parameters this parameter should be . /// An instance of used to govern the coercion of types. If this is , the for the current thread is used. For example, this information is needed to correctly convert a that represents 1000 to a value, because 1000 is represented differently by different cultures. /// A containing the return value of the invoked method. /// The calling convention is not supported. /// The number of elements in does not match the number of parameters in the dynamic method. /// The type of one or more elements of does not match the type of the corresponding parameter of the dynamic method. /// The dynamic method is associated with a module, is not anonymously hosted, and was constructed with set to , but the dynamic method accesses members that are not or ( in Visual Basic). /// -or- /// The dynamic method is anonymously hosted and was constructed with set to , but it accesses members that are not . /// -or- /// The dynamic method contains unverifiable code. See the "Verification" section in Remarks for . // Token: 0x06003440 RID: 13376 RVA: 0x00002082 File Offset: 0x00000282 [Token(Token = "0x6003440")] [Address(RVA = "0x30B7260", Offset = "0x30B6260", VA = "0x1830B7260", Slot = "23")] public override object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture) { return null; } /// Indicates whether the specified custom attribute type is defined. /// A representing the type of custom attribute to search for. /// /// to search the method's inheritance chain to find the custom attributes; to check only the current method. /// /// if the specified custom attribute type is defined; otherwise, . // Token: 0x06003441 RID: 13377 RVA: 0x0001BE28 File Offset: 0x0001A028 [Token(Token = "0x6003441")] [Address(RVA = "0x30B7290", Offset = "0x30B6290", VA = "0x1830B7290", Slot = "14")] public override bool IsDefined(Type attributeType, bool inherit) { return default(bool); } } }