Class: PrimePrinter::TablePrinter

Inherits:
Object
  • Object
show all
Defined in:
lib/prime_printer/table_printer.rb

Instance Method Summary collapse

Constructor Details

#initialize(primes: PrimePrinter::PrimeGenerator.new.next(10), cell_width: 4, col_delimiter: '|', row_delimiter: '—', empty_value: ' ' * cell_width) ⇒ TablePrinter

Returns a new instance of TablePrinter.



2
3
4
# File 'lib/prime_printer/table_printer.rb', line 2

def initialize(primes: PrimePrinter::PrimeGenerator.new.next(10), cell_width: 4, col_delimiter: '|', row_delimiter: '', empty_value: ' ' * cell_width)
  PrimePrinter::Utils.keyword_args_to_instance_vars_setter.call binding
end

Instance Method Details



6
7
8
9
10
11
12
13
# File 'lib/prime_printer/table_printer.rb', line 6

def print_output
  header = print_row empty_value, primes.map(){ |p| int_to_cell(p) }.join
  puts row_delimiter * header.length

  primes.each do |p_row|
    print_row int_to_cell(p_row), primes.map(){ |p_col| int_to_cell(p_row * p_col) }.join
  end
end