clang API Documentation
Class that performs name lookup into a DeclContext stored in an AST file. More...
#include <ASTReaderInternals.h>
Classes | |
struct | DeclNameKey |
Special internal key for declaration names. The hash table creates keys for comparison; we do not create a DeclarationName for the internal key to avoid deserializing types. More... | |
Public Types | |
typedef llvm::support::ulittle32_t | LE32DeclID |
Pair of begin/end iterators for DeclIDs. | |
typedef std::pair< LE32DeclID *, LE32DeclID * > | data_type |
typedef unsigned | hash_value_type |
typedef unsigned | offset_type |
typedef DeclarationName | external_key_type |
typedef DeclNameKey | internal_key_type |
Public Member Functions | |
ASTDeclContextNameLookupTrait (ASTReader &Reader, ModuleFile &F) | |
hash_value_type | ComputeHash (const DeclNameKey &Key) const |
internal_key_type | GetInternalKey (const external_key_type &Name) const |
internal_key_type | ReadKey (const unsigned char *d, unsigned) |
data_type | ReadData (internal_key_type, const unsigned char *d, unsigned DataLen) |
Static Public Member Functions | |
static bool | EqualKey (const internal_key_type &a, const internal_key_type &b) |
static std::pair< unsigned, unsigned > | ReadKeyDataLength (const unsigned char *&d) |
Class that performs name lookup into a DeclContext stored in an AST file.
Definition at line 37 of file ASTReaderInternals.h.
typedef std::pair<LE32DeclID *, LE32DeclID *> clang::serialization::reader::ASTDeclContextNameLookupTrait::data_type |
Definition at line 47 of file ASTReaderInternals.h.
typedef DeclarationName clang::serialization::reader::ASTDeclContextNameLookupTrait::external_key_type |
Definition at line 60 of file ASTReaderInternals.h.
Definition at line 48 of file ASTReaderInternals.h.
Definition at line 61 of file ASTReaderInternals.h.
typedef llvm::support::ulittle32_t clang::serialization::reader::ASTDeclContextNameLookupTrait::LE32DeclID |
Pair of begin/end iterators for DeclIDs.
Note that these declaration IDs are local to the module that contains this particular lookup t
Definition at line 46 of file ASTReaderInternals.h.
Definition at line 49 of file ASTReaderInternals.h.
clang::serialization::reader::ASTDeclContextNameLookupTrait::ASTDeclContextNameLookupTrait | ( | ASTReader & | Reader, |
ModuleFile & | F | ||
) | [inline, explicit] |
Definition at line 63 of file ASTReaderInternals.h.
unsigned ASTDeclContextNameLookupTrait::ComputeHash | ( | const DeclNameKey & | Key | ) | const |
Definition at line 851 of file ASTReader.cpp.
References clang::serialization::ComputeHash(), clang::DeclarationName::CXXConstructorName, clang::DeclarationName::CXXConversionFunctionName, clang::DeclarationName::CXXDestructorName, clang::DeclarationName::CXXLiteralOperatorName, clang::DeclarationName::CXXOperatorName, clang::DeclarationName::CXXUsingDirective, clang::serialization::reader::ASTDeclContextNameLookupTrait::DeclNameKey::Data, clang::DeclarationName::Identifier, clang::serialization::reader::ASTDeclContextNameLookupTrait::DeclNameKey::Kind, clang::DeclarationName::ObjCMultiArgSelector, clang::DeclarationName::ObjCOneArgSelector, and clang::DeclarationName::ObjCZeroArgSelector.
static bool clang::serialization::reader::ASTDeclContextNameLookupTrait::EqualKey | ( | const internal_key_type & | a, |
const internal_key_type & | b | ||
) | [inline, static] |
Definition at line 66 of file ASTReaderInternals.h.
References clang::serialization::reader::ASTDeclContextNameLookupTrait::DeclNameKey::Data, and clang::serialization::reader::ASTDeclContextNameLookupTrait::DeclNameKey::Kind.
ASTDeclContextNameLookupTrait::internal_key_type ASTDeclContextNameLookupTrait::GetInternalKey | ( | const external_key_type & | Name | ) | const |
Definition at line 879 of file ASTReader.cpp.
References clang::DeclarationName::CXXConstructorName, clang::DeclarationName::CXXConversionFunctionName, clang::DeclarationName::CXXDestructorName, clang::DeclarationName::CXXLiteralOperatorName, clang::DeclarationName::CXXOperatorName, clang::DeclarationName::CXXUsingDirective, clang::serialization::reader::ASTDeclContextNameLookupTrait::DeclNameKey::Data, clang::DeclarationName::getAsIdentifierInfo(), clang::Selector::getAsOpaquePtr(), clang::DeclarationName::getCXXLiteralIdentifier(), clang::DeclarationName::getCXXOverloadedOperator(), clang::DeclarationName::getNameKind(), clang::DeclarationName::getObjCSelector(), clang::DeclarationName::Identifier, clang::serialization::reader::ASTDeclContextNameLookupTrait::DeclNameKey::Kind, clang::DeclarationName::ObjCMultiArgSelector, clang::DeclarationName::ObjCOneArgSelector, and clang::DeclarationName::ObjCZeroArgSelector.
ASTDeclContextNameLookupTrait::data_type ASTDeclContextNameLookupTrait::ReadData | ( | internal_key_type | , |
const unsigned char * | d, | ||
unsigned | DataLen | ||
) |
Definition at line 955 of file ASTReader.cpp.
ASTDeclContextNameLookupTrait::internal_key_type ASTDeclContextNameLookupTrait::ReadKey | ( | const unsigned char * | d, |
unsigned | |||
) |
Definition at line 918 of file ASTReader.cpp.
References clang::DeclarationName::CXXConstructorName, clang::DeclarationName::CXXConversionFunctionName, clang::DeclarationName::CXXDestructorName, clang::DeclarationName::CXXLiteralOperatorName, clang::DeclarationName::CXXOperatorName, clang::DeclarationName::CXXUsingDirective, clang::DeclarationName::Identifier, clang::serialization::reader::ASTDeclContextNameLookupTrait::DeclNameKey::Kind, clang::DeclarationName::ObjCMultiArgSelector, clang::DeclarationName::ObjCOneArgSelector, and clang::DeclarationName::ObjCZeroArgSelector.
std::pair< unsigned, unsigned > ASTDeclContextNameLookupTrait::ReadKeyDataLength | ( | const unsigned char *& | d | ) | [static] |
Definition at line 910 of file ASTReader.cpp.