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:



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

common_constructor :definition do
  default_values
end

Class Method Details

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

Yields:

  • (collector)


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

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:



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

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

#supplied?(option) ⇒ Boolean

Parameters:

Returns:

  • (Boolean)


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

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

#to_dataEacRubyUtils::Struct

Returns:

  • (EacRubyUtils::Struct)


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

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