Class: CSP::Constraints::CustomConstraint
- Inherits:
-
CSP::Constraint
- Object
- CSP::Constraint
- CSP::Constraints::CustomConstraint
- Defined in:
- lib/csp/constraints.rb
Instance Attribute Summary collapse
-
#block ⇒ Object
readonly
Returns the value of attribute block.
Attributes inherited from CSP::Constraint
Instance Method Summary collapse
-
#initialize(variables, block) ⇒ CustomConstraint
constructor
A new instance of CustomConstraint.
- #satisfies?(assignment) ⇒ Boolean
Methods inherited from CSP::Constraint
Constructor Details
#initialize(variables, block) ⇒ CustomConstraint
Returns a new instance of CustomConstraint.
24 25 26 27 |
# File 'lib/csp/constraints.rb', line 24 def initialize(variables, block) super(variables) @block = block end |
Instance Attribute Details
#block ⇒ Object (readonly)
Returns the value of attribute block.
22 23 24 |
# File 'lib/csp/constraints.rb', line 22 def block @block end |
Instance Method Details
#satisfies?(assignment) ⇒ Boolean
29 30 31 32 33 34 |
# File 'lib/csp/constraints.rb', line 29 def satisfies?(assignment) values = assignment.values_at(*variables) return true if values.any?(&:nil?) block.call(*values) end |