Class: Roby::Disposable
Overview
Basic disposable adaptor for blocks and other disposables
Defined Under Namespace
Classes: Null
Instance Method Summary collapse
- #dispose ⇒ Object
- #disposed? ⇒ Boolean
-
#initialize(*disposables, &block) ⇒ Disposable
constructor
A new instance of Disposable.
Constructor Details
#initialize(*disposables, &block) ⇒ Disposable
Returns a new instance of Disposable.
6 7 8 9 10 |
# File 'lib/roby/disposable.rb', line 6 def initialize(*disposables, &block) @disposables = disposables @block = block @disposed = false end |
Instance Method Details
#dispose ⇒ Object
16 17 18 19 20 21 22 23 24 25 |
# File 'lib/roby/disposable.rb', line 16 def dispose return if disposed? @disposables.delete_if do |d| d.dispose true end @block&.call @disposed = true end |
#disposed? ⇒ Boolean
12 13 14 |
# File 'lib/roby/disposable.rb', line 12 def disposed? @disposed end |