BloombergLP::ball::RuleSet

This class manages a set of unique rule values.

Synopsis

Declared in <ball_ruleset.h>

class RuleSet;

Description

Rules may be added to or removed from the set; however, rules having duplicate values will not be added. For the definition of two rules having the same value, please refer to the function-level documentation associated with the Rule::operator== function.

Type Aliases

NameDescription
MaskType MaskType is an alias for the fundamental integral type used to indicate rule subsets compactly.

Enums

NameDescription
Unnamed enum Rule count constants.

Member Functions

NameDescription
RuleSet [constructor]Constructors
operator= Assign to this object the value of the specified rhs object.
addRule Create a new Rule object having the specified value.
addRules Add each rule in the specified rules to this rule set.
getRuleById Return the address of the rule having the specified id if such a rule exists, and 0 otherwise.
numPredicates Return the total number of predicates in all rules maintained by this object.
numRules Return the number of unique rules maintained in this RuleSet object.
print Format this object to the specified output stream.
removeAllRules Remove every rule in the rule set maintained by this object.
removeRule Remove the rule having the specified value from this rule set.
removeRuleById Remove from this rule set the rule having the specified id.
removeRules Remove each rule in the specified rules from this rule set.
ruleId Return the id of the rule having the specified value if such a rule exists, and a negative value otherwise.
operator BloombergLP::bslmf::NestedTraitDeclaration<RuleSet, UsesBslmaAllocator> Declare that this type uses a bslma allocator.

Static Member Functions

NameDescription
maxNumRules Return the maximum number of rules that can be simultaneously maintained by this object.
printMask Format the specified mask to the specified output stream.

Friends

NameDescription
BloombergLP::ball::operator<<Write the value of the specified rules to the specified output stream.
BloombergLP::ball::operator!=Return true if the specified lhs and rhs rule sets do not have the same value, and false otherwise.
BloombergLP::ball::operator==Return true if the specified lhs and rhs rule sets have the same value, and false otherwise.