clang-tools
7.0.0
|
Describes a named symbol from a header. More...
#include <SymbolInfo.h>
Classes | |
struct | Signals |
Public Types | |
enum | SymbolKind { SymbolKind::Function, SymbolKind::Class, SymbolKind::Variable, SymbolKind::TypedefName, SymbolKind::EnumDecl, SymbolKind::EnumConstantDecl, SymbolKind::Macro, SymbolKind::Unknown } |
The SymbolInfo Type. More... | |
enum | ContextType { ContextType::Namespace, ContextType::Record, ContextType::EnumDecl } |
The Context Type. More... | |
typedef std::pair< ContextType, std::string > | Context |
A pair of <ContextType, ContextName>. More... | |
using | SignalMap = std::map< SymbolInfo, Signals > |
Public Member Functions | |
SymbolInfo () | |
SymbolInfo (llvm::StringRef Name, SymbolKind Type, llvm::StringRef FilePath, const std::vector< Context > &Contexts) | |
void | SetFilePath (llvm::StringRef Path) |
llvm::StringRef | getName () const |
Get symbol name. More... | |
std::string | getQualifiedName () const |
Get the fully-qualified symbol name. More... | |
SymbolKind | getSymbolKind () const |
Get symbol type. More... | |
llvm::StringRef | getFilePath () const |
Get a relative file path where symbol comes from. More... | |
const std::vector< SymbolInfo::Context > & | getContexts () const |
Get symbol contexts. More... | |
bool | operator< (const SymbolInfo &Symbol) const |
bool | operator== (const SymbolInfo &Symbol) const |
Friends | |
struct | llvm::yaml::MappingTraits< struct SymbolAndSignals > |
Describes a named symbol from a header.
Symbols with the same qualified name and type (e.g. function overloads) that appear in the same header are represented by a single SymbolInfo.
TODO: keep track of instances, e.g. overload locations and signatures.
Definition at line 28 of file SymbolInfo.h.
typedef std::pair<ContextType, std::string> clang::find_all_symbols::SymbolInfo::Context |
A pair of <ContextType, ContextName>.
Definition at line 50 of file SymbolInfo.h.
using clang::find_all_symbols::SymbolInfo::SignalMap = std::map<SymbolInfo, Signals> |
Definition at line 69 of file SymbolInfo.h.
|
strong |
|
strong |
The SymbolInfo Type.
Enumerator | |
---|---|
Function | |
Class | |
Variable | |
TypedefName | |
EnumDecl | |
EnumConstantDecl | |
Macro | |
Unknown |
Definition at line 31 of file SymbolInfo.h.
|
inline |
Definition at line 73 of file SymbolInfo.h.
References Name.
clang::find_all_symbols::SymbolInfo::SymbolInfo | ( | llvm::StringRef | Name, |
SymbolKind | Type, | ||
llvm::StringRef | FilePath, | ||
const std::vector< Context > & | Contexts | ||
) |
Definition at line 74 of file SymbolInfo.cpp.
|
inline |
Get symbol contexts.
Definition at line 93 of file SymbolInfo.h.
References operator<(), and clang::find_all_symbols::SymbolInfo::Signals::operator==().
|
inline |
Get a relative file path where symbol comes from.
Definition at line 90 of file SymbolInfo.h.
|
inline |
std::string clang::find_all_symbols::SymbolInfo::getQualifiedName | ( | ) | const |
Get the fully-qualified symbol name.
Definition at line 89 of file SymbolInfo.cpp.
References EnumDecl.
Referenced by getName().
|
inline |
Get symbol type.
Definition at line 87 of file SymbolInfo.h.
bool clang::find_all_symbols::SymbolInfo::operator< | ( | const SymbolInfo & | Symbol | ) | const |
Definition at line 84 of file SymbolInfo.cpp.
Referenced by getContexts().
bool clang::find_all_symbols::SymbolInfo::operator== | ( | const SymbolInfo & | Symbol | ) | const |
Definition at line 79 of file SymbolInfo.cpp.
|
inline |
Definition at line 78 of file SymbolInfo.h.
References Path.
|
friend |
Definition at line 102 of file SymbolInfo.h.