Logo ROOT  
Reference Guide
Loading...
Searching...
No Matches
BaseSelectionRule Class Referenceabstract

Definition at line 38 of file BaseSelectionRule.h.

Public Types

typedef std::unordered_map< std::string, std::string > AttributesMap_t
enum  EMatchType { kName , kPattern , kFile , kNoMatch }
enum  ESelect { kYes , kNo , kDontCare }

Public Member Functions

 BaseSelectionRule (ESelect sel)
 BaseSelectionRule (long index, cling::Interpreter &interp, const char *selFileName="", long lineno=-1)
 BaseSelectionRule (long index, ESelect sel, const std::string &attributeName, const std::string &attributeValue, cling::Interpreter &interp, const char *selFileName="", long lineno=-1)
virtual ~BaseSelectionRule ()=default
virtual void DebugPrint () const
void FillCache ()
const std::string & GetAttributeFileName () const
const std::string & GetAttributeFilePattern () const
const std::string & GetAttributeName () const
const std::string & GetAttributeNArgsToKeep () const
const std::string & GetAttributePattern () const
const std::string & GetAttributeProtoName () const
const std::string & GetAttributeProtoPattern () const
const AttributesMap_tGetAttributes () const
bool GetAttributeValue (const std::string &attributeName, std::string &returnValue) const
const clang::CXXRecordDecl * GetCXXRecordDecl () const
long GetIndex () const
long GetLineNumber () const
bool GetMatchFound () const
const clang::Type * GetRequestedType () const
ESelect GetSelected () const
const char * GetSelFileName () const
bool HasAttributeFileName () const
bool HasAttributeFilePattern () const
bool HasAttributeFromTypedef () const
bool HasAttributeName () const
bool HasAttributePattern () const
bool HasAttributeProtoName () const
bool HasAttributeProtoPattern () const
bool HasAttributeWithName (const std::string &attributeName) const
bool HasInterpreter () const
bool IsFromTypedef () const
EMatchType Match (const clang::NamedDecl *decl, const std::string &name, const std::string &prototype, bool isLinkdef) const
virtual void Print (std::ostream &out) const =0
void PrintAttributes (int level) const
void PrintAttributes (std::ostream &out, int level) const
void SetAttributeValue (const std::string &attributeName, const std::string &attributeValue)
void SetCXXRecordDecl (const clang::CXXRecordDecl *decl, const clang::Type *typeptr)
void SetIndex (long index)
void SetInterpreter (cling::Interpreter &interp)
void SetMatchFound (bool match)
void SetSelected (ESelect sel)

Protected Member Functions

bool CheckPattern (const std::string &test, const std::string &pattern, const std::list< std::string > &patterns_list, bool isLinkdef) const
void ProcessPattern (const std::string &pattern, std::list< std::string > &out) const

Private Attributes

AttributesMap_t fAttributes
const clang::CXXRecordDecl * fCXXRecordDecl
std::string fFileName = ""
std::string fFilePattern = ""
std::list< std::string > fFileSubPatterns
bool fHasFileNameAttribute = false
bool fHasFilePatternAttribute = false
bool fHasFromTypedefAttribute = false
bool fHasNameAttribute = false
bool fHasPatternAttribute = false
bool fHasProtoNameAttribute = false
bool fHasProtoPatternAttribute = false
long fIndex
cling::Interpreter * fInterp
bool fIsFromTypedef = false
ESelect fIsSelected
long fLineNumber =-1
bool fMatchFound
std::string fName = ""
std::string fNArgsToKeep = ""
std::string fPattern = ""
std::string fProtoName = ""
std::string fProtoPattern = ""
const clang::Type * fRequestedType
std::string fSelFileName =""
std::list< std::string > fSubPatterns

#include </home/stephan/code/root-2/core/dictgen/res/BaseSelectionRule.h>

Inheritance diagram for BaseSelectionRule:
ClassSelectionRule VariableSelectionRule

Member Typedef Documentation

◆ AttributesMap_t

typedef std::unordered_map<std::string, std::string> BaseSelectionRule::AttributesMap_t

Definition at line 41 of file BaseSelectionRule.h.

Member Enumeration Documentation

