class Rake::Funnel::Support::ArgumentMapper::Styles::Default

Attributes

prefix[R]
value_separator[R]

Public Class Methods

new() click to toggle source
# File lib/rake/funnel/support/argument_mapper/styles/default.rb, line 11
def initialize
  @prefix = '/'
  @value_separator = ','
end

Public Instance Methods

generate_from(model) click to toggle source
# File lib/rake/funnel/support/argument_mapper/styles/default.rb, line 16
def generate_from(model)
  model.map do |switch|
    switch.values.flatten.map do |value|
      [top_level(switch), nested(value)].reject(&:empty?)
    end
  end.flatten(2)
end

Private Instance Methods

nested(value) click to toggle source
# File lib/rake/funnel/support/argument_mapper/styles/default.rb, line 30
def nested(value)
  res = []
  res << value.key
  res << value_separator unless value.key.nil? || value.value.nil?
  res << value.value
  res.compact
end
top_level(switch) click to toggle source
# File lib/rake/funnel/support/argument_mapper/styles/default.rb, line 26
def top_level(switch)
  [prefix, switch.switch]
end