From f411daceacad66e0bd774fda7d3c5ef8533cc55c Mon Sep 17 00:00:00 2001 From: nsfisis Date: Tue, 26 May 2026 20:04:02 +0900 Subject: refactor(io): share IOInterface via Rc> handle Co-Authored-By: Claude Opus 4.7 --- crates/shirabe/src/downloader/download_manager.rs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'crates/shirabe/src/downloader/download_manager.rs') diff --git a/crates/shirabe/src/downloader/download_manager.rs b/crates/shirabe/src/downloader/download_manager.rs index f5201cc..83a03c4 100644 --- a/crates/shirabe/src/downloader/download_manager.rs +++ b/crates/shirabe/src/downloader/download_manager.rs @@ -13,6 +13,7 @@ use shirabe_php_shim::{ use crate::downloader::DownloaderInterface; use crate::exception::IrrecoverableDownloadException; use crate::io::IOInterface; +use crate::io::IOInterfaceImmutable; use crate::package::PackageInterface; use crate::util::Filesystem; @@ -20,7 +21,7 @@ use crate::util::Filesystem; #[derive(Debug)] pub struct DownloadManager { /// @var IOInterface - pub(crate) io: Box, + pub(crate) io: std::rc::Rc>, /// @var bool prefer_dist: bool, /// @var bool @@ -40,7 +41,7 @@ impl DownloadManager { /// @param bool $preferSource prefer downloading from source /// @param Filesystem|null $filesystem custom Filesystem object pub fn new( - io: Box, + io: std::rc::Rc>, prefer_source: bool, filesystem: Option>>, ) -> Self { -- cgit v1.3.1