LLDB  mainline
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
lldb_private::ExceptionSearchFilter Class Reference

#include <LanguageRuntime.h>

Inheritance diagram for lldb_private::ExceptionSearchFilter:
Inheritance graph
[legend]
Collaboration diagram for lldb_private::ExceptionSearchFilter:
Collaboration graph
[legend]

Public Member Functions

 ExceptionSearchFilter (const lldb::TargetSP &target_sp, lldb::LanguageType language, bool update_module_list=true)
 
 ~ExceptionSearchFilter () override=default
 
bool ModulePasses (const lldb::ModuleSP &module_sp) override
 Call this method with a Module to see if that module passes the filter. More...
 
bool ModulePasses (const FileSpec &spec) override
 Call this method with a file spec to see if that spec passes the filter. More...
 
void Search (Searcher &searcher) override
 Call this method to do the search using the Searcher. More...
 
void GetDescription (Stream *s) override
 Prints a canonical description for the search filter to the stream s. More...
 
StructuredData::ObjectSP SerializeToStructuredData () override
 
- Public Member Functions inherited from lldb_private::SearchFilter
 SearchFilter (const lldb::TargetSP &target_sp)
 The basic constructor takes a Target, which gives the space to search. More...
 
 SearchFilter (const lldb::TargetSP &target_sp, unsigned char filterType)
 
virtual ~SearchFilter ()
 
virtual bool AddressPasses (Address &addr)
 Call this method with a Address to see if address passes the filter. More...
 
virtual bool CompUnitPasses (FileSpec &fileSpec)
 Call this method with a FileSpec to see if file spec passes the filter as the name of a compilation unit. More...
 
virtual bool CompUnitPasses (CompileUnit &compUnit)
 Call this method with a CompileUnit to see if comp unit passes the filter. More...
 
virtual bool FunctionPasses (Function &function)
 Call this method with a Function to see if function passes the filter. More...
 
virtual void SearchInModuleList (Searcher &searcher, ModuleList &modules)
 Call this method to do the search using the Searcher in the module list modules. More...
 
virtual uint32_t GetFilterRequiredItems ()
 This determines which items are REQUIRED for the filter to pass. More...
 
virtual void Dump (Stream *s) const
 Standard "Dump" method. At present it does nothing. More...
 
lldb::SearchFilterSP CreateCopy (lldb::TargetSP &target_sp)
 
enum FilterTy GetFilterTy ()
 
const char * GetFilterName ()
 

Static Public Member Functions

static SearchFilterCreateFromStructuredData (Target &target, const StructuredData::Dictionary &data_dict, Status &error)
 
- Static Public Member Functions inherited from lldb_private::SearchFilter
static lldb::SearchFilterSP CreateFromStructuredData (const lldb::TargetSP &target_sp, const StructuredData::Dictionary &data_dict, Status &error)
 
static const char * GetSerializationKey ()
 
static const char * GetSerializationSubclassKey ()
 
static const char * GetSerializationSubclassOptionsKey ()
 
static const char * FilterTyToName (enum FilterTy)
 
static FilterTy NameToFilterTy (llvm::StringRef name)
 

Protected Member Functions

lldb::SearchFilterSP DoCreateCopy () override
 
void UpdateModuleListIfNeeded ()
 
- Protected Member Functions inherited from lldb_private::SearchFilter
StructuredData::DictionarySP WrapOptionsDict (StructuredData::DictionarySP options_dict_sp)
 
void SerializeFileSpecList (StructuredData::DictionarySP &options_dict_sp, OptionNames name, FileSpecList &file_list)
 
Searcher::CallbackReturn DoModuleIteration (const SymbolContext &context, Searcher &searcher)
 
Searcher::CallbackReturn DoModuleIteration (const lldb::ModuleSP &module_sp, Searcher &searcher)
 
Searcher::CallbackReturn DoCUIteration (const lldb::ModuleSP &module_sp, const SymbolContext &context, Searcher &searcher)
 
Searcher::CallbackReturn DoFunctionIteration (Function *function, const SymbolContext &context, Searcher &searcher)
 
void SetTarget (lldb::TargetSP &target_sp)
 

Protected Attributes

lldb::LanguageType m_language
 
LanguageRuntimem_language_runtime
 
lldb::SearchFilterSP m_filter_sp
 
- Protected Attributes inherited from lldb_private::SearchFilter
lldb::TargetSP m_target_sp
 

Additional Inherited Members

- Public Types inherited from lldb_private::SearchFilter
enum  FilterTy {
  Unconstrained = 0, Exception, ByModule, ByModules,
  ByModulesAndCU, LastKnownFilterType = ByModulesAndCU, UnknownFilter
}
 
