EnumBuilderとは? わかりやすく解説

EnumBuilder クラス

列挙型を記述し、表現します。

名前空間: System.Reflection.Emit
アセンブリ: mscorlib (mscorlib.dll 内)
構文構文

<ComVisibleAttribute(True)> _
<ClassInterfaceAttribute(ClassInterfaceType.None)> _
Public NotInheritable Class
 EnumBuilder
    Inherits Type
    Implements _EnumBuilder
[ComVisibleAttribute(true)] 
[ClassInterfaceAttribute(ClassInterfaceType.None)] 
public sealed class EnumBuilder : Type, _EnumBuilder
[ComVisibleAttribute(true)] 
[ClassInterfaceAttribute(ClassInterfaceType::None)] 
public ref class EnumBuilder sealed : public
 Type, _EnumBuilder
/** @attribute ComVisibleAttribute(true) */ 
/** @attribute ClassInterfaceAttribute(ClassInterfaceType.None) */ 
public final class EnumBuilder extends Type
 implements _EnumBuilder
ComVisibleAttribute(true) 
ClassInterfaceAttribute(ClassInterfaceType.None) 
public final class EnumBuilder extends
 Type implements _EnumBuilder
使用例使用例

次のコード例は、EnumBuilder を使用して、動的なアセンブリ内に列挙体を作成する方法を示しています。

Imports System
Imports System.Collections
Imports System.Threading
Imports System.Reflection
Imports System.Reflection.Emit