◆ EMatchType

Enumerator
kName 
kPattern 
kFile 
kNoMatch 

Definition at line 48 of file BaseSelectionRule.h.

◆ ESelect

Enumerator
kYes 
kNo 
kDontCare 

Definition at line 43 of file BaseSelectionRule.h.

Constructor & Destructor Documentation

◆ BaseSelectionRule() [1/3]

BaseSelectionRule::BaseSelectionRule ( ESelect sel)
inline

Definition at line 87 of file BaseSelectionRule.h.

◆ BaseSelectionRule() [2/3]

BaseSelectionRule::BaseSelectionRule ( long index,
cling::Interpreter & interp,
const char * selFileName = "",
long lineno = -1 )
inline

Definition at line 89 of file BaseSelectionRule.h.

◆ BaseSelectionRule() [3/3]

BaseSelectionRule::BaseSelectionRule ( long index,
BaseSelectionRule::ESelect sel,
const std::string & attributeName,
const std::string & attributeValue,
cling::Interpreter & interp,
const char * selFileName = "",
long lineno = -1 )

Definition at line 92 of file BaseSelectionRule.cxx.

◆ ~BaseSelectionRule()

virtual BaseSelectionRule::~BaseSelectionRule ( )
virtualdefault

Member Function Documentation

◆ CheckPattern()

bool BaseSelectionRule::CheckPattern ( const std::string & test,
const std::string & pattern,
const std::list< std::string > & patterns_list,
bool isLinkdef ) const
inlineprotected

Definition at line 444 of file BaseSelectionRule.cxx.

◆ DebugPrint()

void BaseSelectionRule::DebugPrint ( ) const
virtual

Definition at line 155 of file BaseSelectionRule.cxx.

◆ FillCache()

void BaseSelectionRule::FillCache ( )

Definition at line 536 of file BaseSelectionRule.cxx.

◆ GetAttributeFileName()

const std::string & BaseSelectionRule::GetAttributeFileName ( ) const
inline

Definition at line 122 of file BaseSelectionRule.h.

◆ GetAttributeFilePattern()

const std::string & BaseSelectionRule::GetAttributeFilePattern ( ) const
inline

Definition at line 125 of file BaseSelectionRule.h.

◆ GetAttributeName()

const std::string & BaseSelectionRule::GetAttributeName ( ) const
inline

Definition at line 110 of file BaseSelectionRule.h.

◆ GetAttributeNArgsToKeep()

const std::string & BaseSelectionRule::GetAttributeNArgsToKeep ( ) const
inline

Definition at line 131 of file BaseSelectionRule.h.

◆ GetAttributePattern()

const std::string & BaseSelectionRule::GetAttributePattern ( ) const
inline

Definition at line 116 of file BaseSelectionRule.h.

◆ GetAttributeProtoName()

const std::string & BaseSelectionRule::GetAttributeProtoName ( ) const
inline

Definition at line 113 of file BaseSelectionRule.h.

◆ GetAttributeProtoPattern()

const std::string & BaseSelectionRule::GetAttributeProtoPattern ( ) const
inline

Definition at line 119 of file BaseSelectionRule.h.

◆ GetAttributes()

const BaseSelectionRule::AttributesMap_t & BaseSelectionRule::GetAttributes ( ) const

Definition at line 150 of file BaseSelectionRule.cxx.

◆ GetAttributeValue()

bool BaseSelectionRule::GetAttributeValue ( const std::string & attributeName,
std::string & returnValue ) const

Definition at line 116 of file BaseSelectionRule.cxx.

◆ GetCXXRecordDecl()

const clang::CXXRecordDecl * BaseSelectionRule::GetCXXRecordDecl ( ) const
inline

Definition at line 151 of file BaseSelectionRule.h.

◆ GetIndex()

long BaseSelectionRule::GetIndex ( ) const
inline

Definition at line 98 of file BaseSelectionRule.h.

◆ GetLineNumber()

long BaseSelectionRule::GetLineNumber ( ) const
inline

Definition at line 101 of file BaseSelectionRule.h.

◆ GetMatchFound()

bool BaseSelectionRule::GetMatchFound ( ) const

