Class: GGem::CLI::InvalidCommand

Inherits:
Object
  • Object
show all
Defined in:
lib/ggem/cli/commands.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(name) ⇒ InvalidCommand

Returns a new instance of InvalidCommand.



14
15
16
17
# File 'lib/ggem/cli/commands.rb', line 14

def initialize(name)
  @name  = name
  @clirb = CLIRB.new
end

Instance Attribute Details

#clirbObject (readonly)

Returns the value of attribute clirb.



12
13
14
# File 'lib/ggem/cli/commands.rb', line 12

def clirb
  @clirb
end

#nameObject (readonly)

Returns the value of attribute name.



12
13
14
# File 'lib/ggem/cli/commands.rb', line 12

def name
  @name
end

Instance Method Details

#helpObject



27
28
29
30
31
32
# File 'lib/ggem/cli/commands.rb', line 27

def help
  "Usage: ggem [COMMAND] [options]\n\n" \
  "Options: #{@clirb}\n" \
  "Commands:\n" \
  "#{COMMANDS.to_s.split("\n").map{ |l| "  #{l}" }.join("\n")}\n"
end

#newObject



19
# File 'lib/ggem/cli/commands.rb', line 19

def new; self; end

#run(argv) ⇒ Object

Raises:



21
22
23
24
25
# File 'lib/ggem/cli/commands.rb', line 21

def run(argv)
  @clirb.parse!([@name, argv].flatten.compact)
  raise CLIRB::HelpExit if @name.to_s.empty?
  raise InvalidCommandError, "`#{self.name}` is not a command."
end