Class: Solve::Solver::Variable
- Inherits:
-
Object
- Object
- Solve::Solver::Variable
- Defined in:
- lib/solve/solver/variable.rb
Overview
Instance Attribute Summary collapse
-
#package ⇒ Object
readonly
Returns the value of attribute package.
-
#sources ⇒ Object
readonly
Returns the value of attribute sources.
-
#value ⇒ Object
readonly
Returns the value of attribute value.
Instance Method Summary collapse
- #add_source(source) ⇒ Object
- #bind(value) ⇒ Object
- #bound? ⇒ Boolean
-
#initialize(package, source) ⇒ Variable
constructor
A new instance of Variable.
- #last_source ⇒ Object
- #remove_source(source) ⇒ Object
- #unbind ⇒ Object
Constructor Details
#initialize(package, source) ⇒ Variable
Returns a new instance of Variable.
10 11 12 13 14 |
# File 'lib/solve/solver/variable.rb', line 10 def initialize(package, source) @package = package @value = nil @sources = Array(source) end |
Instance Attribute Details
#package ⇒ Object (readonly)
Returns the value of attribute package.
6 7 8 |
# File 'lib/solve/solver/variable.rb', line 6 def package @package end |
#sources ⇒ Object (readonly)
Returns the value of attribute sources.
8 9 10 |
# File 'lib/solve/solver/variable.rb', line 8 def sources @sources end |
#value ⇒ Object (readonly)
Returns the value of attribute value.
7 8 9 |
# File 'lib/solve/solver/variable.rb', line 7 def value @value end |
Instance Method Details
#add_source(source) ⇒ Object
16 17 18 |
# File 'lib/solve/solver/variable.rb', line 16 def add_source(source) @sources << source end |
#bind(value) ⇒ Object
24 25 26 |
# File 'lib/solve/solver/variable.rb', line 24 def bind(value) @value = value end |
#bound? ⇒ Boolean
32 33 34 |
# File 'lib/solve/solver/variable.rb', line 32 def bound? !@value.nil? end |
#last_source ⇒ Object
20 21 22 |
# File 'lib/solve/solver/variable.rb', line 20 def last_source @sources.last end |
#remove_source(source) ⇒ Object
36 37 38 |
# File 'lib/solve/solver/variable.rb', line 36 def remove_source(source) @sources.delete(source) end |
#unbind ⇒ Object
28 29 30 |
# File 'lib/solve/solver/variable.rb', line 28 def unbind @value = nil end |