Class: Ask::Tokens::ActivityRegistry
- Inherits:
-
Object
- Object
- Ask::Tokens::ActivityRegistry
- Defined in:
- lib/ask/tokens/activity_registry.rb
Overview
Stores declared activities by name.
Instance Method Summary collapse
- #clear ⇒ Object
- #each(&block) ⇒ Object
- #fetch(name) ⇒ Object
-
#initialize ⇒ ActivityRegistry
constructor
A new instance of ActivityRegistry.
- #names ⇒ Object
- #register(name, cost: nil, &block) ⇒ Object
Constructor Details
#initialize ⇒ ActivityRegistry
Returns a new instance of ActivityRegistry.
7 8 9 |
# File 'lib/ask/tokens/activity_registry.rb', line 7 def initialize @activities = {} end |
Instance Method Details
#clear ⇒ Object
30 31 32 |
# File 'lib/ask/tokens/activity_registry.rb', line 30 def clear @activities.clear end |
#each(&block) ⇒ Object
26 27 28 |
# File 'lib/ask/tokens/activity_registry.rb', line 26 def each(&block) @activities.each_value(&block) end |
#fetch(name) ⇒ Object
16 17 18 19 20 |
# File 'lib/ask/tokens/activity_registry.rb', line 16 def fetch(name) @activities.fetch(name.to_sym) do raise KeyError, "Unknown activity: #{name.inspect}. Registered: #{@activities.keys.inspect}" end end |
#names ⇒ Object
22 23 24 |
# File 'lib/ask/tokens/activity_registry.rb', line 22 def names @activities.keys end |