Class: Mobx::Autorun
- Inherits:
-
Object
- Object
- Mobx::Autorun
- Defined in:
- lib/mobx/autorun.rb
Instance Attribute Summary collapse
-
#disposed ⇒ Object
readonly
Returns the value of attribute disposed.
-
#observables ⇒ Object
readonly
Returns the value of attribute observables.
Instance Method Summary collapse
- #call ⇒ Object
- #dispose ⇒ Object
-
#initialize(block) ⇒ Autorun
constructor
A new instance of Autorun.
- #register_observable(observable) ⇒ Object
Constructor Details
#initialize(block) ⇒ Autorun
Returns a new instance of Autorun.
5 6 7 8 9 |
# File 'lib/mobx/autorun.rb', line 5 def initialize(block) @block = block @observables = [] @disposed = false end |
Instance Attribute Details
#disposed ⇒ Object (readonly)
Returns the value of attribute disposed.
3 4 5 |
# File 'lib/mobx/autorun.rb', line 3 def disposed @disposed end |
#observables ⇒ Object (readonly)
Returns the value of attribute observables.
3 4 5 |
# File 'lib/mobx/autorun.rb', line 3 def observables @observables end |
Instance Method Details
#call ⇒ Object
11 12 13 |
# File 'lib/mobx/autorun.rb', line 11 def call @block.call unless disposed end |
#dispose ⇒ Object
25 26 27 28 29 |
# File 'lib/mobx/autorun.rb', line 25 def dispose @observables.each { |observable| observable.dispose(self) } @observables = [] @disposed = true end |
#register_observable(observable) ⇒ Object
15 16 17 18 19 20 21 22 23 |
# File 'lib/mobx/autorun.rb', line 15 def register_observable(observable) raise 'Trying to register a disposed Autorun' if disposed unless @observables.include?(observable) @observables << observable @observables.uniq! observable.register_observer(self) end end |