Class: Aruba::Platforms::SimpleTable
- Inherits:
-
Object
- Object
- Aruba::Platforms::SimpleTable
- Defined in:
- lib/aruba/platforms/simple_table.rb
Overview
Generate simple table
Instance Method Summary collapse
-
#initialize(hash, opts) ⇒ SimpleTable
constructor
Create.
-
#to_s ⇒ String
Generate table.
Constructor Details
#initialize(hash, opts) ⇒ SimpleTable
Create
17 18 19 20 21 22 |
# File 'lib/aruba/platforms/simple_table.rb', line 17 def initialize(hash, opts) @hash = hash @opts = { sort: true }.merge opts end |
Instance Method Details
#to_s ⇒ String
Generate table
28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
# File 'lib/aruba/platforms/simple_table.rb', line 28 def to_s longest_key = hash.keys.map(&:to_s).max_by(&:length) return "" if longest_key.nil? name_size = longest_key.length rows = hash.map do |k, v| format("# %-*s => %s", name_size, k, v) end if opts[:sort] == true rows.sort.join("\n") else rows.join("\n") end end |