LLDB mainline
|
#include <SymbolContext.h>
Public Types | |
enum | SpecificationType { eNothingSpecified = 0 , eModuleSpecified = 1 << 0 , eFileSpecified = 1 << 1 , eLineStartSpecified = 1 << 2 , eLineEndSpecified = 1 << 3 , eFunctionSpecified = 1 << 4 , eClassOrNamespaceSpecified = 1 << 5 , eAddressRangeSpecified = 1 << 6 } |
Public Member Functions | |
SymbolContextSpecifier (const lldb::TargetSP &target_sp) | |
~SymbolContextSpecifier () | |
bool | AddSpecification (const char *spec_string, SpecificationType type) |
bool | AddLineSpecification (uint32_t line_no, SpecificationType type) |
void | Clear () |
bool | SymbolContextMatches (const SymbolContext &sc) |
bool | AddressMatches (lldb::addr_t addr) |
void | GetDescription (Stream *s, lldb::DescriptionLevel level) const |
Private Attributes | |
lldb::TargetSP | m_target_sp |
std::string | m_module_spec |
lldb::ModuleSP | m_module_sp |
std::unique_ptr< FileSpec > | m_file_spec_up |
size_t | m_start_line |
size_t | m_end_line |
std::string | m_function_spec |
std::string | m_class_name |
std::unique_ptr< AddressRange > | m_address_range_up |
uint32_t | m_type |
Definition at line 324 of file SymbolContext.h.
Enumerator | |
---|---|
eNothingSpecified | |
eModuleSpecified | |
eFileSpecified | |
eLineStartSpecified | |
eLineEndSpecified | |
eFunctionSpecified | |
eClassOrNamespaceSpecified | |
eAddressRangeSpecified |
Definition at line 326 of file SymbolContext.h.
SymbolContextSpecifier::SymbolContextSpecifier | ( | const lldb::TargetSP & | target_sp | ) |
Definition at line 930 of file SymbolContext.cpp.
|
default |
bool SymbolContextSpecifier::AddLineSpecification | ( | uint32_t | line_no, |
SpecificationType | type | ||
) |
Definition at line 937 of file SymbolContext.cpp.
References Clear(), eLineEndSpecified, eLineStartSpecified, eNothingSpecified, m_end_line, m_start_line, and m_type.
bool SymbolContextSpecifier::AddressMatches | ( | lldb::addr_t | addr | ) |
Definition at line 1110 of file SymbolContext.cpp.
References eAddressRangeSpecified, m_target_sp, m_type, and SymbolContextMatches().
bool SymbolContextSpecifier::AddSpecification | ( | const char * | spec_string, |
SpecificationType | type | ||
) |
Definition at line 959 of file SymbolContext.cpp.
References Clear(), eAddressRangeSpecified, eClassOrNamespaceSpecified, eFileSpecified, eFunctionSpecified, eLineEndSpecified, eLineStartSpecified, eModuleSpecified, eNothingSpecified, m_class_name, m_end_line, m_file_spec_up, m_function_spec, m_module_sp, m_module_spec, m_start_line, m_target_sp, and m_type.
void SymbolContextSpecifier::Clear | ( | ) |
Definition at line 1011 of file SymbolContext.cpp.
References eNothingSpecified, m_address_range_up, m_class_name, m_end_line, m_file_spec_up, m_function_spec, m_module_spec, m_start_line, and m_type.
Referenced by AddLineSpecification(), and AddSpecification().
void SymbolContextSpecifier::GetDescription | ( | Stream * | s, |
lldb::DescriptionLevel | level | ||
) | const |
Definition at line 1123 of file SymbolContext.cpp.
References lldb_private::Address::DumpStyleFileAddress, lldb_private::Address::DumpStyleLoadAddress, eAddressRangeSpecified, eClassOrNamespaceSpecified, eFileSpecified, eFunctionSpecified, eLineEndSpecified, eLineStartSpecified, eModuleSpecified, eNothingSpecified, lldb_private::Stream::Indent(), m_address_range_up, m_class_name, m_end_line, m_file_spec_up, m_function_spec, m_module_sp, m_module_spec, m_start_line, m_target_sp, m_type, PATH_MAX, lldb_private::Stream::Printf(), and lldb_private::Stream::PutCString().
bool SymbolContextSpecifier::SymbolContextMatches | ( | const SymbolContext & | sc | ) |
Definition at line 1023 of file SymbolContext.cpp.
References lldb_private::SymbolContext::block, lldb_private::SymbolContext::comp_unit, eFileSpecified, eFunctionSpecified, eLineEndSpecified, eLineStartSpecified, eModuleSpecified, eNothingSpecified, lldb_private::SymbolContext::function, lldb_private::FunctionInfo::GetDeclaration(), lldb_private::Declaration::GetFile(), lldb_private::Block::GetInlinedFunctionInfo(), lldb_private::InlineFunctionInfo::GetMangled(), lldb_private::Symbol::GetMangled(), lldb_private::Function::GetMangled(), lldb_private::CompileUnit::GetPrimaryFile(), lldb_private::LineEntry::line, lldb_private::SymbolContext::line_entry, m_end_line, m_file_spec_up, m_function_spec, m_module_sp, m_module_spec, m_start_line, m_target_sp, m_type, lldb_private::FileSpec::Match(), lldb_private::SymbolContext::module_sp, lldb_private::Mangled::NameMatches(), lldb_private::SymbolContext::symbol, and lldb_private::SymbolContext::target_sp.
Referenced by AddressMatches().
|
private |
Definition at line 363 of file SymbolContext.h.
Referenced by Clear(), and GetDescription().
|
private |
Definition at line 362 of file SymbolContext.h.
Referenced by AddSpecification(), Clear(), and GetDescription().
|
private |
Definition at line 360 of file SymbolContext.h.
Referenced by AddLineSpecification(), AddSpecification(), Clear(), GetDescription(), and SymbolContextMatches().
|
private |
Definition at line 358 of file SymbolContext.h.
Referenced by AddSpecification(), Clear(), GetDescription(), and SymbolContextMatches().
|
private |
Definition at line 361 of file SymbolContext.h.
Referenced by AddSpecification(), Clear(), GetDescription(), and SymbolContextMatches().
|
private |
Definition at line 357 of file SymbolContext.h.
Referenced by AddSpecification(), GetDescription(), and SymbolContextMatches().
|
private |
Definition at line 356 of file SymbolContext.h.
Referenced by AddSpecification(), Clear(), GetDescription(), and SymbolContextMatches().
|
private |
Definition at line 359 of file SymbolContext.h.
Referenced by AddLineSpecification(), AddSpecification(), Clear(), GetDescription(), and SymbolContextMatches().
|
private |
Definition at line 355 of file SymbolContext.h.
Referenced by AddressMatches(), AddSpecification(), GetDescription(), and SymbolContextMatches().
|
private |
Definition at line 364 of file SymbolContext.h.
Referenced by AddLineSpecification(), AddressMatches(), AddSpecification(), Clear(), GetDescription(), and SymbolContextMatches().