Class: Dry::Logic::Rule::Group
- Inherits:
-
Dry::Logic::Rule
- Object
- Dry::Logic::Rule
- Dry::Logic::Rule::Group
- Defined in:
- lib/dry/logic/rule/group.rb
Instance Attribute Summary collapse
-
#rules ⇒ Object
readonly
Returns the value of attribute rules.
Attributes inherited from Dry::Logic::Rule
Instance Method Summary collapse
- #call(*input) ⇒ Object
-
#initialize(identifier, predicate) ⇒ Group
constructor
A new instance of Group.
- #type ⇒ Object
Methods inherited from Dry::Logic::Rule
#and, #curry, #negation, #new, #or, #predicate_id, #then, #to_ary, #xor
Constructor Details
#initialize(identifier, predicate) ⇒ Group
Returns a new instance of Group.
6 7 8 9 10 |
# File 'lib/dry/logic/rule/group.rb', line 6 def initialize(identifier, predicate) name, rules = identifier.to_a.first @rules = rules super(name, predicate) end |
Instance Attribute Details
#rules ⇒ Object (readonly)
Returns the value of attribute rules.
4 5 6 |
# File 'lib/dry/logic/rule/group.rb', line 4 def rules @rules end |
Instance Method Details
#call(*input) ⇒ Object
12 13 14 |
# File 'lib/dry/logic/rule/group.rb', line 12 def call(*input) Logic.Result(input, predicate.(*input), self) end |
#type ⇒ Object
16 17 18 |
# File 'lib/dry/logic/rule/group.rb', line 16 def type :group end |