Definition at line 520 of file BaseSelectionRule.cxx.

◆ GetRequestedType()

const clang::Type * BaseSelectionRule::GetRequestedType ( ) const

Definition at line 525 of file BaseSelectionRule.cxx.

◆ GetSelected()

BaseSelectionRule::ESelect BaseSelectionRule::GetSelected ( ) const

Definition at line 103 of file BaseSelectionRule.cxx.

◆ GetSelFileName()

const char * BaseSelectionRule::GetSelFileName ( ) const
inline

Definition at line 102 of file BaseSelectionRule.h.

◆ HasAttributeFileName()

bool BaseSelectionRule::HasAttributeFileName ( ) const
inline

Definition at line 123 of file BaseSelectionRule.h.

◆ HasAttributeFilePattern()

bool BaseSelectionRule::HasAttributeFilePattern ( ) const
inline

Definition at line 126 of file BaseSelectionRule.h.

◆ HasAttributeFromTypedef()

bool BaseSelectionRule::HasAttributeFromTypedef ( ) const
inline

Definition at line 129 of file BaseSelectionRule.h.

◆ HasAttributeName()

bool BaseSelectionRule::HasAttributeName ( ) const
inline

Definition at line 111 of file BaseSelectionRule.h.

◆ HasAttributePattern()

bool BaseSelectionRule::HasAttributePattern ( ) const
inline

Definition at line 117 of file BaseSelectionRule.h.

◆ HasAttributeProtoName()

bool BaseSelectionRule::HasAttributeProtoName ( ) const
inline

Definition at line 114 of file BaseSelectionRule.h.

◆ HasAttributeProtoPattern()

bool BaseSelectionRule::HasAttributeProtoPattern ( ) const
inline

Definition at line 120 of file BaseSelectionRule.h.

◆ HasAttributeWithName()

bool BaseSelectionRule::HasAttributeWithName ( const std::string & attributeName) const

Definition at line 108 of file BaseSelectionRule.cxx.

◆ HasInterpreter()

bool BaseSelectionRule::HasInterpreter ( ) const
inline

Definition at line 138 of file BaseSelectionRule.h.

◆ IsFromTypedef()

bool BaseSelectionRule::IsFromTypedef ( ) const
inline

Definition at line 128 of file BaseSelectionRule.h.

◆ Match()

BaseSelectionRule::EMatchType BaseSelectionRule::Match ( const clang::NamedDecl * decl,
const std::string & name,
const std::string & prototype,
bool isLinkdef ) const

Definition at line 185 of file BaseSelectionRule.cxx.

◆ Print()

virtual void BaseSelectionRule::Print ( std::ostream & out) const
pure virtual

◆ PrintAttributes() [1/2]

void BaseSelectionRule::PrintAttributes ( int level) const

Definition at line 178 of file BaseSelectionRule.cxx.

◆ PrintAttributes() [2/2]

void BaseSelectionRule::PrintAttributes ( std::ostream & out,
int level ) const

Definition at line 160 of file BaseSelectionRule.cxx.

◆ ProcessPattern()

void BaseSelectionRule::ProcessPattern ( const std::string & pattern,
std::list< std::string > & out ) const
inlineprotected

Definition at line 372 of file BaseSelectionRule.cxx.

◆ SetAttributeValue()

void BaseSelectionRule::SetAttributeValue ( const std::string & attributeName,
const std::string & attributeValue )

Definition at line 125 of file BaseSelectionRule.cxx.

◆ SetCXXRecordDecl()

void BaseSelectionRule::SetCXXRecordDecl ( const clang::CXXRecordDecl * decl,
const clang::Type * typeptr )

Definition at line 530 of file BaseSelectionRule.cxx.

◆ SetIndex()

void BaseSelectionRule::SetIndex ( long index)
inline

Definition at line 99 of file BaseSelectionRule.h.

◆ SetInterpreter()

void BaseSelectionRule::SetInterpreter ( cling::Interpreter & interp)
inline

Definition at line 139 of file BaseSelectionRule.h.

◆ SetMatchFound()

void BaseSelectionRule::SetMatchFound ( bool match)

Definition at line 515 of file BaseSelectionRule.cxx.

