summaryrefslogtreecommitdiffstats
path: root/src/repl
diff options
context:
space:
mode:
Diffstat (limited to 'src/repl')
-rw-r--r--src/repl/handler.rs8
-rw-r--r--src/repl/mod.rs4
2 files changed, 6 insertions, 6 deletions
diff --git a/src/repl/handler.rs b/src/repl/handler.rs
index 2057b8b..53cdd98 100644
--- a/src/repl/handler.rs
+++ b/src/repl/handler.rs
@@ -1,4 +1,4 @@
-use crate::client::ChatGptClient;
+use crate::client::Client;
use crate::config::SharedConfig;
use crate::print_now;
use crate::render::render_stream;
@@ -26,7 +26,7 @@ pub enum ReplCmd {
#[allow(clippy::module_name_repetitions)]
pub struct ReplCmdHandler {
- client: ChatGptClient,
+ client: Box<dyn Client>,
config: SharedConfig,
reply: RefCell<String>,
abort: SharedAbortSignal,
@@ -35,7 +35,7 @@ pub struct ReplCmdHandler {
impl ReplCmdHandler {
#[allow(clippy::unnecessary_wraps)]
pub fn init(
- client: ChatGptClient,
+ client: Box<dyn Client>,
config: SharedConfig,
abort: SharedAbortSignal,
) -> Result<Self> {
@@ -59,7 +59,7 @@ impl ReplCmdHandler {
let wg = WaitGroup::new();
let ret = render_stream(
&input,
- &self.client,
+ self.client.as_ref(),
&self.config,
true,
self.abort.clone(),
diff --git a/src/repl/mod.rs b/src/repl/mod.rs
index 2e68528..ce640f8 100644
--- a/src/repl/mod.rs
+++ b/src/repl/mod.rs
@@ -9,7 +9,7 @@ pub use self::abort::*;
pub use self::handler::*;
pub use self::init::Repl;
-use crate::client::ChatGptClient;
+use crate::client::Client;
use crate::config::SharedConfig;
use crate::print_now;
use crate::term;
@@ -35,7 +35,7 @@ pub const REPL_COMMANDS: [(&str, &str); 13] = [
];
impl Repl {
- pub fn run(&mut self, client: ChatGptClient, config: SharedConfig) -> Result<()> {
+ pub fn run(&mut self, client: Box<dyn Client>, config: SharedConfig) -> Result<()> {
let abort = AbortSignal::new();
let handler = ReplCmdHandler::init(client, config, abort.clone())?;
print_now!("Welcome to aichat {}\n", env!("CARGO_PKG_VERSION"));