diff options
| author | 魏曹先生 <1992414357@qq.com> | 2026-06-01 12:55:23 +0800 |
|---|---|---|
| committer | 魏曹先生 <1992414357@qq.com> | 2026-06-01 12:55:23 +0800 |
| commit | 1ab19e8765ea2ed62c8a41113d84867facaabf08 (patch) | |
| tree | 1c81d759d195daf0275b031929292573f2b483fd /mingling/src/setups/repl_basic.rs | |
| parent | 94baeaca074dd8b12d16180119cac09f453c5e85 (diff) | |
Change `ProgramSetup::setup` to consume `self` instead of borrow
Diffstat (limited to 'mingling/src/setups/repl_basic.rs')
| -rw-r--r-- | mingling/src/setups/repl_basic.rs | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/mingling/src/setups/repl_basic.rs b/mingling/src/setups/repl_basic.rs index fbb806e..8b9b83f 100644 --- a/mingling/src/setups/repl_basic.rs +++ b/mingling/src/setups/repl_basic.rs @@ -8,7 +8,7 @@ impl<C> ProgramSetup<C> for BasicREPLReadlineSetup where C: ProgramCollect<Enum = C>, { - fn setup(&mut self, program: &mut Program<C>) { + fn setup(self, program: &mut Program<C>) { program.with_hook(ProgramHook::empty().on_repl_readline(|| readline().ok())); } } @@ -39,7 +39,7 @@ impl<C> ProgramSetup<C> for BasicREPLPromptSetup where C: ProgramCollect<Enum = C>, { - fn setup(&mut self, program: &mut Program<C>) { + fn setup(self, program: &mut Program<C>) { match self { BasicREPLPromptSetup::Prompt(prompt) => { static PROMPT: std::sync::OnceLock<String> = std::sync::OnceLock::new(); @@ -52,7 +52,7 @@ where } BasicREPLPromptSetup::Func(f) => { static FUNC: std::sync::OnceLock<fn() -> String> = std::sync::OnceLock::new(); - let _ = FUNC.set(*f); + let _ = FUNC.set(f); fn print_func_prompt() { print!("{}", FUNC.get().unwrap()()); let _ = std::io::stdout().flush(); @@ -69,7 +69,7 @@ impl<C> ProgramSetup<C> for BasicREPLOutputSetup where C: ProgramCollect<Enum = C>, { - fn setup(&mut self, program: &mut Program<C>) { + fn setup(self, program: &mut Program<C>) { program.with_hook(ProgramHook::empty().on_repl_receive_result(|r| { if !r.is_empty() { println!("{}", r.trim()) |
