Module: Ccp::Commands::Composite::ClassMethods
- Includes:
- Resolvable
- Defined in:
- lib/ccp/commands/composite.rb
Overview
Class Methods
Instance Method Summary collapse
- #append_command(klass, *args, &block) ⇒ Object
- #command(*args) ⇒ Object
- #commands ⇒ Object
- #prepend_command(klass, *args, &block) ⇒ Object
Methods included from Resolvable
Instance Method Details
#append_command(klass, *args, &block) ⇒ Object
34 35 36 37 38 39 40 41 |
# File 'lib/ccp/commands/composite.rb', line 34 def append_command(klass, *args, &block) klass = resolve(klass) if commands.find{|cc| cc.klass == klass and cc.args == args} # ignore: already added else commands << CommandClass.new(klass, args, block) end end |
#command(*args) ⇒ Object
43 44 45 |
# File 'lib/ccp/commands/composite.rb', line 43 def command(*args) append_command(*args) end |
#commands ⇒ Object
47 48 49 |
# File 'lib/ccp/commands/composite.rb', line 47 def commands @commands ||= [] end |
#prepend_command(klass, *args, &block) ⇒ Object
30 31 32 |
# File 'lib/ccp/commands/composite.rb', line 30 def prepend_command(klass, *args, &block) commands.unshift CommandClass.new(resolve(klass), args, block) end |