Module: EacCli::RunnerWith::OutputItem

Defined in:
lib/eac_cli/runner_with/output_item.rb,
lib/eac_cli/runner_with/output_item/csv_formatter.rb,
lib/eac_cli/runner_with/output_item/base_formatter.rb,
lib/eac_cli/runner_with/output_item/yaml_formatter.rb,
lib/eac_cli/runner_with/output_item/asciidoc_formatter.rb

Defined Under Namespace

Classes: AsciidocFormatter, BaseFormatter, CsvFormatter, YamlFormatter

Constant Summary collapse

FORMATS =
%w[asciidoc csv yaml].freeze

Instance Method Summary collapse

Instance Method Details

#formatsHash<String, Class>

Returns:

  • (Hash<String, Class>)


33
34
35
36
37
# File 'lib/eac_cli/runner_with/output_item.rb', line 33

def formats
  FORMATS.to_h do |e|
    [e, ::EacCli::RunnerWith::OutputItem.const_get("#{e.camelize}Formatter")]
  end
end

#formatterEacCli::RunnerWith::OutputList::BaseFormatter



23
24
25
# File 'lib/eac_cli/runner_with/output_item.rb', line 23

def formatter
  formatter_class.new(item_hash)
end

#formatter_classClass

Returns:

  • (Class)


28
29
30
# File 'lib/eac_cli/runner_with/output_item.rb', line 28

def formatter_class
  formats.fetch(parsed.format)
end

#help_extra_textHash<String, Enumerable<String>]

Returns Hash<String, Enumerable<String>].

Returns:

  • (Hash<String, Enumerable<String>])

    Hash<String, Enumerable<String>]



40
41
42
# File 'lib/eac_cli/runner_with/output_item.rb', line 40

def help_extra_text
  help_list_section('Formats', formats.keys.sort)
end

#output_contentString

Returns:

  • (String)


18
19
20
# File 'lib/eac_cli/runner_with/output_item.rb', line 18

def output_content
  formatter.to_output
end