SymTagEnum
シンボルの種類を指定します。
構文
enum SymTagEnum {
SymTagNull,
SymTagExe,
SymTagCompiland,
SymTagCompilandDetails,
SymTagCompilandEnv,
SymTagFunction,
SymTagBlock,
SymTagData,
SymTagAnnotation,
SymTagLabel,
SymTagPublicSymbol,
SymTagUDT,
SymTagEnum,
SymTagFunctionType,
SymTagPointerType,
SymTagArrayType,
SymTagBaseType,
SymTagTypedef,
SymTagBaseClass,
SymTagFriend,
SymTagFunctionArgType,
SymTagFuncDebugStart,
SymTagFuncDebugEnd,
SymTagUsingNamespace,
SymTagVTableShape,
SymTagVTable,
SymTagCustom,
SymTagThunk,
SymTagCustomType,
SymTagManagedType,
SymTagDimension,
SymTagCallSite,
SymTagInlineSite,
SymTagBaseInterface,
SymTagVectorType,
SymTagMatrixType,
SymTagHLSLType,
SymTagCaller,
SymTagCallee,
SymTagExport,
SymTagHeapAllocationSite,
SymTagCoffGroup,
SymTagInlinee,
SymTagTaggedUnionCase,
};
要素
要素 | 説明 |
---|---|
SymTagNull |
シンボルに型がないことを示します。 |
SymTagExe |
シンボルが.exe ファイルであることを示します。 シンボル ストアごとに 1 つの SymTagExe シンボルのみが存在します。これはグローバル スコープとして機能し、字句の親を持ちません。 |
SymTagCompiland |
シンボル ストアの各コンパイル単位コンポーネントのコンパイル単位シンボルを示します。 ネイティブ アプリケーションの場合、 SymTagCompiland シンボルは、イメージにリンクされているオブジェクト ファイルに対応します。 一部の種類の Microsoft Intermediate Language (MSIL) イメージには、クラスごとに 1 つのコンパイル単位があります。 |
SymTagCompilandDetails |
シンボルにコンパイル単位の拡張属性が含まれていることを示します。 これらのプロパティを取得するには、コンパイルとシンボルの読み込みが必要になる場合があります。 |
SymTagCompilandEnv |
シンボルがコンパイル単位に定義されている環境文字列であることを示します。 |
SymTagFunction |
シンボルが関数であることを示します。 |
SymTagBlock |
シンボルが入れ子になったブロックであることを示します。 |
SymTagData |
シンボルがデータであることを示します。 |
SymTagAnnotation |
シンボルがコード注釈用であることを示します。 このシンボルの子は、定数データ文字列 ( SymTagData 、 LocIsConstant 、および DataIsConstant ) です。ほとんどのクライアントは、このシンボルを無視します。 |
SymTagLabel |
シンボルがラベルであることを示します。 |
SymTagPublicSymbol |
シンボルがパブリック シンボルであることを示します。 ネイティブ アプリケーションの場合、このシンボルは、イメージのリンク時に検出された COFF 外部シンボルです。 |
SymTagUDT |
シンボルがユーザー定義型 (構造体、クラス、または共用体) であることを示します。 |
SymTagEnum |
シンボルが列挙型であることを示します。 |
SymTagFunctionType |
シンボルが関数シグネチャ型であることを示します。 |
SymTagPointerType |
シンボルがポインター型であることを示します。 |
SymTagArrayType |
シンボルが配列型であることを示します。 |
SymTagBaseType |
シンボルが基本型であることを示します。 |
SymTagTypedef |
シンボルが別の型のエイリアスである typedef であることを示します。 |
SymTagBaseClass |
シンボルがユーザー定義型の基底クラスであることを示します。 |
SymTagFriend |
シンボルがユーザー定義型のフレンドであることを示します。 |
SymTagFunctionArgType |
シンボルが関数引数であることを示します。 |
SymTagFuncDebugStart |
シンボルが関数のプロローグ コードの終了位置であることを示します。 |
SymTagFuncDebugEnd |
シンボルが関数のエピローグ コードの開始位置であることを示します。 |
SymTagUsingNamespace |
シンボルが現在のスコープでアクティブな名前空間名であることを示します。 |
SymTagVTableShape |
シンボルが仮想テーブルの説明であることを示します。 |
SymTagVTable |
シンボルが仮想テーブル ポインターであることを示します。 |
SymTagCustom |
シンボルがカスタム シンボルであることを示します。 Microsoft Debug Interface Access (DIA) SDK では、これらのシンボルをさらに解釈することはできません。 |
SymTagThunk |
シンボルが、16 ビットコードと 32 ビット コードの間でデータを共有するために使用されるサンクであることを示します。 |
SymTagCustomType |
シンボルがカスタム コンパイラ シンボルであることを示します。 |
SymTagManagedType |
シンボルがメタデータにあることを示します。 |
SymTagDimension |
シンボルが FORTRAN 多次元配列であることを示します。 |
SymTagCallSite |
シンボルが呼び出しサイトを表していることを示します。 |
SymTagInlineSite |
シンボルがインライン サイトを表していることを示します。 |
SymTagBaseInterface |
シンボルが基本インターフェイスであることを示します。 |
SymTagVectorType |
シンボルがベクター型であることを示します。 |
SymTagMatrixType |
シンボルがマトリックス型であることを示します。 |
SymTagHLSLType |
シンボルが高レベル シェーダー言語の種類であることを示します。 |
SymTagCaller |
シンボルが、プロファイルガイド付き最適化 (PGO) 呼び出し元情報を表していることを示します。 |
SymTagCallee |
シンボルが PGO 呼び出し先情報を表していることを示します。 |
SymTagExport |
シンボルが DLL からのエクスポートであることを示します。 |
SymTagHeapAllocationSite |
シンボルがヒープ割り当てサイト (たとえば、 operator new の呼び出し) を表していることを示します。 |
SymTagCoffGroup |
シンボルが COFF グループであることを示します。 |
SymTagInlinee |
シンボルがインライン サイトのインラインを表していることを示します ( SymTagInlineSite を参照)。 |
SymTagTaggedUnionCase |
シンボルがタグ付き共用体 (Rust の列挙型など) であることを示します |
解説
デバッグ ファイル内のすべてのシンボルには、シンボルの種類を指定する識別タグがあります。
IDiaSymbol::get_symTag
メソッドは、この列挙体から値を返します。
この列挙の値は、検索のスコープを特定のシンボルの種類に制限するために、次のメソッドに渡されます。
要件
ヘッダー: cvconst.h