Class: ConsoleAgent::Repl
- Inherits:
-
Object
- Object
- ConsoleAgent::Repl
- Defined in:
- lib/console_agent/repl.rb
Instance Method Summary collapse
- #explain(query) ⇒ Object
- #init_guide ⇒ Object
-
#initialize(binding_context) ⇒ Repl
constructor
A new instance of Repl.
-
#instance_variable_get(name) ⇒ Object
Expose engine internals for specs that inspect state.
-
#instance_variable_set(name, value) ⇒ Object
Allow specs to set internal state.
- #interactive ⇒ Object
- #one_shot(query) ⇒ Object
- #resume(session) ⇒ Object
Constructor Details
#initialize(binding_context) ⇒ Repl
Returns a new instance of Repl.
6 7 8 9 10 |
# File 'lib/console_agent/repl.rb', line 6 def initialize(binding_context) @binding_context = binding_context @channel = Channel::Console.new @engine = ConversationEngine.new(binding_context: binding_context, channel: @channel) end |
Instance Method Details
#explain(query) ⇒ Object
16 17 18 |
# File 'lib/console_agent/repl.rb', line 16 def explain(query) @engine.explain(query) end |
#init_guide ⇒ Object
20 21 22 |
# File 'lib/console_agent/repl.rb', line 20 def init_guide @engine.init_guide end |
#instance_variable_get(name) ⇒ Object
Expose engine internals for specs that inspect state
33 34 35 36 37 38 39 40 41 42 |
# File 'lib/console_agent/repl.rb', line 33 def instance_variable_get(name) case name when :@history @engine.history when :@executor @engine.instance_variable_get(:@executor) else super end end |
#instance_variable_set(name, value) ⇒ Object
Allow specs to set internal state
45 46 47 48 49 50 51 52 |
# File 'lib/console_agent/repl.rb', line 45 def instance_variable_set(name, value) case name when :@history @engine.instance_variable_set(:@history, value) else super end end |
#interactive ⇒ Object
24 25 26 |
# File 'lib/console_agent/repl.rb', line 24 def interactive @channel.interactive_loop(@engine) end |
#one_shot(query) ⇒ Object
12 13 14 |
# File 'lib/console_agent/repl.rb', line 12 def one_shot(query) @engine.one_shot(query) end |
#resume(session) ⇒ Object
28 29 30 |
# File 'lib/console_agent/repl.rb', line 28 def resume(session) @channel.resume_interactive(@engine, session) end |