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/repository/artifact_repository.rs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'crates/shirabe/src/repository/artifact_repository.rs') diff --git a/crates/shirabe/src/repository/artifact_repository.rs b/crates/shirabe/src/repository/artifact_repository.rs index eff8fef..1509de3 100644 --- a/crates/shirabe/src/repository/artifact_repository.rs +++ b/crates/shirabe/src/repository/artifact_repository.rs @@ -9,6 +9,7 @@ use shirabe_php_shim::{ }; use crate::io::IOInterface; +use crate::io::IOInterfaceImmutable; use crate::json::JsonFile; use crate::package::BasePackage; use crate::package::loader::ArrayLoader; @@ -24,7 +25,7 @@ pub struct ArtifactRepository { pub(crate) loader: Box, pub(crate) lookup: String, pub(crate) repo_config: IndexMap, - io: Box, + io: std::rc::Rc>, } impl std::fmt::Debug for ArtifactRepository { @@ -39,7 +40,7 @@ impl std::fmt::Debug for ArtifactRepository { impl ArtifactRepository { pub fn new( repo_config: IndexMap, - io: Box, + io: std::rc::Rc>, ) -> anyhow::Result { if !extension_loaded("zip") { return Err(RuntimeException { -- cgit v1.3.1