CorElementType 列挙型
共通言語ランタイム Type、型修飾子、またはメタデータ型シグネチャの型に関する情報を指定します。
typedef enum CorElementType {
ELEMENT_TYPE_END = 0x0,
ELEMENT_TYPE_VOID = 0x1,
ELEMENT_TYPE_BOOLEAN = 0x2,
ELEMENT_TYPE_CHAR = 0x3,
ELEMENT_TYPE_I1 = 0x4,
ELEMENT_TYPE_U1 = 0x5,
ELEMENT_TYPE_I2 = 0x6,
ELEMENT_TYPE_U2 = 0x7,
ELEMENT_TYPE_I4 = 0x8,
ELEMENT_TYPE_U4 = 0x9,
ELEMENT_TYPE_I8 = 0xa,
ELEMENT_TYPE_U8 = 0xb,
ELEMENT_TYPE_R4 = 0xc,
ELEMENT_TYPE_R8 = 0xd,
ELEMENT_TYPE_STRING = 0xe,
ELEMENT_TYPE_PTR = 0xf,
ELEMENT_TYPE_BYREF = 0x10,
ELEMENT_TYPE_VALUETYPE = 0x11,
ELEMENT_TYPE_CLASS = 0x12,
ELEMENT_TYPE_VAR = 0x13,
ELEMENT_TYPE_ARRAY = 0x14,
ELEMENT_TYPE_GENERICINST = 0x15,
ELEMENT_TYPE_TYPEDBYREF = 0x16,
ELEMENT_TYPE_I = 0x18,
ELEMENT_TYPE_U = 0x19,
ELEMENT_TYPE_FNPTR = 0x1B,
ELEMENT_TYPE_OBJECT = 0x1C,
ELEMENT_TYPE_SZARRAY = 0x1D,
ELEMENT_TYPE_MVAR = 0x1e,
ELEMENT_TYPE_CMOD_REQD = 0x1F,
ELEMENT_TYPE_CMOD_OPT = 0x20,
ELEMENT_TYPE_INTERNAL = 0x21,
ELEMENT_TYPE_MAX = 0x22,
ELEMENT_TYPE_MODIFIER = 0x40,
ELEMENT_TYPE_SENTINEL = 0x01 | ELEMENT_TYPE_MODIFIER,
ELEMENT_TYPE_PINNED = 0x05 | ELEMENT_TYPE_MODIFIER,
ELEMENT_TYPE_R4_HFA = 0x06 | ELEMENT_TYPE_MODIFIER,
ELEMENT_TYPE_R8_HFA = 0x07 | ELEMENT_TYPE_MODIFIER
} CorElementType;
メンバー
メンバー |
説明 |
---|---|
ELEMENT_TYPE_END |
内部使用。 |
ELEMENT_TYPE_VOID |
void 型。 |
ELEMENT_TYPE_BOOLEAN |
ブール型。 |
ELEMENT_TYPE_CHAR |
文字型です。 |
ELEMENT_TYPE_I1 |
符号付き 1 バイト整数。 |
ELEMENT_TYPE_U1 |
符号なし 1 バイト整数。 |
ELEMENT_TYPE_I2 |
符号付き 2 バイト整数。 |
ELEMENT_TYPE_U2 |
符号なし 2 バイト整数。 |
ELEMENT_TYPE_I4 |
符号付き 4 バイト整数。 |
ELEMENT_TYPE_U4 |
符号なし 4 バイト整数。 |
ELEMENT_TYPE_I8 |
符号付き 8 バイト整数。 |
ELEMENT_TYPE_U8 |
符号なし 8 バイト整数。 |
ELEMENT_TYPE_R4 |
4 バイト浮動小数点。 |
ELEMENT_TYPE_R8 |
8 バイト浮動小数点。 |
ELEMENT_TYPE_STRING |
System.String 型。 |
ELEMENT_TYPE_PTR |
ポインターの型修飾子。 |
ELEMENT_TYPE_BYREF |
参照の型修飾子。 |
ELEMENT_TYPE_VALUETYPE |
値の型修飾子。 |
ELEMENT_TYPE_CLASS |
クラスの型修飾子。 |
ELEMENT_TYPE_VAR |
クラス変数の型修飾子。 |
ELEMENT_TYPE_ARRAY |
多次元配列の型修飾子。 |
ELEMENT_TYPE_GENERICINST |
ジェネリック型の型修飾子。 |
ELEMENT_TYPE_TYPEDBYREF |
型指定された参照。 |
ELEMENT_TYPE_I |
ネイティブ整数のサイズ。 |
ELEMENT_TYPE_U |
符号なしネイティブ整数のサイズ。 |
ELEMENT_TYPE_FNPTR |
関数へのポインター。 |
ELEMENT_TYPE_OBJECT |
System.Object 型。 |
ELEMENT_TYPE_SZARRAY |
1 次元の下限ゼロの配列の型修飾子。 |
ELEMENT_TYPE_MVAR |
メソッド変数の型修飾子。 |
ELEMENT_TYPE_CMOD_REQD |
C 言語の必須修飾子。 |
ELEMENT_TYPE_CMOD_OPT |
C 言語のオプション修飾子。 |
ELEMENT_TYPE_INTERNAL |
内部使用。 |
ELEMENT_TYPE_MAX |
無効な型。 |
ELEMENT_TYPE_MODIFIER |
内部使用。 |
ELEMENT_TYPE_SENTINEL |
可変数のパラメーターの一覧のセンティネルである型修飾子。 |
ELEMENT_TYPE_PINNED |
内部使用。 |
ELEMENT_TYPE_R4_HFA |
内部使用。 |
ELEMENT_TYPE_R8_HFA |
内部使用。 |
解説
型修飾子は、複雑な型を表すための基礎となります。 CorElementType 型修飾子の値は、型シグネチャの中で、直後に続く値に適用されます。 CorElementType 型修飾子の値の後には、CorElementType 単純型の値、メタデータ トークン、または次の表に指定された値を続けることができます。
メモ |
---|
すべての数値 (数値、引数カウント、メタデータ トークン、ランク、カウント、および下限) は、圧縮された整数として格納されます。詳細については、ECMA Web サイトの「Standard ECMA-335 - Common Language Infrastructure (CLI)」を参照してください。 |
型修飾子 |
書式 |
---|---|
ELEMENT_TYPE_PTR |
ELEMENT_TYPE_PTR <CorElementType 値> |
ELEMENT_TYPE_BYREF |
ELEMENT_TYPE_BYREF <CorElementType 値> |
ELEMENT_TYPE_VALUETYPE |
ELEMENT_TYPE_VALUETYPE <mdTypeDef メタデータ トークン> |
ELEMENT_TYPE_CLASS |
ELEMENT_TYPE_CLASS <mdTypeDef メタデータ トークン> |
ELEMENT_TYPE_VAR |
ELEMENT_TYPE_VAR <数値> |
ELEMENT_TYPE_ARRAY |
ELEMENT_TYPE_ARRAY <CorElementType 値> <ランク> <カウント 1> <下限 1> ... <カウント N> <下限 N> |
ELEMENT_TYPE_GENERICINST |
ELEMENT_TYPE_GENERICINST <mdTypeDef メタデータ トークン> <引数カウント> <引数 1> ... <引数 N> |
ELEMENT_TYPE_FNPTR |
ELEMENT_TYPE_FNPTR <呼び出し規約を含む関数の完全なシグネチャ> |
ELEMENT_TYPE_SZARRAY |
ELEMENT_TYPE_SZARRAY <CorElementType 値> |
ELEMENT_TYPE_MVAR |
ELEMENT_TYPE_MVAR <数値> |
ELEMENT_TYPE_CMOD_REQD |
ELEMENT_TYPE_<mdTypeRef または mdTypeDef メタデータ トークン> |
ELEMENT_TYPE_CMOD_OPT |
E_T_CMOD_OPT <mdTypeRef または mdTypeDef メタデータ トークン> |
必要条件
プラットフォーム : 「.NET Framework システム要件」を参照
ヘッダー : CorHdr.h
.NET Framework のバージョン : 4、3.5 SP1、3.5、3.0 SP1、3.0、2.0 SP1、2.0、1.1、1.0