- Static Public Attributes inherited from lldb_private::SearchFilter
static const char * g_ty_to_name [LastKnownFilterType+2]
 
- Protected Types inherited from lldb_private::SearchFilter
enum  OptionNames { ModList = 0, CUList, LanguageName, LastOptionName }
 
- Static Protected Member Functions inherited from lldb_private::SearchFilter
static const char * GetKey (enum OptionNames enum_value)
 
- Static Protected Attributes inherited from lldb_private::SearchFilter
static const char * g_option_names [LastOptionName]
 

Detailed Description

Definition at line 27 of file LanguageRuntime.h.

Constructor & Destructor Documentation

◆ ExceptionSearchFilter()

ExceptionSearchFilter::ExceptionSearchFilter ( const lldb::TargetSP &  target_sp,
lldb::LanguageType  language,
bool  update_module_list = true 
)

Definition at line 21 of file LanguageRuntime.cpp.

References UpdateModuleListIfNeeded().

Referenced by DoCreateCopy().

◆ ~ExceptionSearchFilter()

lldb_private::ExceptionSearchFilter::~ExceptionSearchFilter ( )
overridedefault

Member Function Documentation

◆ CreateFromStructuredData()

SearchFilter * ExceptionSearchFilter::CreateFromStructuredData ( Target target,
const StructuredData::Dictionary data_dict,
Status error 
)
static

Definition at line 86 of file LanguageRuntime.cpp.

◆ DoCreateCopy()

SearchFilterSP ExceptionSearchFilter::DoCreateCopy ( )
overrideprotectedvirtual

Implements lldb_private::SearchFilter.

Definition at line 81 of file LanguageRuntime.cpp.

References ExceptionSearchFilter(), and m_language.

◆ GetDescription()

void ExceptionSearchFilter::GetDescription ( Stream s)
overridevirtual

Prints a canonical description for the search filter to the stream s.

Parameters
[in]sStream to which the output is copied.

Reimplemented from lldb_private::SearchFilter.

Definition at line 50 of file LanguageRuntime.cpp.

References m_filter_sp, and UpdateModuleListIfNeeded().

◆ ModulePasses() [1/2]

bool ExceptionSearchFilter::ModulePasses ( const FileSpec spec)
overridevirtual

Call this method with a file spec to see if that spec passes the filter.

Parameters
[in]specThe file spec to check against the filter.
Returns
true if spec passes, and false otherwise.
Note
the default implementation always returns true.

Reimplemented from lldb_private::SearchFilter.

Definition at line 37 of file LanguageRuntime.cpp.

References m_filter_sp, and UpdateModuleListIfNeeded().

◆ ModulePasses() [2/2]

bool ExceptionSearchFilter::ModulePasses ( const lldb::ModuleSP &  module_sp)
overridevirtual

Call this method with a Module to see if that module passes the filter.

Parameters
[in]module_spThe Module to check against the filter.
Returns
true if module passes, and false otherwise.
Note
the default implementation always returns true.

Reimplemented from lldb_private::SearchFilter.

Definition at line 30 of file LanguageRuntime.cpp.

References m_filter_sp, and UpdateModuleListIfNeeded().

◆ Search()

void ExceptionSearchFilter::Search ( Searcher searcher)
overridevirtual

Call this method to do the search using the Searcher.

Parameters
[in]searcherThe searcher to drive with this search.

Reimplemented from lldb_private::SearchFilter.

Definition at line 44 of file LanguageRuntime.cpp.

References m_filter_sp, and UpdateModuleListIfNeeded().

◆ SerializeToStructuredData()

StructuredData::ObjectSP ExceptionSearchFilter::SerializeToStructuredData ( )
overridevirtual

Reimplemented from lldb_private::SearchFilter.

Definition at line 93 of file LanguageRuntime.cpp.

◆ UpdateModuleListIfNeeded()

void ExceptionSearchFilter::UpdateModuleListIfNeeded ( )
protected

Member Data Documentation

◆ m_filter_sp

lldb::SearchFilterSP lldb_private::ExceptionSearchFilter::m_filter_sp
protected

Definition at line 53 of file LanguageRuntime.h.

Referenced by GetDescription(), ModulePasses(), Search(), and UpdateModuleListIfNeeded().

◆ m_language

lldb::LanguageType lldb_private::ExceptionSearchFilter::m_language
protected

Definition at line 51 of file LanguageRuntime.h.

Referenced by DoCreateCopy(), and UpdateModuleListIfNeeded().

◆ m_language_runtime

LanguageRuntime* lldb_private::ExceptionSearchFilter::m_language_runtime
protected

Definition at line 52 of file LanguageRuntime.h.

Referenced by UpdateModuleListIfNeeded().


The documentation for this class was generated from the following files: