LLDB mainline
|
"lldb/Expression/ClangPersistentVariables.h" Manages persistent values that need to be preserved between expression invocations. More...
#include <ClangPersistentVariables.h>
Classes | |
struct | PersistentDecl |
Static Public Attributes | |
static char | ID |
Protected Member Functions | |
llvm::StringRef | GetPersistentVariablePrefix (bool is_error=false) const override |
Private Types | |
typedef llvm::DenseMap< const char *, PersistentDecl > | PersistentDeclMap |
Private Attributes | |
uint32_t | m_next_user_file_id = 0 |
The counter used by GetNextExprFileName. | |
uint32_t | m_next_persistent_variable_id = 0 |
PersistentDeclMap | m_persistent_decls |
Persistent entities declared by the user. | |
ClangModulesDeclVendor::ModuleVector | m_hand_loaded_clang_modules |
These are Clang modules we hand-loaded; these are the highest- priority source for macros. | |
std::shared_ptr< ClangASTImporter > | m_ast_importer_sp |
std::shared_ptr< ClangModulesDeclVendor > | m_modules_decl_vendor_sp |
std::shared_ptr< Target > | m_target_sp |
"lldb/Expression/ClangPersistentVariables.h" Manages persistent values that need to be preserved between expression invocations.
A list of variables that can be accessed and updated by any expression. See ClangPersistentVariable for more discussion. Also provides an increasing, 0-based counter for naming result variables.
Definition at line 34 of file ClangPersistentVariables.h.
|
private |
Definition at line 104 of file ClangPersistentVariables.h.
ClangPersistentVariables::ClangPersistentVariables | ( | std::shared_ptr< Target > | target_sp | ) |
Definition at line 31 of file ClangPersistentVariables.cpp.
|
overridedefault |
|
inline |
Definition at line 77 of file ClangPersistentVariables.h.
References m_hand_loaded_clang_modules.
Referenced by lldb_private::ClangExpressionParser::LLDBPreprocessorCallbacks::moduleImport().
|
override |
Definition at line 35 of file ClangPersistentVariables.cpp.
|
override |
Definition at line 40 of file ClangPersistentVariables.cpp.
std::shared_ptr< ClangASTImporter > ClangPersistentVariables::GetClangASTImporter | ( | ) |
Definition at line 111 of file ClangPersistentVariables.cpp.
References m_ast_importer_sp.
std::shared_ptr< ClangModulesDeclVendor > ClangPersistentVariables::GetClangModulesDeclVendor | ( | ) |
Definition at line 119 of file ClangPersistentVariables.cpp.
References lldb_private::ClangModulesDeclVendor::Create(), m_modules_decl_vendor_sp, and m_target_sp.
|
override |
|
inline |
Definition at line 81 of file ClangPersistentVariables.h.
References m_hand_loaded_clang_modules.
|
inline |
Returns the next file name that should be used for user expressions.
Definition at line 61 of file ClangPersistentVariables.h.
References m_next_user_file_id.
Referenced by lldb_private::ClangUserExpression::PrepareForParsing().
|
override |
Definition at line 128 of file ClangPersistentVariables.cpp.
References GetPersistentVariablePrefix(), and m_next_persistent_variable_id.
clang::NamedDecl * ClangPersistentVariables::GetPersistentDecl | ( | ConstString | name | ) |
Definition at line 106 of file ClangPersistentVariables.cpp.
References lldb_private::ConstString::GetCString(), and m_persistent_decls.
|
inlineoverrideprotected |
Definition at line 87 of file ClangPersistentVariables.h.
Referenced by GetNextPersistentVariableName(), and RemovePersistentVariable().
void ClangPersistentVariables::RegisterPersistentDecl | ( | ConstString | name, |
clang::NamedDecl * | decl, | ||
std::shared_ptr< TypeSystemClang > | ctx | ||
) |
Definition at line 90 of file ClangPersistentVariables.cpp.
References lldb_private::ConstString::GetCString(), and m_persistent_decls.
|
override |
Definition at line 48 of file ClangPersistentVariables.cpp.
References GetPersistentVariablePrefix(), and m_next_persistent_variable_id.
|
static |
Definition at line 39 of file ClangPersistentVariables.h.
|
private |
Definition at line 112 of file ClangPersistentVariables.h.
Referenced by GetClangASTImporter().
|
private |
These are Clang modules we hand-loaded; these are the highest- priority source for macros.
Definition at line 109 of file ClangPersistentVariables.h.
Referenced by AddHandLoadedClangModule(), and GetHandLoadedClangModules().
|
private |
Definition at line 113 of file ClangPersistentVariables.h.
Referenced by GetClangModulesDeclVendor().
|
private |
Definition at line 95 of file ClangPersistentVariables.h.
Referenced by GetNextPersistentVariableName(), and RemovePersistentVariable().
|
private |
The counter used by GetNextExprFileName.
Definition at line 93 of file ClangPersistentVariables.h.
Referenced by GetNextExprFileName().
|
private |
Persistent entities declared by the user.
Definition at line 106 of file ClangPersistentVariables.h.
Referenced by GetCompilerTypeFromPersistentDecl(), GetPersistentDecl(), and RegisterPersistentDecl().
|
private |
Definition at line 114 of file ClangPersistentVariables.h.
Referenced by GetClangModulesDeclVendor().