SymTagEnum
Określa typ symbolu.
Składnia
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,
};
Elementy
Element | opis |
---|---|
SymTagNull |
Wskazuje, że symbol nie ma typu. |
SymTagExe |
Wskazuje, że symbol jest plikiem .exe. istnieje tylko jeden SymTagExe symbol na magazyn symboli.Służy jako zakres globalny i nie ma elementu nadrzędnego leksykicznego. |
SymTagCompiland |
Wskazuje symbol compiland dla każdego składnika compiland magazynu symboli. W przypadku aplikacji SymTagCompiland natywnych symbole odpowiadają plikom obiektów połączonym z obrazem. W przypadku niektórych rodzajów obrazów języka Microsoft Intermediate Language (MSIL) istnieje jeden compiland na klasę. |
SymTagCompilandDetails |
Wskazuje, że symbol zawiera rozszerzone atrybuty compiland. Pobieranie tych właściwości może wymagać ładowania symboli współzadania. |
SymTagCompilandEnv |
Wskazuje, że symbol jest ciągiem środowiskowym zdefiniowanym dla compiland. |
SymTagFunction |
Wskazuje, że symbol jest funkcją. |
SymTagBlock |
Wskazuje, że symbol jest zagnieżdżonym blokiem. |
SymTagData |
Wskazuje, że symbol to dane. |
SymTagAnnotation |
Wskazuje, że symbol dotyczy adnotacji kodu. Elementy podrzędne tego symbolu to stałe ciągi danych ( SymTagData , LocIsConstant , i DataIsConstant ).Większość klientów ignoruje ten symbol. |
SymTagLabel |
Wskazuje, że symbol jest etykietą. |
SymTagPublicSymbol |
Wskazuje, że symbol jest symbolem publicznym. W przypadku aplikacji natywnych ten symbol jest symbolem zewnętrznym COFF napotkanym podczas łączenia obrazu. |
SymTagUDT |
Wskazuje, że symbol jest typem zdefiniowanym przez użytkownika (struktura, klasa lub unia). |
SymTagEnum |
Wskazuje, że symbol jest wyliczeniem. |
SymTagFunctionType |
Wskazuje, że symbol jest typem podpisu funkcji. |
SymTagPointerType |
Wskazuje, że symbol jest typem wskaźnika. |
SymTagArrayType |
Wskazuje, że symbol jest typem tablicy. |
SymTagBaseType |
Wskazuje, że symbol jest typem podstawowym. |
SymTagTypedef |
Wskazuje, że symbol jest typedef aliasem innego typu. |
SymTagBaseClass |
Wskazuje, że symbol jest klasą bazową typu zdefiniowanego przez użytkownika. |
SymTagFriend |
Wskazuje, że symbol jest przyjacielem typu zdefiniowanego przez użytkownika. |
SymTagFunctionArgType |
Wskazuje, że symbol jest argumentem funkcji. |
SymTagFuncDebugStart |
Wskazuje, że symbol jest lokalizacją końcową kodu prologu funkcji. |
SymTagFuncDebugEnd |
Wskazuje, że symbol jest początkową lokalizacją kodu epilogu funkcji. |
SymTagUsingNamespace |
Wskazuje, że symbol jest nazwą przestrzeni nazw aktywną w bieżącym zakresie. |
SymTagVTableShape |
Wskazuje, że symbol jest opisem tabeli wirtualnej. |
SymTagVTable |
Wskazuje, że symbol jest wskaźnikiem tabeli wirtualnej. |
SymTagCustom |
Wskazuje, że symbol jest symbolem niestandardowym. Zestaw MICROSOFT Debug Interface Access (DIA) SDK nie zapewnia dalszej interpretacji tych symboli. |
SymTagThunk |
Wskazuje, że symbol jest thunk używany do udostępniania danych między 16-bitowym i 32-bitowym kodem. |
SymTagCustomType |
Wskazuje, że symbol jest niestandardowym symbolem kompilatora. |
SymTagManagedType |
Wskazuje, że symbol znajduje się w metadanych. |
SymTagDimension |
Wskazuje, że symbol jest tablicą wielowymiarową FORTRAN. |
SymTagCallSite |
Wskazuje, że symbol reprezentuje witrynę wywołania. |
SymTagInlineSite |
Wskazuje, że symbol reprezentuje lokację śródliniową. |
SymTagBaseInterface |
Wskazuje, że symbol jest interfejsem podstawowym. |
SymTagVectorType |
Wskazuje, że symbol jest typem wektorowym. |
SymTagMatrixType |
Wskazuje, że symbol jest typem macierzy. |
SymTagHLSLType |
Wskazuje, że symbol jest typem języka cieniowania wysokiego poziomu. |
SymTagCaller |
Wskazuje, że symbol reprezentuje informacje o funkcji optymalizacji sterowanej profilem (PGO). |
SymTagCallee |
Wskazuje, że symbol reprezentuje informacje wywoływane przez PGO. |
SymTagExport |
Wskazuje, że symbol jest eksportem z biblioteki DLL. |
SymTagHeapAllocationSite |
Wskazuje, że symbol reprezentuje lokację alokacji sterty (na przykład wywołanie metody )operator new |
SymTagCoffGroup |
Wskazuje, że symbol jest grupą COFF. |
SymTagInlinee |
Wskazuje, że symbol reprezentuje wbudowany wiersz witryny wbudowanej (zobacz SymTagInlineSite ). |
SymTagTaggedUnionCase |
Wskazuje, że symbol jest związkiem oznakowanym (na przykład typem wyliczenia Rusta) |
Uwagi
Wszystkie symbole w pliku debugowania mają tag identyfikujący, który określa typ symbolu.
Metoda IDiaSymbol::get_symTag
zwraca wartości z tego wyliczenia.
Wartości w tym wyliczenie są przekazywane do następujących metod, aby ograniczyć zakres wyszukiwania do określonego typu symboli:
Wymagania
Nagłówek: cvconst.h