Module: Dry::Logic
- Defined in:
- lib/dry/logic.rb,
lib/dry/logic/rule.rb,
lib/dry/logic/result.rb,
lib/dry/logic/version.rb,
lib/dry/logic/rule/key.rb,
lib/dry/logic/rule/set.rb,
lib/dry/logic/evaluator.rb,
lib/dry/logic/predicate.rb,
lib/dry/logic/rule/attr.rb,
lib/dry/logic/rule/each.rb,
lib/dry/logic/predicates.rb,
lib/dry/logic/result/set.rb,
lib/dry/logic/rule/check.rb,
lib/dry/logic/rule/value.rb,
lib/dry/logic/result/each.rb,
lib/dry/logic/result/multi.rb,
lib/dry/logic/result/named.rb,
lib/dry/logic/result/value.rb,
lib/dry/logic/predicate_set.rb,
lib/dry/logic/rule/negation.rb,
lib/dry/logic/rule_compiler.rb,
lib/dry/logic/rule/composite.rb
Defined Under Namespace
Modules: PredicateSet, Predicates
Classes: Evaluator, Predicate, Result, Rule, RuleCompiler
Constant Summary
collapse
- VERSION =
'0.2.2'.freeze
Class Method Summary
collapse
Class Method Details
.Predicate(block) ⇒ Object
3
4
5
6
7
8
|
# File 'lib/dry/logic/predicate.rb', line 3
def self.Predicate(block)
case block
when Method then Predicate.new(block.name, &block)
else raise ArgumentError, 'predicate needs an :id'
end
end
|
.Result(response, rule, input) ⇒ Object
3
4
5
|
# File 'lib/dry/logic/result.rb', line 3
def self.Result(response, rule, input)
Result[rule].new(response, rule, input)
end
|