Class: EacCli::Parser::Collector

Inherits:
Object
  • Object
show all
Defined in:
lib/eac_cli/parser/collector.rb

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(definition) ⇒ Object

Parameters:



18
19
20
# File 'lib/eac_cli/parser/collector.rb', line 18

common_constructor :definition do
  default_values
end

Class Method Details

.to_data(definition) {|collector| ... } ⇒ Object

Yields:

  • (collector)


9
10
11
12
13
# File 'lib/eac_cli/parser/collector.rb', line 9

def to_data(definition)
  collector = new(definition)
  yield(collector)
  collector.to_data
end

Instance Method Details

#collect(option, value) ⇒ void

This method returns an undefined value.

Parameters:



30
31
32
# File 'lib/eac_cli/parser/collector.rb', line 30

def collect(option, value)
  data[option] = option.build_value(value, data[option])
end

#supplied?(option) ⇒ Boolean

Parameters:

Returns:

  • (Boolean)


36
37
38
# File 'lib/eac_cli/parser/collector.rb', line 36

def supplied?(option)
  data[option].present?
end

#to_dataEacRubyUtils::Struct

Returns:

  • (EacRubyUtils::Struct)


23
24
25
# File 'lib/eac_cli/parser/collector.rb', line 23

def to_data
  ::EacRubyUtils::Struct.new(data.transform_keys(&:identifier))
end