Module: Wongi::Engine::NetworkParts::Collectable
- Included in:
- Wongi::Engine::Network
- Defined in:
- lib/wongi-engine/network/collectable.rb
Instance Method Summary collapse
- #add_collector(collector, name) ⇒ Object
- #add_error_collector ⇒ Object
- #collected_tokens(name) ⇒ Object
- #collection(name) ⇒ Object
- #collectors(name = nil) ⇒ Object
- #error_collectors ⇒ Object
- #errors ⇒ Object
Instance Method Details
#add_collector(collector, name) ⇒ Object
17 18 19 |
# File 'lib/wongi-engine/network/collectable.rb', line 17 def add_collector(collector, name) collectors(name) << collector end |
#add_error_collector ⇒ Object
21 22 23 |
# File 'lib/wongi-engine/network/collectable.rb', line 21 def add_error_collector add_collector collector, :error end |
#collected_tokens(name) ⇒ Object
33 34 35 |
# File 'lib/wongi-engine/network/collectable.rb', line 33 def collected_tokens(name) collectors(name).map { |collector| collector.production.tokens }.flatten end |
#collection(name) ⇒ Object
25 26 27 |
# File 'lib/wongi-engine/network/collectable.rb', line 25 def collection(name) collectors(name).map(&:default_collect).flatten.uniq end |
#collectors(name = nil) ⇒ Object
4 5 6 7 8 9 10 11 |
# File 'lib/wongi-engine/network/collectable.rb', line 4 def collectors(name = nil) @collectors ||= {} if name @collectors[name] ||= [] else @collectors end end |
#error_collectors ⇒ Object
13 14 15 |
# File 'lib/wongi-engine/network/collectable.rb', line 13 def error_collectors collectors :error end |
#errors ⇒ Object
29 30 31 |
# File 'lib/wongi-engine/network/collectable.rb', line 29 def errors error_collectors.map(&:errors).flatten end |