Parent

GLI::Command

A command to be run, in context of global flags and switches

Public Class Methods

name_as_string(name) click to toggle source
# File lib/gli/command.rb, line 60
def self.name_as_string(name)
  name.to_s
end
new(names,description,arguments_name=nil,long_desc=nil) click to toggle source

Create a new command

names

the name or names of this command (symbol or Array of symbols)

description

description of this command

arguments_name

description of the arguments, or nil if this command doesn’t take arguments

long_desc

a longer description of the command, possibly with multiple lines and text formatting

# File lib/gli/command.rb, line 14
def initialize(names,description,arguments_name=nil,long_desc=nil)
  super(names,description,long_desc)
  @arguments_description = arguments_name || ''
  clear_nexts
end

Public Instance Methods

action(&block) click to toggle source
# File lib/gli/command.rb, line 56
def action(&block)
  @action = block
end
arg_name(name) click to toggle source

describe the argument name of the next flag

# File lib/gli/command.rb, line 39
def arg_name(name); @next_arg_name = name; end
arguments_description() click to toggle source
# File lib/gli/command.rb, line 20
def arguments_description; @arguments_description; end
clear_nexts() click to toggle source
# File lib/gli/command.rb, line 64
def clear_nexts
  @next_desc = nil
  @next_arg_name = nil
  @next_default_value = nil
end
default_value(val) click to toggle source

set the default value of the next flag

# File lib/gli/command.rb, line 41
def default_value(val); @next_default_value = val; end
desc(description) click to toggle source

describe the next switch or flag

# File lib/gli/command.rb, line 37
def desc(description); @next_desc = description; end
execute(global_options,options,arguments) click to toggle source
# File lib/gli/command.rb, line 70
def execute(global_options,options,arguments)
  @action.call(global_options,options,arguments)
end
flag(*names) click to toggle source
# File lib/gli/command.rb, line 43
def flag(*names)
  flag = Flag.new([names].flatten,@next_desc,@next_arg_name,@next_default_value)
  flags[flag.name] = flag
  clear_nexts
end
flags() click to toggle source
# File lib/gli/command.rb, line 33
def flags; @flags ||= {}; end
names() click to toggle source
# File lib/gli/command.rb, line 22
def names
  all_forms
end
switch(*names) click to toggle source

Create a switch

# File lib/gli/command.rb, line 50
def switch(*names)
  switch = Switch.new([names].flatten,@next_desc)
  switches[switch.name] = switch
  clear_nexts
end
switches() click to toggle source
# File lib/gli/command.rb, line 34
def switches; @switches ||= {}; end
usage() click to toggle source
# File lib/gli/command.rb, line 26
def usage
  usage = name.to_s
  usage += ' [options]' if !flags.empty? || !switches.empty?
  usage += ' ' + @arguments_description if @arguments_description
  usage
end

[Validate]

Generated with the Darkfish Rdoc Generator 2.