Class: Gm::Notepad::LineRenderer
- Inherits:
-
Object
- Object
- Gm::Notepad::LineRenderer
- Defined in:
- lib/gm/notepad/line_renderer.rb
Overview
Responsible for rendering lines to the corresponding buffers
Instance Method Summary collapse
- #call(line, to_output: false, to_interactive: true, as_of: Time.now) ⇒ Object
- #close! ⇒ Object
-
#initialize(with_timestamp: false, defer_output:, output_buffer: default_output_buffer, interactive_buffer: default_interactive_buffer) {|_self| ... } ⇒ LineRenderer
constructor
A new instance of LineRenderer.
Constructor Details
#initialize(with_timestamp: false, defer_output:, output_buffer: default_output_buffer, interactive_buffer: default_interactive_buffer) {|_self| ... } ⇒ LineRenderer
Returns a new instance of LineRenderer.
6 7 8 9 10 11 12 13 |
# File 'lib/gm/notepad/line_renderer.rb', line 6 def initialize(with_timestamp: false, defer_output:, output_buffer: default_output_buffer, interactive_buffer: default_interactive_buffer) @output_buffer = output_buffer @interactive_buffer = interactive_buffer @with_timestamp = @defer_output = defer_output @lines = [] yield(self) if block_given? end |
Instance Method Details
#call(line, to_output: false, to_interactive: true, as_of: Time.now) ⇒ Object
15 16 17 18 |
# File 'lib/gm/notepad/line_renderer.rb', line 15 def call(line, to_output: false, to_interactive: true, as_of: Time.now) render_output(line, defer_output: defer_output, as_of: as_of) if to_output render_interactive(line) if to_interactive end |
#close! ⇒ Object
20 21 22 23 24 25 26 |
# File 'lib/gm/notepad/line_renderer.rb', line 20 def close! if defer_output @lines.each do |line| output_buffer.puts(line) end end end |