class Mutiny::Output::Table

Public Class Methods

new() click to toggle source
# File lib/mutiny/output/table.rb, line 4
def initialize
  @rows = []
end

Public Instance Methods

add_row(cells) click to toggle source
# File lib/mutiny/output/table.rb, line 12
def add_row(cells)
  @rows << cells
end
add_rows(rows) click to toggle source
# File lib/mutiny/output/table.rb, line 8
def add_rows(rows)
  rows.each { |r| add_row(r) }
end
cell_to_s(cell, column_index) click to toggle source
# File lib/mutiny/output/table.rb, line 26
def cell_to_s(cell, column_index)
  cell.to_s.ljust(width_for_column(column_index))
end
row_to_s(cells) click to toggle source
# File lib/mutiny/output/table.rb, line 20
def row_to_s(cells)
  "| " +
    cells.each_with_index.map { |cell, index| cell_to_s(cell, index) }.join(" | ") +
    " |"
end
to_s() click to toggle source
# File lib/mutiny/output/table.rb, line 16
def to_s
  @rows.map { |r| row_to_s(r) }.join("\n")
end
width_for_column(index) click to toggle source
# File lib/mutiny/output/table.rb, line 30
def width_for_column(index)
  @rows.map { |r| r[index].to_s.size }.max
end