21 void ClassSelectionRule::AddFieldSelectionRule(
const VariableSelectionRule& field)
23 fFieldSelectionRules.emplace_back(field);
26 bool ClassSelectionRule::HasFieldSelectionRules()
const
28 return !fFieldSelectionRules.empty();
32 const std::list<VariableSelectionRule>& ClassSelectionRule::GetFieldSelectionRules()
const
34 return fFieldSelectionRules;
37 void ClassSelectionRule::AddMethodSelectionRule(
const FunctionSelectionRule& method)
39 fMethodSelectionRules.emplace_back(method);
42 bool ClassSelectionRule::HasMethodSelectionRules()
const
44 return !fMethodSelectionRules.empty();
47 void ClassSelectionRule::Print(std::ostream &out)
const
49 out<<
"\t\tSelected (line "<< GetLineNumber() <<
"): ";
50 switch(GetSelected()){
51 case BaseSelectionRule::kYes: out<<
"Yes"<<std::endl;
53 case BaseSelectionRule::kNo: out<<
"No"<<std::endl;
55 case BaseSelectionRule::kDontCare: out<<
"Don't Care"<<std::endl;
57 default: out<<
"Unspecified"<<std::endl;
59 out<<
"\t\tAttributes: "<<std::endl;
60 PrintAttributes(out,2);
62 if (HasFieldSelectionRules()) {
64 std::list<VariableSelectionRule> fields = GetFieldSelectionRules();
65 std::list<VariableSelectionRule>::iterator fit = fields.begin();
68 for (; fit != fields.end(); ++fit, ++j)
70 out<<
"\t\tField "<<j<<
":"<<std::endl;
75 out<<
"\t\tNo field sel rules"<<std::endl;
77 if (HasMethodSelectionRules()) {
79 std::list<FunctionSelectionRule> methods = GetMethodSelectionRules();
80 std::list<FunctionSelectionRule>::iterator mit = methods.begin();
83 for (; mit != methods.end(); ++mit, ++k)
85 out<<
"\t\tMethod "<<k<<
":"<<std::endl;
90 out<<
"\t\tNo method sel rules"<<std::endl;
95 const std::list<FunctionSelectionRule>& ClassSelectionRule::GetMethodSelectionRules()
const
97 return fMethodSelectionRules;
100 bool ClassSelectionRule::IsInheritable()
const
102 return fIsInheritable;
105 void ClassSelectionRule::SetInheritable(
bool inherit)
107 fIsInheritable = inherit;
110 bool ClassSelectionRule::RequestStreamerInfo()
const
112 return fRequestStreamerInfo;
115 void ClassSelectionRule::SetRequestStreamerInfo(
bool pl)
117 fRequestStreamerInfo = pl;
120 bool ClassSelectionRule::RequestNoStreamer()
const
122 return fRequestNoStreamer;
125 void ClassSelectionRule::SetRequestNoStreamer(
bool mn)
127 fRequestNoStreamer = mn;
130 bool ClassSelectionRule::RequestNoInputOperator()
const
132 return fRequestNoInputOperator;
135 void ClassSelectionRule::SetRequestNoInputOperator(
bool excl)
137 fRequestNoInputOperator = excl;
140 void ClassSelectionRule::SetRequestOnlyTClass(
bool value)
142 fRequestOnlyTClass = value;
145 void ClassSelectionRule::SetRequestProtected(
bool value)
147 fRequestProtected = value;
150 void ClassSelectionRule::SetRequestPrivate(
bool value)
152 fRequestPrivate = value;
155 void ClassSelectionRule::SetRequestedVersionNumber(
int version)
157 fRequestedVersionNumber = version;
160 bool ClassSelectionRule::RequestOnlyTClass()
const
162 return fRequestOnlyTClass;
165 bool ClassSelectionRule::RequestProtected()
const
167 return fRequestProtected;
170 bool ClassSelectionRule::RequestPrivate()
const
172 return fRequestPrivate;
175 int ClassSelectionRule::RequestedVersionNumber()
const
177 return fRequestedVersionNumber;