Public Class MyEnumBuilderSample
   Private Shared myAssemblyBuilder As
 AssemblyBuilder
   Private Shared myModuleBuilder As
 ModuleBuilder
   Private Shared myEnumBuilder As
 EnumBuilder
   
   
   Public Shared Sub Main()
      Try
         CreateCallee(Thread.GetDomain(), AssemblyBuilderAccess.Save)
         Dim myTypeArray As Type() = myModuleBuilder.GetTypes()
         Dim myType As Type
         For Each myType In
  myTypeArray
            Console.WriteLine("Enum Builder defined in the module
 builder is: " + myType.Name)
         Next myType
         
         Console.WriteLine("Enum TypeToken is :" +
 myEnumBuilder.TypeToken.ToString())
         Console.WriteLine("Enum UnderLyingField is :"
 + myEnumBuilder.UnderlyingField.ToString())
         Console.WriteLine("Enum UnderLyingSystemType is :"
 + myEnumBuilder.UnderlyingSystemType.ToString())
         Console.WriteLine("Enum GUID is :" + myEnumBuilder.GUID.ToString())
         myAssemblyBuilder.Save("EmittedAssembly.dll")
      Catch ex As NotSupportedException
         Console.WriteLine("The following is the exception is
 raised: " + ex.Message)
      Catch e As Exception
         Console.WriteLine("The following is the exception raised:
 " + e.Message)
      End Try
   End Sub 'Main
   
   
   Private Shared Sub CreateCallee(myAppDomain
 As AppDomain, access As AssemblyBuilderAccess)
      ' Create a name for the assembly.
      Dim myAssemblyName As New
 AssemblyName()
      myAssemblyName.Name = "EmittedAssembly"
      
      ' Create the dynamic assembly.
      myAssemblyBuilder = myAppDomain.DefineDynamicAssembly(myAssemblyName, _
                 AssemblyBuilderAccess.Save)
      ' Create a dynamic module.
      myModuleBuilder = myAssemblyBuilder.DefineDynamicModule("EmittedModule",
 "EmittedModule.mod")
      ' Create a dynamic Enum.
      myEnumBuilder = myModuleBuilder.DefineEnum("MyNamespace.MyEnum",
 _
                 TypeAttributes.Public, GetType(Int32))
      
      Dim myFieldBuilder1 As FieldBuilder =
 myEnumBuilder.DefineLiteral("FieldOne", 1)
      Dim myFieldBuilder2 As FieldBuilder =
 myEnumBuilder.DefineLiteral("FieldTwo", 2)
      
      myEnumBuilder.CreateType()
   End Sub 'CreateCallee
End Class 'MyEnumBuilderSample
using System;
using System.Collections;
using System.Threading;
using System.Reflection;
using System.Reflection.Emit;

public class MyEnumBuilderSample
{
   static AssemblyBuilder myAssemblyBuilder;
   static ModuleBuilder myModuleBuilder;
   static EnumBuilder myEnumBuilder;
   
   public static void Main()
   {
      try
      {
         CreateCallee(Thread.GetDomain(), AssemblyBuilderAccess.Save);
         Type[] myTypeArray = myModuleBuilder.GetTypes();
         foreach(Type myType in myTypeArray)
         {
            Console.WriteLine("Enum Builder defined in the
 module builder is: " 
               + myType.Name);
         }

         Console.WriteLine("Enum TypeToken is :" +  
                                       myEnumBuilder.TypeToken.ToString());
         Console.WriteLine("Enum UnderLyingField is :" +  
                                    myEnumBuilder.UnderlyingField.ToString());
         Console.WriteLine("Enum UnderLyingSystemType is :" +  
                              myEnumBuilder.UnderlyingSystemType.ToString());
         Console.WriteLine("Enum GUID is :" + myEnumBuilder.GUID.ToString());
         myAssemblyBuilder.Save("EmittedAssembly.dll");
      }
      catch(NotSupportedException ex)
      {
         Console.WriteLine("The following is the exception is raised: "
 + ex.Message);
      }
      catch(Exception e)
      {
         Console.WriteLine("The following is the exception raised: " +
 e.Message);
      }
   }

   private static void CreateCallee(AppDomain
 myAppDomain, AssemblyBuilderAccess access)
   {
      // Create a name for the assembly.
      AssemblyName myAssemblyName = new AssemblyName();
      myAssemblyName.Name = "EmittedAssembly";

      // Create the dynamic assembly.
      myAssemblyBuilder = myAppDomain.DefineDynamicAssembly(myAssemblyName, 
                                             AssemblyBuilderAccess.Save);
      // Create a dynamic module.
      myModuleBuilder = myAssemblyBuilder.DefineDynamicModule("EmittedModule",
 
                                                         "EmittedModule.mod");
      // Create a dynamic Enum.
      myEnumBuilder = myModuleBuilder.DefineEnum("MyNamespace.MyEnum",
 
                                 TypeAttributes.Public, typeof(Int32));

      FieldBuilder myFieldBuilder1 = myEnumBuilder.DefineLiteral("FieldOne",
 1);
      FieldBuilder myFieldBuilder2 = myEnumBuilder.DefineLiteral("FieldTwo",
 2);

      myEnumBuilder.CreateType();
   }
}
using namespace System;
using namespace System::Collections;
using namespace System::Threading;
using namespace System::Reflection;
using namespace System::Reflection::Emit;
public ref class MyEnumBuilderSample
{
private:
   static AssemblyBuilder^ myAssemblyBuilder;
   static ModuleBuilder^ myModuleBuilder;
   static EnumBuilder^ myEnumBuilder;

public:
   static void Main()
   {
      try
      {
         CreateCallee( Thread::GetDomain(), AssemblyBuilderAccess::Save );
         array<Type^>^myTypeArray = myModuleBuilder->GetTypes();
         IEnumerator^ myEnum = myTypeArray->GetEnumerator();
         while ( myEnum->MoveNext() )
         {
            Type^ myType = safe_cast<Type^>(myEnum->Current);
            Console::WriteLine( "Enum Builder defined in
 the module builder is: {0}", myType->Name );
         }
         Console::WriteLine( "Enum TypeToken is :{0}", myEnumBuilder->TypeToken
 );
         Console::WriteLine( "Enum UnderLyingField is :{0}", myEnumBuilder->UnderlyingField
 );
         Console::WriteLine( "Enum UnderLyingSystemType is :{0}", myEnumBuilder->UnderlyingSystemType
 );
         Console::WriteLine( "Enum GUID is :{0}", myEnumBuilder->GUID
 );
         myAssemblyBuilder->Save( "EmittedAssembly.dll" );
      }
      catch ( NotSupportedException^ ex ) 
      {
         Console::WriteLine( "The following is the exception is raised: {0}",
 ex->Message );
      }
      catch ( Exception^ e ) 
      {
         Console::WriteLine( "The following is the exception raised: {0}",
 e->Message );
      }
   }


private:
   static void CreateCallee( AppDomain^ myAppDomain,
 AssemblyBuilderAccess /*access*/ )
   {
      // Create a name for the assembly.
      AssemblyName^ myAssemblyName = gcnew AssemblyName;
      myAssemblyName->Name = "EmittedAssembly";

      // Create the dynamic assembly.
      myAssemblyBuilder = myAppDomain->DefineDynamicAssembly( myAssemblyName,
 AssemblyBuilderAccess::Save );

      // Create a dynamic module.
      myModuleBuilder = myAssemblyBuilder->DefineDynamicModule( "EmittedModule",
 "EmittedModule.mod" );

      // Create a dynamic Enum.
      myEnumBuilder = myModuleBuilder->DefineEnum( "MyNamespace.MyEnum",
 TypeAttributes::Public, Int32::typeid );
      FieldBuilder^ myFieldBuilder1 = myEnumBuilder->DefineLiteral( "FieldOne",
 1 );
      FieldBuilder^ myFieldBuilder2 = myEnumBuilder->DefineLiteral( "FieldTwo",
 2 );
      myEnumBuilder->CreateType();
   }
};

int main()
{
   MyEnumBuilderSample::Main();
}
import System.*;
import System.Collections.*;
import System.Threading.*;
import System.Reflection.*;
import System.Reflection.Emit.*;

public class MyEnumBuilderSample
{
    private static AssemblyBuilder myAssemblyBuilder;
    private static ModuleBuilder myModuleBuilder;
    private static EnumBuilder myEnumBuilder;

    public static void main(String[]
 args)
    {
        try {
            CreateCallee(System.Threading.Thread.GetDomain(), 
                AssemblyBuilderAccess.Save);

            Type myTypeArray[] = myModuleBuilder.GetTypes();
            Type myType = null;
            for (int iCtr = 0; iCtr < myTypeArray.length;iCtr++
 ) {
                myType = myTypeArray[iCtr];
                Console.WriteLine("Enum Builder defined in
 the module "
                    + "builder is: " + myType.get_Name());
            }
            Console.WriteLine("Enum TypeToken is :" 
                + myEnumBuilder.get_TypeToken().ToString());
            Console.WriteLine("Enum UnderLyingField is :" 
                + myEnumBuilder.get_UnderlyingField().ToString());
            Console.WriteLine("Enum UnderLyingSystemType is :"
                + myEnumBuilder.get_UnderlyingSystemType().ToString());
            Console.WriteLine("Enum GUID is :" 
                + myEnumBuilder.get_GUID().ToString());
            myAssemblyBuilder.Save("EmittedAssembly.dll");
        }
        catch (NotSupportedException ex) {
            Console.WriteLine("The following is the exception is raised: "
 
                + ex.get_Message());
        }
        catch (System.Exception e) {
            Console.WriteLine("The following is the exception raised: "
 
                + e.get_Message());
        }
    } //main

    private static void
 CreateCallee(AppDomain myAppDomain, 
        AssemblyBuilderAccess access)
    {
        // Create a name for the assembly.
        AssemblyName myAssemblyName = new AssemblyName();
        myAssemblyName.set_Name("EmittedAssembly");

        // Create the dynamic assembly.
        myAssemblyBuilder = myAppDomain.DefineDynamicAssembly(myAssemblyName, 
            AssemblyBuilderAccess.Save);

        // Create a dynamic module.
        myModuleBuilder = myAssemblyBuilder.
            DefineDynamicModule("EmittedModule", "EmittedModule.mod");

        // Create a dynamic Enum.
        myEnumBuilder = myModuleBuilder.DefineEnum("MyNamespace.MyEnum",
 
            TypeAttributes.Public, Int32.class.ToType());

        FieldBuilder myFieldBuilder1 = myEnumBuilder.DefineLiteral("FieldOne"
,
            (Int32)1);
        FieldBuilder myFieldBuilder2 = myEnumBuilder.DefineLiteral("FieldTwo"
,
            (Int32)2);
        myEnumBuilder.CreateType();
    } //CreateCallee
} //MyEnumBuilderSample
継承階層継承階層
System.Object
   System.Reflection.MemberInfo
     System.Type
      System.Reflection.Emit.EnumBuilder
スレッド セーフスレッド セーフ
この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバの場合は、スレッド セーフであるとは限りません。
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
EnumBuilder メンバ
System.Reflection.Emit 名前空間

EnumBuilder プロパティ


パブリック プロパティパブリック プロパティ

  名前 説明
パブリック プロパティ Assembly オーバーライドされます。 この列挙型 (Enum) の定義が含まれた動的アセンブリを取得します。
パブリック プロパティ AssemblyQualifiedName オーバーライドされます。 親アセンブリの表示名で限定されたこの列挙型 (Enum) の完全パスを返します。
パブリック プロパティ Attributes  Type に関連付けられている属性を取得します。 ( Type から継承されます。)
パブリック プロパティ BaseType オーバーライドされます。 この型の親の Type を返します。これは常に Enum です。
パブリック プロパティ ContainsGenericParameters  現在の Type オブジェクトが特定の型で置き換えられていない型パラメータを持っているどうかを示す値を取得します。 ( Type から継承されます。)
パブリック プロパティ DeclaringMethod  現在の Type がジェネリック メソッドの型パラメータを表している場合に、宣言するメソッドを表す MethodBase を取得します。 ( Type から継承されます。)
パブリック プロパティ DeclaringType オーバーライドされます。 この EnumBuilder を宣言した型を返します。
パブリック プロパティ DefaultBinder  既定のバインダへの参照を取得します。このバインダは、InvokeMember によって呼び出される適切なメンバを選択するための内部規則を実装します。 ( Type から継承されます。)
パブリック プロパティ FullName オーバーライドされます。 この列挙型 (Enum) の完全パスを返します。
パブリック プロパティ GenericParameterAttributes  現在のジェネリック型パラメータの共変性および特殊な制約を説明する GenericParameterAttributes フラグの組み合わせを取得します。 ( Type から継承されます。)
パブリック プロパティ GenericParameterPosition  Type オブジェクトがジェネリック型またはジェネリック メソッドの型パラメータを表す場合に、パラメータを宣言したジェネリック型またはジェネリック メソッドの型パラメータ リスト内の型パラメータの位置を取得します。 ( Type から継承されます。)
パブリック プロパティ GUID オーバーライドされます。 この列挙型 (Enum) のグローバル一意識別子 (GUID: Globally Unique Identifier) を返します。
パブリック プロパティ HasElementType  現在の Type が別の型を包含または参照しているかどうか、つまり現在の Type が配列、ポインタ、または参照渡しかどうかを示す値を取得します。 ( Type から継承されます。)
パブリック プロパティ IsAbstract  Type が抽象型で、オーバーライドする必要があるかどうかを示す値を取得します。 ( Type から継承されます。)
パブリック プロパティ IsAnsiClass  Type に、文字列書式属性として AnsiClass が選択されているかどうかを示す値を取得します。 ( Type から継承されます。)
パブリック プロパティ IsArray  Type が配列かどうかを示す値を取得します。 ( Type から継承されます。)
パブリック プロパティ IsAutoClass  Type に、文字列書式属性として AutoClass が選択されているかどうかを示す値を取得します。 ( Type から継承されます。)
パブリック プロパティ IsAutoLayout  Type に、クラスのレイアウト属性として AutoLayout が選択されているかどうかを示す値を取得します。 ( Type から継承されます。)
パブリック プロパティ IsByRef  Type が参照渡しかどうかを示す値を取得します。 ( Type から継承されます。)
パブリック プロパティ IsClass  Type がクラスであり、値型やインターフェイスでないかどうかを示す値を取得します。 ( Type から継承されます。)
パブリック プロパティ IsCOMObject  Type が COM オブジェクトかどうかを示す値を取得します。 ( Type から継承されます。)
パブリック プロパティ IsContextful  Type をコンテキスト内で管理できるかどうかを示す値を取得します。 ( Type から継承されます。)
パブリック プロパティ IsEnum  現在の Type が列挙体であるどうかを示す値を取得します。 ( Type から継承されます。)
パブリック プロパティ IsExplicitLayout  Type に、クラスのレイアウト属性として ExplicitLayout が選択されているかどうかを示す値を取得します。 ( Type から継承されます。)
パブリック プロパティ IsGenericParameter  現在の Type がジェネリック型またはジェネリック メソッドの定義の型パラメータを表しているかどうかを示す値を取得します。 ( Type から継承されます。)
パブリック プロパティ IsGenericType  現在の型がジェネリック型かどうかを示す値を取得します。 ( Type から継承されます。)
パブリック プロパティ IsGenericTypeDefinition  現在の Type が、他のジェネリック型を構築できるジェネリック型の定義を表しているかどうかを示す値を取得します。 ( Type から継承されます。)
パブリック プロパティ IsImport  Type が ComImportAttribute 属性を持っているかどうかを示す (つまり、COM タイプ ライブラリからインポートされたかどうかを示す) 値を取得します。 ( Type から継承されます。)
パブリック プロパティ IsInterface  Type がインターフェイスであり、クラスや値型でないかどうかを示す値を取得します。 ( Type から継承されます。)
パブリック プロパティ IsLayoutSequential  Type に、クラスのレイアウト属性として SequentialLayout が選択されているかどうかを示す値を取得します。 ( Type から継承されます。)
パブリック プロパティ IsMarshalByRef  Type が参照渡しでマーシャリングされるかどうかを示す値を取得します。 ( Type から継承されます。)
パブリック プロパティ IsNested  現在の Type オブジェクトが、別の型の定義内に入れ子になっている定義で定義された型を表しているかどうかを示す値を取得します。 ( Type から継承されます。)
パブリック プロパティ IsNestedAssembly  Type が入れ子になっていて、それ自体が属するアセンブリ内でだけ参照可能かどうかを示す値を取得します。 ( Type から継承されます。)
パブリック プロパティ IsNestedFamANDAssem  Type が入れ子になっていて、それ自体が属するファミリとアセンブリの両方に属しているクラスだけから参照可能かどうかを示す値を取得します。 ( Type から継承されます。)
パブリック プロパティ IsNestedFamily  Type が入れ子になっていて、それ自体が属するファミリ内でだけ参照可能かどうかを示す値を取得します。 ( Type から継承されます。)
パブリック プロパティ IsNestedFamORAssem  Type が入れ子になっていて、それ自体が属するファミリまたはアセンブリのいずれかに属しているクラスだけから参照可能かどうかを示す値を取得します。 ( Type から継承されます。)
パブリック プロパティ IsNestedPrivate  Type が入れ子になっていて、プライベートとして宣言されているかどうかを示す値を取得します。 ( Type から継承されます。)
パブリック プロパティ IsNestedPublic  クラスが入れ子になっていて、パブリックとして宣言されているかどうかを示す値を取得します。 ( Type から継承されます。)
パブリック プロパティ IsNotPublic  Type がパブリックとして宣言されていないかどうかを示す値を取得します。 ( Type から継承されます。)
パブリック プロパティ IsPointer  Type がポインタかどうかを示す値を取得します。 ( Type から継承されます。)
パブリック プロパティ IsPrimitive  Type がプリミティブ型の 1 つかどうかを示す値を取得します。 ( Type から継承されます。)
パブリック プロパティ IsPublic  Type がパブリックとして宣言されているかどうかを示す値を取得します。 ( Type から継承されます。)
パブリック プロパティ IsSealed  Type が sealed として宣言されているかどうかを示す値を取得します。 ( Type から継承されます。)
パブリック プロパティ IsSerializable  Type をシリアル化できるかどうかを示す値を取得します。 ( Type から継承されます。)
パブリック プロパティ IsSpecialName  Type の名前が特別な処理を必要とするかどうかを示す値を取得します。 ( Type から継承されます。)
パブリック プロパティ IsUnicodeClass  Type に、文字列書式属性として UnicodeClass が選択されているかどうかを示す値を取得します。 ( Type から継承されます。)
パブリック プロパティ IsValueType  Type が値型かどうかを示す値を取得します。 ( Type から継承されます。)
パブリック プロパティ IsVisible  Type にアセンブリの外側のコードからアクセスできるかどうかを示す値を取得します。 ( Type から継承されます。)
パブリック プロパティ MemberType  このメンバが型であるか、または入れ子にされた型であるかを示す MemberTypes 値を取得します。 ( Type から継承されます。)
パブリック プロパティ MetadataToken  メタデータ要素を識別する値を取得します。 ( MemberInfo から継承されます。)
パブリック プロパティ Module オーバーライドされます。 この EnumBuilder の定義が含まれた動的モジュールを取得します。
パブリック プロパティ Name オーバーライドされます。 この列挙型 (Enum) の名前を返します。
パブリック プロパティ Namespace オーバーライドされます。 この列挙型 (Enum) の名前空間を返します。
パブリック プロパティ ReflectedType オーバーライドされます。 この EnumBuilder を取得するために使用した型を返します。
パブリック プロパティ StructLayoutAttribute  現在の型のレイアウトを説明する StructLayoutAttribute を取得します。 ( Type から継承されます。)
パブリック プロパティ TypeHandle オーバーライドされます。 この列挙型 (Enum) の内部ハンドルを取得します。
パブリック プロパティ TypeInitializer  Type のクラス初期化子を取得します。 ( Type から継承されます。)
パブリック プロパティ TypeToken この列挙型 (Enum) の内部メタデータ型トークンを返します。
パブリック プロパティ UnderlyingField この列挙型 (Enum) の基になるフィールドを返します。
パブリック プロパティ UnderlyingSystemType オーバーライドされます。 この列挙型 (Enum) の基になるシステム型を返します。
参照参照

関連項目

EnumBuilder クラス
System.Reflection.Emit 名前空間

EnumBuilder メソッド


パブリック メソッドパブリック メソッド

  名前 説明
パブリック メソッド CreateType この列挙型 (Enum) の Type オブジェクトを作成します。
パブリック メソッド DefineLiteral 列挙型の中に名前付き静的フィールドを定義し、指定した定数値を設定します。
パブリック メソッド Equals  オーバーロードされます。 現在の Type の基になるシステム型が、指定した Object または Type の基になるシステム型と同じかどうかを判断します。 ( Type から継承されます。)
パブリック メソッド FindInterfaces  現在の Type によって実装または継承されているインターフェイスのフィルタ適用済みリストを表す、Type オブジェクトの配列を返します。 ( Type から継承されます。)
パブリック メソッド FindMembers  指定したメンバ型の MemberInfo オブジェクトの配列にフィルタを適用して返します。 ( Type から継承されます。)
パブリック メソッド GetArrayRank  Array の次元数を取得します。 ( Type から継承されます。)
パブリック メソッド GetConstructor  オーバーロードされます。 現在の Type の特定のコンストラクタを取得します。 ( Type から継承されます。)
パブリック メソッド GetConstructors オーバーロードされます。 このメソッドは、不完全な型に対してサポートされていません。
パブリック メソッド GetCustomAttributes オーバーロードされます。 オーバーライドされます。 このコンストラクタに対して定義されているカスタム属性を返します。
パブリック メソッド GetDefaultMembers  DefaultMemberAttribute が設定されている現在の Type に定義されているメンバを検索します。 ( Type から継承されます。)
パブリック メソッド GetElementType オーバーライドされます。 このメソッドを呼び出すと、必ず NotSupportedException がスローされます。
パブリック メソッド GetEvent オーバーロードされます。 このメソッドは、不完全な型に対してサポートされていません。
パブリック メソッド GetEvents オーバーロードされます。 オーバーライドされます。 このメソッドは、不完全な型に対してサポートされていません。
パブリック メソッド GetField オーバーロードされます。 このメソッドは、不完全な型に対してサポートされていません。
パブリック メソッド GetFields オーバーロードされます。 このメソッドは、不完全な型に対してサポートされていません。
パブリック メソッド GetGenericArguments  ジェネリック型の型引数またはジェネリック型定義の型パラメータを表す Type オブジェクトの配列を返します。 ( Type から継承されます。)
パブリック メソッド GetGenericParameterConstraints  現在のジェネリック型パラメータの制約を表す Type オブジェクトを返します。 ( Type から継承されます。)
パブリック メソッド GetGenericTypeDefinition  現在のジェネリック型を構築する元になるジェネリック型定義を表す Type オブジェクトを返します。 ( Type から継承されます。)
パブリック メソッド GetHashCode  このインスタンスのハッシュ コードを返します。 ( Type から継承されます。)
パブリック メソッド GetInterface オーバーロードされます。 このメソッドは、不完全な型に対してサポートされていません。
パブリック メソッド GetInterfaceMap オーバーライドされます。 要求したインターフェイスに対するインターフェイスの割り当てを返します。
パブリック メソッド GetInterfaces オーバーライドされます。 このクラスと基本クラスで実装されているすべてのインターフェイスの配列を返します。
パブリック メソッド GetMember オーバーロードされます。 このメソッドは、不完全な型に対してサポートされていません。
パブリック メソッド GetMembers オーバーロードされます。 このメソッドは、不完全な型に対してサポートされていません。
パブリック メソッド GetMethod  オーバーロードされます。 現在の Type の特定のメソッドを取得します。 ( Type から継承されます。)
パブリック メソッド GetMethods オーバーロードされます。 このメソッドは、不完全な型に対してサポートされていません。
パブリック メソッド GetNestedType オーバーロードされます。 このメソッドは、不完全な型に対してサポートされていません。
パブリック メソッド GetNestedTypes オーバーロードされます。 このメソッドは、不完全な型に対してサポートされていません。
パブリック メソッド GetProperties オーバーロードされます。 このメソッドは、不完全な型に対してサポートされていません。
パブリック メソッド GetProperty  オーバーロードされます。 現在の Type の特定のプロパティを取得します。 ( Type から継承されます。)
パブリック メソッド GetType  オーバーロードされます。 指定された型を表す Type オブジェクトを取得します。 ( Type から継承されます。)
パブリック メソッド GetTypeArray  指定した配列内のオブジェクトの型を取得します。 ( Type から継承されます。)
パブリック メソッド GetTypeCode  指定した Type の基になる型コードを取得します。 ( Type から継承されます。)
パブリック メソッド GetTypeFromCLSID  オーバーロードされます。 指定したクラス ID (CLSID) に関連付けられている型を取得します。 ( Type から継承されます。)
パブリック メソッド GetTypeFromHandle  指定した型ハンドルによって参照される型を取得します。 ( Type から継承されます。)
パブリック メソッド GetTypeFromProgID  オーバーロードされます。 指定したプログラム ID (ProgID) に関連付けられている型を取得します。 ( Type から継承されます。)
パブリック メソッド GetTypeHandle  指定したオブジェクトの Type のハンドルを取得します。 ( Type から継承されます。)
パブリック メソッド InvokeMember オーバーロードされます。 このメソッドは、不完全な型に対してサポートされていません。
パブリック メソッド IsAssignableFrom  指定した Type のインスタンスを現在の Type のインスタンスに代入できるかどうかを判断します。 ( Type から継承されます。)
パブリック メソッド IsDefined オーバーライドされます。 指定されたカスタム属性の型が定義されているかどうかを確認します。
パブリック メソッド IsInstanceOfType  指定したオブジェクトが現在の Type のインスタンスかどうかを判断します。 ( Type から継承されます。)
パブリック メソッド IsSubclassOf  現在の Type によって表されるクラスが、指定された Type によって表されるクラスから派生しているかどうかを判断します。 ( Type から継承されます。)
パブリック メソッド MakeArrayType オーバーロードされます。 オーバーライドされます。  
パブリック メソッド MakeByRefType オーバーライドされます。  
パブリック メソッド MakeGenericType  型の配列の要素を現在のジェネリック型定義の型パラメータで置き換え、結果の構築型を表す Type オブジェクトを返します。 ( Type から継承されます。)
パブリック メソッド MakePointerType オーバーライドされます。  
パブリック メソッド ReferenceEquals  指定した複数の Object インスタンスが同一かどうかを判断します。 ( Object から継承されます。)
パブリック メソッド ReflectionOnlyGetType  大文字と小文字を区別する検索を実行し、型が見つからない場合に例外をスローするかどうかを指定して、指定した名前の Type を取得します。型は実行ではなくリフレクションのためだけに読み込まれます。 ( Type から継承されます。)
パブリック メソッド SetCustomAttribute オーバーロードされます。 このコンストラクタにカスタム属性を設定します。
パブリック メソッド ToString  現在の Type の名前を表す String を返します。 ( Type から継承されます。)
明示的インターフェイスの実装明示的インターフェイスの実装
  名前 説明
インターフェイスの明示的な実装 System.Runtime.InteropServices._EnumBuilder.GetIDsOfNames 名前のセットを対応するディスパッチ識別子のセットに割り当てます。
インターフェイスの明示的な実装 System.Runtime.InteropServices._EnumBuilder.GetTypeInfo オブジェクトの型情報を取得します。この型情報は、インターフェイスの型情報を取得するために使用できます。
インターフェイスの明示的な実装 System.Runtime.InteropServices._EnumBuilder.GetTypeInfoCount オブジェクトが提供する型情報インターフェイスの数を取得します (0 または 1)。
インターフェイスの明示的な実装 System.Runtime.InteropServices._EnumBuilder.Invoke オブジェクトによって公開されているプロパティおよびメソッドにアクセスできるようにします。
参照参照

関連項目

EnumBuilder クラス
System.Reflection.Emit 名前空間

EnumBuilder メンバ

列挙型を記述し、表現します。

EnumBuilder データ型で公開されるメンバを以下の表に示します。


パブリック プロパティパブリック プロパティ
  名前 説明
パブリック プロパティ Assembly オーバーライドされます。 この列挙型 (Enum) の定義が含まれた動的アセンブリを取得します。
パブリック プロパティ AssemblyQualifiedName オーバーライドされます。 親アセンブリの表示名で限定されたこの列挙型 (Enum) の完全パスを返します。
パブリック プロパティ Attributes  Type に関連付けられている属性を取得します。(Type から継承されます。)
パブリック プロパティ BaseType オーバーライドされます。 この型の親の Type を返します。これは常に Enum です。
パブリック プロパティ ContainsGenericParameters  現在の Type オブジェクトが特定の型で置き換えられていない型パラメータを持っているどうかを示す値を取得します。(Type から継承されます。)
パブリック プロパティ DeclaringMethod  現在の Type がジェネリック メソッドの型パラメータを表している場合に、宣言するメソッドを表す MethodBase を取得します。(Type から継承されます。)
パブリック プロパティ DeclaringType オーバーライドされます。 この EnumBuilder を宣言した型を返します。
パブリック プロパティ DefaultBinder  既定のバインダへの参照を取得します。このバインダは、InvokeMember によって呼び出される適切なメンバを選択するための内部規則を実装します。(Type から継承されます。)
パブリック プロパティ FullName オーバーライドされます。 この列挙型 (Enum) の完全パスを返します。
パブリック プロパティ GenericParameterAttributes  現在のジェネリック型パラメータの共変性および特殊な制約を説明する GenericParameterAttributes フラグの組み合わせを取得します。 (Type から継承されます。)
パブリック プロパティ GenericParameterPosition  Type オブジェクトがジェネリック型またはジェネリック メソッドの型パラメータを表す場合に、パラメータを宣言したジェネリック型またはジェネリック メソッドの型パラメータ リスト内の型パラメータの位置を取得します。(Type から継承されます。)
パブリック プロパティ GUID オーバーライドされます。 この列挙型 (Enum) のグローバル一意識別子 (GUID: Globally Unique Identifier) を返します。
パブリック プロパティ HasElementType  現在の Type が別の型を包含または参照しているかどうか、つまり現在の Type が配列、ポインタ、または参照渡しかどうかを示す値を取得します。(Type から継承されます。)
パブリック プロパティ IsAbstract  Type が抽象型で、オーバーライドする必要があるかどうかを示す値を取得します。(Type から継承されます。)
パブリック プロパティ IsAnsiClass  Type に、文字列書式属性として AnsiClass が選択されているかどうかを示す値を取得します。(Type から継承されます。)
パブリック プロパティ IsArray  Type が配列かどうかを示す値を取得します。(Type から継承されます。)
パブリック プロパティ IsAutoClass  Type に、文字列書式属性として AutoClass が選択されているかどうかを示す値を取得します。(Type から継承されます。)
パブリック プロパティ IsAutoLayout  Type に、クラスのレイアウト属性として AutoLayout が選択されているかどうかを示す値を取得します。(Type から継承されます。)
パブリック プロパティ IsByRef  Type が参照渡しかどうかを示す値を取得します。(Type から継承されます。)
パブリック プロパティ IsClass  Type がクラスであり、値型やインターフェイスでないかどうかを示す値を取得します。(Type から継承されます。)
パブリック プロパティ IsCOMObject  Type が COM オブジェクトかどうかを示す値を取得します。(Type から継承されます。)
パブリック プロパティ IsContextful  Type をコンテキスト内で管理できるかどうかを示す値を取得します。(Type から継承されます。)
パブリック プロパティ IsEnum  現在の Type が列挙体であるどうかを示す値を取得します。(Type から継承されます。)
パブリック プロパティ IsExplicitLayout  Type に、クラスのレイアウト属性として ExplicitLayout が選択されているかどうかを示す値を取得します。(Type から継承されます。)
パブリック プロパティ IsGenericParameter  現在の Type がジェネリック型またはジェネリック メソッドの定義の型パラメータを表しているかどうかを示す値を取得します。(Type から継承されます。)
パブリック プロパティ IsGenericType  現在の型がジェネリック型かどうかを示す値を取得します。(Type から継承されます。)
パブリック プロパティ IsGenericTypeDefinition  現在の Type が、他のジェネリック型を構築できるジェネリック型の定義を表しているかどうかを示す値を取得します。(Type から継承されます。)
パブリック プロパティ IsImport  Type が ComImportAttribute 属性を持っているかどうかを示す (つまり、COM タイプ ライブラリからインポートされたかどうかを示す) 値を取得します。(Type から継承されます。)
パブリック プロパティ IsInterface  Type がインターフェイスであり、クラスや値型でないかどうかを示す値を取得します。(Type から継承されます。)
パブリック プロパティ IsLayoutSequential  Type に、クラスのレイアウト属性として SequentialLayout が選択されているかどうかを示す値を取得します。(Type から継承されます。)
パブリック プロパティ IsMarshalByRef  Type が参照渡しでマーシャリングされるかどうかを示す値を取得します。(Type から継承されます。)
パブリック プロパティ IsNested  現在の Type オブジェクトが、別の型の定義内に入れ子になっている定義で定義された型を表しているかどうかを示す値を取得します。(Type から継承されます。)
パブリック プロパティ IsNestedAssembly  Type が入れ子になっていて、それ自体が属するアセンブリ内でだけ参照可能かどうかを示す値を取得します。(Type から継承されます。)
パブリック プロパティ IsNestedFamANDAssem  Type が入れ子になっていて、それ自体が属するファミリとアセンブリの両方に属しているクラスだけから参照可能かどうかを示す値を取得します。(Type から継承されます。)
パブリック プロパティ IsNestedFamily  Type が入れ子になっていて、それ自体が属するファミリ内でだけ参照可能かどうかを示す値を取得します。(Type から継承されます。)
パブリック プロパティ IsNestedFamORAssem  Type が入れ子になっていて、それ自体が属するファミリまたはアセンブリのいずれかに属しているクラスだけから参照可能かどうかを示す値を取得します。(Type から継承されます。)
パブリック プロパティ IsNestedPrivate  Type が入れ子になっていて、プライベートとして宣言されているかどうかを示す値を取得します。(Type から継承されます。)
パブリック プロパティ IsNestedPublic  クラスが入れ子になっていて、パブリックとして宣言されているかどうかを示す値を取得します。(Type から継承されます。)
パブリック プロパティ IsNotPublic  Type がパブリックとして宣言されていないかどうかを示す値を取得します。(Type から継承されます。)
パブリック プロパティ IsPointer  Type がポインタかどうかを示す値を取得します。(Type から継承されます。)
パブリック プロパティ IsPrimitive  Type がプリミティブ型の 1 つかどうかを示す値を取得します。(Type から継承されます。)
パブリック プロパティ IsPublic  Type がパブリックとして宣言されているかどうかを示す値を取得します。(Type から継承されます。)
パブリック プロパティ IsSealed  Type が sealed として宣言されているかどうかを示す値を取得します。(Type から継承されます。)
パブリック プロパティ IsSerializable  Type をシリアル化できるかどうかを示す値を取得します。(Type から継承されます。)
パブリック プロパティ IsSpecialName  Type の名前が特別な処理を必要とするかどうかを示す値を取得します。(Type から継承されます。)
パブリック プロパティ IsUnicodeClass  Type に、文字列書式属性として UnicodeClass が選択されているかどうかを示す値を取得します。(Type から継承されます。)
パブリック プロパティ IsValueType  Type が値型かどうかを示す値を取得します。(Type から継承されます。)
パブリック プロパティ IsVisible  Type にアセンブリの外側のコードからアクセスできるかどうかを示す値を取得します。(Type から継承されます。)
パブリック プロパティ MemberType  このメンバが型であるか、または入れ子にされた型であるかを示す MemberTypes 値を取得します。(Type から継承されます。)
パブリック プロパティ MetadataToken  メタデータ要素を識別する値を取得します。(MemberInfo から継承されます。)
パブリック プロパティ Module オーバーライドされます。 この EnumBuilder の定義が含まれた動的モジュールを取得します。
パブリック プロパティ Name オーバーライドされます。 この列挙型 (Enum) の名前を返します。
パブリック プロパティ Namespace オーバーライドされます。 この列挙型 (Enum) の名前空間を返します。
パブリック プロパティ ReflectedType オーバーライドされます。 この EnumBuilder を取得するために使用した型を返します。
パブリック プロパティ StructLayoutAttribute  現在の型のレイアウトを説明する StructLayoutAttribute を取得します。(Type から継承されます。)
パブリック プロパティ TypeHandle オーバーライドされます。 この列挙型 (Enum) の内部ハンドルを取得します。
パブリック プロパティ TypeInitializer  Type のクラス初期化子を取得します。(Type から継承されます。)
パブリック プロパティ TypeToken この列挙型 (Enum) の内部メタデータ型トークンを返します。
パブリック プロパティ UnderlyingField この列挙型 (Enum) の基になるフィールドを返します。
パブリック プロパティ UnderlyingSystemType オーバーライドされます。 この列挙型 (Enum) の基になるシステム型を返します。
パブリック メソッドパブリック メソッド
  名前 説明
パブリック メソッド CreateType この列挙型 (Enum) の Type オブジェクトを作成します。
パブリック メソッド DefineLiteral 列挙型の中に名前付き静的フィールドを定義し、指定した定数値を設定します。
パブリック メソッド Equals  オーバーロードされます。 現在の Type の基になるシステム型が、指定した Object または Type の基になるシステム型と同じかどうかを判断します。 (Type から継承されます。)
パブリック メソッド FindInterfaces  現在の Type によって実装または継承されているインターフェイスのフィルタ適用済みリストを表す、Type オブジェクトの配列を返します。 (Type から継承されます。)
パブリック メソッド FindMembers  指定したメンバ型の MemberInfo オブジェクトの配列にフィルタを適用して返します。 (Type から継承されます。)
パブリック メソッド GetArrayRank  Array の次元数を取得します。 (Type から継承されます。)
パブリック メソッド GetConstructor  オーバーロードされます。 現在の Type の特定のコンストラクタを取得します。 (Type から継承されます。)
パブリック メソッド GetConstructors オーバーロードされます。 このメソッドは、不完全な型に対してサポートされていません。
パブリック メソッド GetCustomAttributes オーバーロードされます。 オーバーライドされます。 このコンストラクタに対して定義されているカスタム属性を返します。
パブリック メソッド GetDefaultMembers  DefaultMemberAttribute が設定されている現在の Type に定義されているメンバを検索します。 (Type から継承されます。)
パブリック メソッド GetElementType オーバーライドされます。 このメソッドを呼び出すと、必ず NotSupportedException がスローされます。
パブリック メソッド GetEvent オーバーロードされます。 このメソッドは、不完全な型に対してサポートされていません。
パブリック メソッド GetEvents オーバーロードされます。 オーバーライドされます。 このメソッドは、不完全な型に対してサポートされていません。
パブリック メソッド GetField オーバーロードされます。 このメソッドは、不完全な型に対してサポートされていません。
パブリック メソッド GetFields オーバーロードされます。 このメソッドは、不完全な型に対してサポートされていません。
パブリック メソッド GetGenericArguments  ジェネリック型の型引数またはジェネリック型定義の型パラメータを表す Type オブジェクトの配列を返します。 (Type から継承されます。)
パブリック メソッド GetGenericParameterConstraints  現在のジェネリック型パラメータの制約を表す Type オブジェクトを返します。 (Type から継承されます。)
パブリック メソッド GetGenericTypeDefinition  現在のジェネリック型を構築する元になるジェネリック型定義を表す Type オブジェクトを返します。 (Type から継承されます。)
パブリック メソッド GetHashCode  このインスタンスのハッシュ コードを返します。 (Type から継承されます。)
パブリック メソッド GetInterface オーバーロードされます。 このメソッドは、不完全な型に対してサポートされていません。
パブリック メソッド GetInterfaceMap オーバーライドされます。 要求したインターフェイスに対するインターフェイスの割り当てを返します。
パブリック メソッド GetInterfaces オーバーライドされます。 このクラスと基本クラスで実装されているすべてのインターフェイスの配列を返します。
パブリック メソッド GetMember オーバーロードされます。 このメソッドは、不完全な型に対してサポートされていません。
パブリック メソッド GetMembers オーバーロードされます。 このメソッドは、不完全な型に対してサポートされていません。
パブリック メソッド GetMethod  オーバーロードされます。 現在の Type の特定のメソッドを取得します。 (Type から継承されます。)
パブリック メソッド GetMethods オーバーロードされます。 このメソッドは、不完全な型に対してサポートされていません。
パブリック メソッド GetNestedType オーバーロードされます。 このメソッドは、不完全な型に対してサポートされていません。
パブリック メソッド GetNestedTypes オーバーロードされます。 このメソッドは、不完全な型に対してサポートされていません。
パブリック メソッド GetProperties オーバーロードされます。 このメソッドは、不完全な型に対してサポートされていません。
パブリック メソッド GetProperty  オーバーロードされます。 現在の Type の特定のプロパティを取得します。 (Type から継承されます。)
パブリック メソッド GetType  オーバーロードされます。 指定された型を表す Type オブジェクトを取得します。 (Type から継承されます。)
パブリック メソッド GetTypeArray  指定した配列内のオブジェクトの型を取得します。 (Type から継承されます。)
パブリック メソッド GetTypeCode  指定した Type の基になる型コードを取得します。 (Type から継承されます。)
パブリック メソッド GetTypeFromCLSID  オーバーロードされます。 指定したクラス ID (CLSID) に関連付けられている型を取得します。 (Type から継承されます。)
パブリック メソッド GetTypeFromHandle  指定した型ハンドルによって参照される型を取得します。 (Type から継承されます。)
パブリック メソッド GetTypeFromProgID  オーバーロードされます。 指定したプログラム ID (ProgID) に関連付けられている型を取得します。 (Type から継承されます。)
パブリック メソッド GetTypeHandle  指定したオブジェクトの Type のハンドルを取得します。 (Type から継承されます。)
パブリック メソッド InvokeMember オーバーロードされます。 このメソッドは、不完全な型に対してサポートされていません。
パブリック メソッド IsAssignableFrom  指定した Type のインスタンスを現在の Type のインスタンスに代入できるかどうかを判断します。 (Type から継承されます。)
パブリック メソッド IsDefined オーバーライドされます。 指定されたカスタム属性の型が定義されているかどうかを確認します。
パブリック メソッド IsInstanceOfType  指定したオブジェクトが現在の Type のインスタンスかどうかを判断します。 (Type から継承されます。)
パブリック メソッド IsSubclassOf  現在の Type によって表されるクラスが、指定された Type によって表されるクラスから派生しているかどうかを判断します。 (Type から継承されます。)
パブリック メソッド MakeArrayType オーバーロードされます。 オーバーライドされます。  
パブリック メソッド MakeByRefType オーバーライドされます。  
パブリック メソッド MakeGenericType  型の配列の要素を現在のジェネリック型定義の型パラメータで置き換え、結果の構築型を表す Type オブジェクトを返します。 (Type から継承されます。)
パブリック メソッド MakePointerType オーバーライドされます。  
パブリック メソッド ReferenceEquals  指定した複数の Object インスタンスが同一かどうかを判断します。 (Object から継承されます。)
パブリック メソッド ReflectionOnlyGetType  大文字と小文字を区別する検索を実行し、型が見つからない場合に例外をスローするかどうかを指定して、指定した名前の Type を取得します。型は実行ではなくリフレクションのためだけに読み込まれます。 (Type から継承されます。)
パブリック メソッド SetCustomAttribute オーバーロードされます。 このコンストラクタにカスタム属性を設定します。
パブリック メソッド ToString  現在の Type の名前を表す String を返します。 (Type から継承されます。)
明示的インターフェイスの実装明示的インターフェイスの実装
  名前 説明
インターフェイスの明示的な実装 System.Runtime.InteropServices._EnumBuilder.GetIDsOfNames 名前のセットを対応するディスパッチ識別子のセットに割り当てます。
インターフェイスの明示的な実装 System.Runtime.InteropServices._EnumBuilder.GetTypeInfo オブジェクトの型情報を取得します。この型情報は、インターフェイスの型情報を取得するために使用できます。
インターフェイスの明示的な実装 System.Runtime.InteropServices._EnumBuilder.GetTypeInfoCount オブジェクトが提供する型情報インターフェイスの数を取得します (0 または 1)。
インターフェイスの明示的な実装 System.Runtime.InteropServices._EnumBuilder.Invoke オブジェクトによって公開されているプロパティおよびメソッドにアクセスできるようにします。
参照参照

関連項目

EnumBuilder クラス
System.Reflection.Emit 名前空間

_EnumBuilder インターフェイス

メモ : このインターフェイスは、.NET Framework version 2.0 で新しく追加されたものです。

System.Reflection.Emit.EnumBuilder クラスをアンマネージ コードに公開します。

 

名前空間: System.Runtime.InteropServices
アセンブリ: mscorlib (mscorlib.dll 内)
構文構文

<ComVisibleAttribute(True)> _
<GuidAttribute("C7BD73DE-9F85-3290-88EE-090B8BDFE2DF")>
 _
<InterfaceTypeAttribute(ComInterfaceType.InterfaceIsIUnknown)> _
<CLSCompliantAttribute(False)> _
Public Interface _EnumBuilder
[ComVisibleAttribute(true)] 
[GuidAttribute("C7BD73DE-9F85-3290-88EE-090B8BDFE2DF")] 
[InterfaceTypeAttribute(ComInterfaceType.InterfaceIsIUnknown)] 
[CLSCompliantAttribute(false)] 
public interface _EnumBuilder
[ComVisibleAttribute(true)] 
[GuidAttribute(L"C7BD73DE-9F85-3290-88EE-090B8BDFE2DF")] 
[InterfaceTypeAttribute(ComInterfaceType::InterfaceIsIUnknown)] 
[CLSCompliantAttribute(false)] 
public interface class _EnumBuilder
/** @attribute ComVisibleAttribute(true) */ 
/** @attribute GuidAttribute("C7BD73DE-9F85-3290-88EE-090B8BDFE2DF") */
 
/** @attribute InterfaceTypeAttribute(ComInterfaceType.InterfaceIsIUnknown) */ 
/** @attribute CLSCompliantAttribute(false) */ 
public interface _EnumBuilder
ComVisibleAttribute(true) 
GuidAttribute("C7BD73DE-9F85-3290-88EE-090B8BDFE2DF") 
InterfaceTypeAttribute(ComInterfaceType.InterfaceIsIUnknown) 
CLSCompliantAttribute(false) 
public interface _EnumBuilder
解説解説
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
_EnumBuilder メンバ
System.Runtime.InteropServices 名前空間

_EnumBuilder メソッド


_EnumBuilder メンバ




英和和英テキスト翻訳

英語⇒日本語日本語⇒英語

辞書ショートカット

すべての辞書の索引

「EnumBuilder」の関連用語

EnumBuilderのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



EnumBuilderのページの著作権

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2026 Microsoft.All rights reserved.

©2026 GRAS Group, Inc.RSS