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

Name

Description

MaskType

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

Enums

Name

Description

Unnamed enum

Rule count constants.

Member Functions

Name

Description

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

Name

Description

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

Name

Description

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.

Created with MrDocs