Module: Cascading::Registerable
Overview
A module to add auto-registration capability
Instance Method Summary collapse
Instance Method Details
#add(name, instance) ⇒ Object
106 107 108 109 110 |
# File 'lib/cascading/base.rb', line 106 def add(name, instance) @registered ||= {} warn "WARNING: Node named '#{name}' already registered in #{self}" if @registered[name] @registered[name] = instance end |
#all ⇒ Object
89 90 91 |
# File 'lib/cascading/base.rb', line 89 def all @registered.nil? ? [] : @registered.values end |
#get(key) ⇒ Object
93 94 95 96 97 98 99 100 |
# File 'lib/cascading/base.rb', line 93 def get(key) if key.is_a? self return key else @registered ||= {} return @registered[key] end end |
#reset ⇒ Object
102 103 104 |
# File 'lib/cascading/base.rb', line 102 def reset @registered.clear if @registered end |