◆ SetSelected()

void BaseSelectionRule::SetSelected ( BaseSelectionRule::ESelect sel)

Definition at line 98 of file BaseSelectionRule.cxx.

Member Data Documentation

◆ fAttributes

AttributesMap_t BaseSelectionRule::fAttributes
private

Definition at line 59 of file BaseSelectionRule.h.

◆ fCXXRecordDecl

const clang::CXXRecordDecl* BaseSelectionRule::fCXXRecordDecl
private

Definition at line 64 of file BaseSelectionRule.h.

◆ fFileName

std::string BaseSelectionRule::fFileName = ""
private

Definition at line 73 of file BaseSelectionRule.h.

◆ fFilePattern

std::string BaseSelectionRule::fFilePattern = ""
private

Definition at line 74 of file BaseSelectionRule.h.

◆ fFileSubPatterns

std::list<std::string> BaseSelectionRule::fFileSubPatterns
private

Definition at line 62 of file BaseSelectionRule.h.

◆ fHasFileNameAttribute

bool BaseSelectionRule::fHasFileNameAttribute = false
private

Definition at line 80 of file BaseSelectionRule.h.

◆ fHasFilePatternAttribute

bool BaseSelectionRule::fHasFilePatternAttribute = false
private

Definition at line 81 of file BaseSelectionRule.h.

◆ fHasFromTypedefAttribute

bool BaseSelectionRule::fHasFromTypedefAttribute = false
private

Definition at line 82 of file BaseSelectionRule.h.

◆ fHasNameAttribute

bool BaseSelectionRule::fHasNameAttribute = false
private

Definition at line 76 of file BaseSelectionRule.h.

◆ fHasPatternAttribute

bool BaseSelectionRule::fHasPatternAttribute = false
private

Definition at line 78 of file BaseSelectionRule.h.

◆ fHasProtoNameAttribute

bool BaseSelectionRule::fHasProtoNameAttribute = false
private

Definition at line 77 of file BaseSelectionRule.h.

◆ fHasProtoPatternAttribute

bool BaseSelectionRule::fHasProtoPatternAttribute = false
private

Definition at line 79 of file BaseSelectionRule.h.

◆ fIndex

long BaseSelectionRule::fIndex
private

Definition at line 56 of file BaseSelectionRule.h.

◆ fInterp

cling::Interpreter* BaseSelectionRule::fInterp
private

Definition at line 66 of file BaseSelectionRule.h.

◆ fIsFromTypedef

bool BaseSelectionRule::fIsFromTypedef = false
private

Definition at line 83 of file BaseSelectionRule.h.

◆ fIsSelected

ESelect BaseSelectionRule::fIsSelected
private

Definition at line 60 of file BaseSelectionRule.h.

◆ fLineNumber

long BaseSelectionRule::fLineNumber =-1
private

Definition at line 57 of file BaseSelectionRule.h.

◆ fMatchFound

bool BaseSelectionRule::fMatchFound
private

Definition at line 63 of file BaseSelectionRule.h.

◆ fName

std::string BaseSelectionRule::fName = ""
private

Definition at line 69 of file BaseSelectionRule.h.

◆ fNArgsToKeep

std::string BaseSelectionRule::fNArgsToKeep = ""
private

Definition at line 75 of file BaseSelectionRule.h.

◆ fPattern

std::string BaseSelectionRule::fPattern = ""
private

Definition at line 70 of file BaseSelectionRule.h.

◆ fProtoName

std::string BaseSelectionRule::fProtoName = ""
private

Definition at line 71 of file BaseSelectionRule.h.

◆ fProtoPattern

std::string BaseSelectionRule::fProtoPattern = ""
private

Definition at line 72 of file BaseSelectionRule.h.

◆ fRequestedType

const clang::Type* BaseSelectionRule::fRequestedType
private

Definition at line 65 of file BaseSelectionRule.h.

◆ fSelFileName

std::string BaseSelectionRule::fSelFileName =""
private

Definition at line 58 of file BaseSelectionRule.h.

◆ fSubPatterns

std::list<std::string> BaseSelectionRule::fSubPatterns
private

Definition at line 61 of file BaseSelectionRule.h.


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