ConstructorBuilder.GetMethodImplementationFlags メソッドとは何? わかりやすく解説 Weblio辞書 (original) (raw)

GetMethodImplementationFlags使用方法については、次のコード例参照してください

Dim myMethodBuilder As MethodBuilder = Nothing Dim myCurrentDomain As AppDomain = AppDomain.CurrentDomain ' Create assembly in current CurrentDomain. Dim myAssemblyName As New AssemblyName() myAssemblyName.Name = "TempAssembly" ' Create a dynamic assembly. myAssemblyBuilder = _ myCurrentDomain.DefineDynamicAssembly(myAssemblyName, AssemblyBuilderAccess.Run) ' Create a dynamic module in the assembly. myModuleBuilder = myAssemblyBuilder.DefineDynamicModule("TempModule") ' Create a type in the module. Dim myTypeBuilder As TypeBuilder = _ myModuleBuilder.DefineType("TempClass", TypeAttributes.Public) Dim myGreetingField As FieldBuilder = _ myTypeBuilder.DefineField("Greeting", GetType(String), FieldAttributes.Public) Dim myConstructorArgs As Type() = {GetType(String)} ' Define a constructor of the dynamic class. Dim myConstructorBuilder As ConstructorBuilder = _ myTypeBuilder.DefineConstructor(MethodAttributes.Public, CallingConventions.Standard, _ myConstructorArgs) ' Get a reference to the module that contains this constructor. Dim myModule As [Module] = myConstructorBuilder.GetModule() Console.WriteLine("Module Name : " + myModule.Name) ' Get the 'MethodToken' that represents the token for this constructor. Dim myMethodToken As MethodToken = myConstructorBuilder.GetToken() Console.WriteLine("Constructor Token is : " + myMethodToken.Token.ToString()) ' Get the method implementation flags for this constructor. Dim myMethodImplAttributes As MethodImplAttributes = _ myConstructorBuilder.GetMethodImplementationFlags() Console.WriteLine("MethodImplAttributes : " + myMethodImplAttributes.ToString())

MethodBuilder myMethodBuilder = null; AppDomain myCurrentDomain = AppDomain.CurrentDomain; // Create assembly in current CurrentDomain. AssemblyName myAssemblyName = new AssemblyName(); myAssemblyName.Name = "TempAssembly"; // Create a dynamic assembly. myAssemblyBuilder = myCurrentDomain.DefineDynamicAssembly (myAssemblyName, AssemblyBuilderAccess.Run); // Create a dynamic module in the assembly. myModuleBuilder = myAssemblyBuilder.DefineDynamicModule("TempModule"); // Create a type in the module. TypeBuilder myTypeBuilder = myModuleBuilder.DefineType("TempClass",TypeAttributes.Public); FieldBuilder myGreetingField = myTypeBuilder.DefineField("Greeting", typeof(String), FieldAttributes.Public); Type[] myConstructorArgs = { typeof(String) }; // Define a constructor of the dynamic class. ConstructorBuilder myConstructorBuilder = myTypeBuilder.DefineConstructor( MethodAttributes.Public, CallingConventions.Standard, myConstructorArgs); // Get a reference to the module that contains this constructor. Module myModule = myConstructorBuilder.GetModule(); Console.WriteLine("Module Name : " + myModule.Name); // Get the 'MethodToken' that represents the token for this constructor. MethodToken myMethodToken = myConstructorBuilder.GetToken(); Console.WriteLine("Constructor Token is : " + myMethodToken.Token); // Get the method implementation flags for this constructor. MethodImplAttributes myMethodImplAttributes = myConstructorBuilder.GetMethodImplementationFlags(); Console.WriteLine("MethodImplAttributes : " + myMethodImplAttributes);

MethodBuilder^ myMethodBuilder = nullptr; AppDomain^ myCurrentDomain = AppDomain::CurrentDomain; // Create assembly in current CurrentDomain. AssemblyName^ myAssemblyName = gcnew AssemblyName; myAssemblyName->Name = "TempAssembly"; // Create a dynamic assembly. myAssemblyBuilder = myCurrentDomain->DefineDynamicAssembly( myAssemblyName, AssemblyBuilderAccess::Run ); // Create a dynamic module in the assembly. myModuleBuilder = myAssemblyBuilder->DefineDynamicModule( "TempModule" ); // Create a type in the module. TypeBuilder^ myTypeBuilder = myModuleBuilder->DefineType( "TempClass", TypeAttributes::Public ); FieldBuilder^ myGreetingField = myTypeBuilder->DefineField( "Greeting" , String::typeid, FieldAttributes::Public ); array<Type^>^myConstructorArgs = {String::typeid}; // Define a constructor of the dynamic class. ConstructorBuilder^ myConstructorBuilder = myTypeBuilder->DefineConstructor( MethodAttributes::Public, CallingConventions::Standard, myConstructorArgs ); // Get a reference to the module that contains this constructor. Module^ myModule = myConstructorBuilder->GetModule(); Console::WriteLine( "Module Name : {0}", myModule->Name ); // Get the 'MethodToken' that represents the token for this constructor. MethodToken myMethodToken = myConstructorBuilder->GetToken(); Console::WriteLine( "Constructor Token is : {0}", myMethodToken.Token ); // Get the method implementation flags for this constructor. MethodImplAttributes myMethodImplAttributes = myConstructorBuilder->GetMethodImplementationFlags(); Console::WriteLine( "MethodImplAttributes : {0}", myMethodImplAttributes );

MethodBuilder myMethodBuilder = null; AppDomain myCurrentDomain = AppDomain.get_CurrentDomain();

// Create assembly in current CurrentDomain. AssemblyName myAssemblyName = new AssemblyName();

myAssemblyName.set_Name("TempAssembly");

// Create a dynamic assembly. myAssemblyBuilder = myCurrentDomain.DefineDynamicAssembly(myAssemblyName, AssemblyBuilderAccess.Run);

// Create a dynamic module in the assembly. myModuleBuilder = myAssemblyBuilder.DefineDynamicModule("TempModule");

// Create a type in the module. TypeBuilder myTypeBuilder = myModuleBuilder.DefineType("TempClass", TypeAttributes.Public); FieldBuilder myGreetingField = myTypeBuilder.DefineField("Greeting", String.class.ToType() , FieldAttributes.Public); Type myConstructorArgs[] = { String.class.ToType() }; // Define a constructor of the dynamic class. ConstructorBuilder myConstructorBuilder = myTypeBuilder.DefineConstructor(MethodAttributes.Public, CallingConventions.Standard, myConstructorArgs);

// Get a reference to the module that contains this constructor. Module myModule = myConstructorBuilder.GetModule(); Console.WriteLine("Module Name : " + myModule.get_Name());

// Get the 'MethodToken' that represents the token for this constructor. MethodToken myMethodToken = myConstructorBuilder.GetToken(); Console.WriteLine("Constructor Token is : " + myMethodToken.get_Token());

// Get the method implementation flags for this constructor. MethodImplAttributes myMethodImplAttributes = myConstructorBuilder.GetMethodImplementationFlags(); Console.WriteLine("MethodImplAttributes : " + myMethodImplAttributes);