Class: ActiveRecord::Bitemporal::Visualizer::Figure
- Inherits:
-
Array
- Object
- Array
- ActiveRecord::Bitemporal::Visualizer::Figure
- Defined in:
- lib/activerecord-bitemporal/visualizer.rb
Overview
Figure is a two-dimensional array holding plotted lines and columns
Instance Method Summary collapse
Instance Method Details
#print(str, line: 0, column: 0) ⇒ Object
7 8 9 10 11 12 13 14 15 |
# File 'lib/activerecord-bitemporal/visualizer.rb', line 7 def print(str, line: 0, column: 0) self[line] ||= [] str.each_char.with_index(column) do |c, i| # The `#` represents a zero-length rectangle and should not be overwritten with lines next if self[line][i] == '#' && (c == '+' || c == '|' || c == '-') self[line][i] = c end end |
#to_s ⇒ Object
17 18 19 |
# File 'lib/activerecord-bitemporal/visualizer.rb', line 17 def to_s map { |l| l&.map { |c| c || ' ' }&.join }.join("\n") end |