Class: Hutils::TextVisualizer::LineVisualizer
- Inherits:
-
Object
- Object
- Hutils::TextVisualizer::LineVisualizer
- Includes:
- Term::ANSIColor
- Defined in:
- lib/hutils/text_visualizer.rb
Instance Method Summary collapse
- #display(message, indent: "", time: nil) ⇒ Object
-
#initialize(colors:, compact:, highlights:, out:) ⇒ LineVisualizer
constructor
A new instance of LineVisualizer.
Constructor Details
#initialize(colors:, compact:, highlights:, out:) ⇒ LineVisualizer
Returns a new instance of LineVisualizer.
9 10 11 12 13 14 |
# File 'lib/hutils/text_visualizer.rb', line 9 def initialize(colors:, compact:, highlights:, out:) @colors = colors @compact = compact @highlights = highlights @out = out end |
Instance Method Details
#display(message, indent: "", time: nil) ⇒ Object
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/hutils/text_visualizer.rb', line 16 def display(, indent: "", time: nil) if time @out.print "#{colorize(:cyan, time.iso8601)} " end .to_a.reject { |k, v| k == nil }. sort_by { |k, v| k }. map { |k, v| pair_to_string(k, v) }.each_with_index { |display, i| if @compact @out.print(indent) if i == 0 @out.print("#{display} ") else marker = i == 0 ? "+ " : " " @out.puts "#{indent}#{marker}#{display}" end } @out.puts "" end |