12#ifndef R__SELECTIONRULES_H 
   13#define R__SELECTIONRULES_H 
   23#include "clang/AST/Decl.h" 
   32   namespace TMetaUtils {
 
   33      class TNormalizedCtxt;
 
   39   template<
class ASSOCIATIVECONTAINER>
 
   41      if (
c1.size() != 
c2.size()) 
return false;
 
   45            if (
"pattern" == 
keyC1 || 
"name" == 
keyC1) 
continue;
 
 
   62   template<
class RULESCOLLECTION>
 
   66      if (
r1.size() != 
r2.size()) 
return false;
 
 
   81                        r2->GetFieldSelectionRules(),
 
   85                        r2->GetMethodSelectionRules(),
 
 
 
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
 
const_iterator begin() const
 
const_iterator end() const
 
The class representing the collection of selection rules.
 
SelectionRules(cling::Interpreter &interp, ROOT::TMetaUtils::TNormalizedCtxt &normCtxt, const std::vector< std::pair< std::string, std::string > > &namesForExclusion)
 
bool HasFunctionSelectionRules() const
 
const BaseSelectionRule * IsLinkdefVarSelected(const clang::VarDecl *D, const std::string &qual_name) const
 
const std::list< ClassSelectionRule > & GetClassSelectionRules() const
 
void GetDeclQualName(const clang::Decl *D, std::string &qual_name) const
 
const BaseSelectionRule * IsVarSelected(const clang::VarDecl *D, const std::string &qual_name) const
 
const BaseSelectionRule * IsFunSelected(const clang::FunctionDecl *D, const std::string &qual_name) const
 
void AddVariableSelectionRule(const VariableSelectionRule &varSel)
 
bool HasEnumSelectionRules() const
 
void AddClassSelectionRule(const ClassSelectionRule &classSel)
 
std::list< VariableSelectionRule > fVariableSelectionRules
List of the global variables selection rules.
 
bool AreAllSelectionRulesUsed() const
 
ESelectionFileTypes fSelectionFileType
 
bool GetFunctionPrototype(const clang::FunctionDecl *F, std::string &prototype) const
 
bool SearchNames(cling::Interpreter &interp)
 
bool GetParentName(const clang::Decl *D, std::string &parent_name, std::string &parent_qual_name) const
 
std::list< FunctionSelectionRule > fFunctionSelectionRules
List of the global functions selection rules.
 
const BaseSelectionRule * IsLinkdefFunSelected(const clang::FunctionDecl *D, const std::string &qual_name) const
 
std::list< EnumSelectionRule > fEnumSelectionRules
List of the enums selection rules.
 
void PrintSelectionRules() const
 
bool GetHasFileNameRule() const
 
ROOT::TMetaUtils::TNormalizedCtxt & fNormCtxt
 
bool HasClassSelectionRules() const
 
bool IsLinkdefFile() const
 
bool GetDeclName(const clang::Decl *D, std::string &name, std::string &qual_name) const
 
const std::list< FunctionSelectionRule > & GetFunctionSelectionRules() const
 
unsigned int Size() const
 
bool fHasFileNameRule
if we have a file name rule, this should be set to true
 
ESelectionFileTypes
Type of selection file.
 
void AddEnumSelectionRule(const EnumSelectionRule &enumSel)
 
const std::list< EnumSelectionRule > & GetEnumSelectionRules() const
 
const BaseSelectionRule * IsMemberSelected(const clang::Decl *D, const std::string &str_name) const
 
bool IsSelectionXMLFile() const
 
const std::list< VariableSelectionRule > & GetVariableSelectionRules() const
 
void ClearSelectionRules()
 
bool IsParentClass(const clang::Decl *D) const
 
const BaseSelectionRule * IsLinkdefEnumSelected(const clang::EnumDecl *D, const std::string &qual_name) const
 
void AddFunctionSelectionRule(const FunctionSelectionRule &funcSel)
 
bool HasVariableSelectionRules() const
 
const BaseSelectionRule * IsEnumSelected(const clang::EnumDecl *D, const std::string &qual_name) const
 
const ClassSelectionRule * IsDeclSelected(const clang::RecordDecl *D, bool includeTypedefRule) const
 
const ClassSelectionRule * IsNamespaceSelected(const clang::Decl *D, const std::string &qual_name) const
 
std::list< ClassSelectionRule > fClassSelectionRules
List of the class selection rules.
 
cling::Interpreter & fInterp
 
void SetHasFileNameRule(bool file_rule)
 
void SetSelectionFileType(ESelectionFileTypes fileType)
 
const BaseSelectionRule * IsLinkdefMethodSelected(const clang::Decl *D, const std::string &qual_name) const
 
const ClassSelectionRule * IsClassSelected(const clang::Decl *D, const std::string &qual_name, bool includeTypedefRule) const
 
tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tb...
 
bool areEqualColl(const RULESCOLLECTION &r1, const RULESCOLLECTION &r2, bool moduloNameOrPattern=false)
 
bool areEqual(const RULE *r1, const RULE *r2, bool moduloNameOrPattern=false)
 
bool areEqualAttributes(const ASSOCIATIVECONTAINER &c1, const ASSOCIATIVECONTAINER &c2, bool moduloNameOrPattern)
 
bool areEqual< ClassSelectionRule >(const ClassSelectionRule *r1, const ClassSelectionRule *r2, bool moduloNameOrPattern)