From 7f83e785a77fbdbcada9c6714703d4e5801af82a Mon Sep 17 00:00:00 2001 From: nsfisis Date: Fri, 29 May 2026 00:16:56 +0900 Subject: refactor(io): unify IOInterface params to Rc> Co-Authored-By: Claude Opus 4.7 (1M context) --- crates/shirabe/src/command/status_command.rs | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) (limited to 'crates/shirabe/src/command/status_command.rs') diff --git a/crates/shirabe/src/command/status_command.rs b/crates/shirabe/src/command/status_command.rs index 9f66adf..dba4cc8 100644 --- a/crates/shirabe/src/command/status_command.rs +++ b/crates/shirabe/src/command/status_command.rs @@ -8,6 +8,7 @@ use shirabe_external_packages::symfony::component::console::output::OutputInterf use crate::command::{BaseCommand, BaseCommandData, HasBaseCommandData}; use crate::console::input::InputOption; use crate::io::IOInterface; +use crate::io::IOInterfaceImmutable; use crate::package::dumper::ArrayDumper; use crate::package::version::VersionGuesser; use crate::package::version::VersionParser; @@ -86,10 +87,7 @@ impl StatusCommand { fn do_execute(&mut self, input: &dyn InputInterface) -> Result { let composer = self.require_composer(None, None)?; let mut composer = crate::command::composer_full_mut(&composer); - // TODO(phase-b): release the &mut self borrow held by get_io via clone_box. - let io_box = self.get_io().clone(); - let io_ref = io_box.borrow(); - let io: &dyn IOInterface = &*io_ref; + let io = self.get_io().clone(); let mut errors: IndexMap = IndexMap::new(); let mut unpushed_changes: IndexMap = IndexMap::new(); @@ -104,14 +102,14 @@ impl StatusCommand { .map(std::rc::Rc::clone) .unwrap_or_else(|| { std::rc::Rc::new(std::cell::RefCell::new(ProcessExecutor::new(Some( - io_box.clone(), + io.clone(), )))) }); let mut guesser = VersionGuesser::new( composer.get_config(), process_executor.clone(), parser.clone(), - Some(io_box.clone()), + Some(io.clone()), ); let dumper = ArrayDumper::new(); -- cgit v1.3.1