Class: ShellOpts::Option

Inherits:
Object
  • Object
show all
Defined in:
lib/shellopts/option.rb,
lib/shellopts/dump.rb

Overview

Option models an option as given by the user on the subcommand line. Compiled options (and possibly aggregated) options are stored in the Command#option_values array

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(grammar, name, argument) ⇒ Option

Returns a new instance of Option.



23
24
25
# File 'lib/shellopts/option.rb', line 23

def initialize(grammar, name, argument)
  @grammar, @name, @argument = grammar, name, argument
end

Instance Attribute Details

#argumentObject

Argument value or nil if not present. The value is a String, Integer, or Float depending the on the type of the option



14
15
16
# File 'lib/shellopts/option.rb', line 14

def argument
  @argument
end

#grammarObject (readonly)

Associated Grammar::Option object



7
8
9
# File 'lib/shellopts/option.rb', line 7

def grammar
  @grammar
end

#nameObject (readonly)

The actual name used on the shell command-line (String)



10
11
12
# File 'lib/shellopts/option.rb', line 10

def name
  @name
end

Instance Method Details

#dumpObject



153
154
155
# File 'lib/shellopts/dump.rb', line 153

def dump
  ::Kernel.puts [name, argument].compact.join(" ")
end