Skip to content
Kward Search API index

Class: Kward::PromptInterface::TerminalHandoffOutput

Inherits:
Object
  • Object
show all
Defined in:
lib/kward/prompt_interface.rb

Overview

Forwards child output while tracking keyboard-protocol resets across chunks.

Instance Method Summary collapse

Constructor Details

#initialize(output, on_keyboard_protocol_restore:) ⇒ TerminalHandoffOutput

Returns a new instance of TerminalHandoffOutput.



148
149
150
151
152
# File 'lib/kward/prompt_interface.rb', line 148

def initialize(output, on_keyboard_protocol_restore:)
  @output = output
  @on_keyboard_protocol_restore = on_keyboard_protocol_restore
  @pending = +"".b
end

Instance Method Details

#flush ⇒ Object



165
166
167
# File 'lib/kward/prompt_interface.rb', line 165

def flush
  @output.flush if @output.respond_to?(:flush)
end


160
161
162
163
# File 'lib/kward/prompt_interface.rb', line 160

def print(*values)
  values.each { |value| write(value) }
  nil
end

#write(value) ⇒ Object



154
155
156
157
158
# File 'lib/kward/prompt_interface.rb', line 154

def write(value)
  value = value.to_s.b
  detect_keyboard_protocol_restore(value)
  @output.write(value)
end