LLDB mainline
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Types | Static Private Member Functions | Private Attributes | List of all members
sddarwinlog_private::FilterRule Class Referenceabstract
Inheritance diagram for sddarwinlog_private::FilterRule:
Inheritance graph

Public Types

using OperationCreationFunc = std::function< FilterRuleSP(bool accept, size_t attribute_index, const std::string &op_arg, Status &error)>

Public Member Functions

virtual ~FilterRule ()=default
StructuredData::ObjectSP Serialize () const
virtual void Dump (Stream &stream) const =0
llvm::StringRef GetOperationType () const

Static Public Member Functions

static void RegisterOperation (llvm::StringRef operation, const OperationCreationFunc &creation_func)
static FilterRuleSP CreateRule (bool match_accepts, size_t attribute, llvm::StringRef operation, const std::string &op_arg, Status &error)

Protected Member Functions

 FilterRule (bool accept, size_t attribute_index, llvm::StringRef operation)
virtual void DoSerialization (StructuredData::Dictionary &dict) const =0
bool GetMatchAccepts () const
const char * GetFilterAttribute () const

Private Types

using CreationFuncMap = llvm::StringMap< OperationCreationFunc >

Static Private Member Functions

static CreationFuncMapGetCreationFuncMap ()

Private Attributes

const bool m_accept
const size_t m_attribute_index
const llvm::StringRef m_operation

Detailed Description

Definition at line 180 of file StructuredDataDarwinLog.cpp.

Member Typedef Documentation

◆ CreationFuncMap

Definition at line 247 of file StructuredDataDarwinLog.cpp.

◆ OperationCreationFunc

using sddarwinlog_private::FilterRule::OperationCreationFunc = std::function<FilterRuleSP(bool accept, size_t attribute_index, const std::string &op_arg, Status &error)>

Definition at line 184 of file StructuredDataDarwinLog.cpp.

Constructor & Destructor Documentation

◆ ~FilterRule()

virtual sddarwinlog_private::FilterRule::~FilterRule ( )

◆ FilterRule()

sddarwinlog_private::FilterRule::FilterRule ( bool  accept,
size_t  attribute_index,
llvm::StringRef  operation 

Definition at line 234 of file StructuredDataDarwinLog.cpp.

Member Function Documentation

◆ CreateRule()

static FilterRuleSP sddarwinlog_private::FilterRule::CreateRule ( bool  match_accepts,
size_t  attribute,
llvm::StringRef  operation,
const std::string &  op_arg,
Status error 

◆ DoSerialization()

virtual void sddarwinlog_private::FilterRule::DoSerialization ( StructuredData::Dictionary dict) const
protectedpure virtual

◆ Dump()

virtual void sddarwinlog_private::FilterRule::Dump ( Stream stream) const
pure virtual

◆ GetCreationFuncMap()

static CreationFuncMap & sddarwinlog_private::FilterRule::GetCreationFuncMap ( )

Definition at line 249 of file StructuredDataDarwinLog.cpp.

Referenced by CreateRule(), and RegisterOperation().

◆ GetFilterAttribute()

const char * sddarwinlog_private::FilterRule::GetFilterAttribute ( ) const

◆ GetMatchAccepts()

bool sddarwinlog_private::FilterRule::GetMatchAccepts ( ) const

◆ GetOperationType()

llvm::StringRef sddarwinlog_private::FilterRule::GetOperationType ( ) const

Definition at line 231 of file StructuredDataDarwinLog.cpp.

References m_operation.

Referenced by Serialize().

◆ RegisterOperation()

static void sddarwinlog_private::FilterRule::RegisterOperation ( llvm::StringRef  operation,
const OperationCreationFunc creation_func 

◆ Serialize()

StructuredData::ObjectSP sddarwinlog_private::FilterRule::Serialize ( ) const

Member Data Documentation

◆ m_accept

const bool sddarwinlog_private::FilterRule::m_accept

Definition at line 254 of file StructuredDataDarwinLog.cpp.

Referenced by GetMatchAccepts(), and Serialize().

◆ m_attribute_index

const size_t sddarwinlog_private::FilterRule::m_attribute_index

Definition at line 255 of file StructuredDataDarwinLog.cpp.

Referenced by GetFilterAttribute(), and Serialize().

◆ m_operation

const llvm::StringRef sddarwinlog_private::FilterRule::m_operation

Definition at line 257 of file StructuredDataDarwinLog.cpp.

Referenced by GetOperationType().

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