Module: Clamp::Option::Declaration

Includes:
AttributeDeclaration
Included in:
Command
Defined in:
lib/wpb/clamp/option/declaration.rb

Instance Method Summary collapse

Instance Method Details

#declared_optionsObject



25
26
27
# File 'lib/wpb/clamp/option/declaration.rb', line 25

def declared_options
  @declared_options ||= []
end

#documented_optionsObject



29
30
31
# File 'lib/wpb/clamp/option/declaration.rb', line 29

def documented_options
  declared_options + inherited_declared_options
end

#find_option(switch) ⇒ Object



21
22
23
# File 'lib/wpb/clamp/option/declaration.rb', line 21

def find_option(switch)
  recognised_options.find { |o| o.handles?(switch) }
end

#has_options?Boolean

Returns:

  • (Boolean)


17
18
19
# File 'lib/wpb/clamp/option/declaration.rb', line 17

def has_options?
  !documented_options.empty?
end

#option(switches, type, description, opts = {}, &block) ⇒ Object



11
12
13
14
15
# File 'lib/wpb/clamp/option/declaration.rb', line 11

def option(switches, type, description, opts = {}, &block)
  option = Clamp::Option.new(switches, type, description, opts)
  declared_options << option
  define_accessors_for(option, &block)
end

#recognised_optionsObject



33
34
35
# File 'lib/wpb/clamp/option/declaration.rb', line 33

def recognised_options
  documented_options + standard_options
end