From 1921f173ea219cb4b25847294d2d3fa465550fbb Mon Sep 17 00:00:00 2001 From: nsfisis Date: Mon, 25 May 2026 00:58:20 +0900 Subject: refactor(package): introduce Rc> handles for packages PHP packages have reference semantics, so introduce shared-ownership handles over an AnyPackage enum (PackageInterfaceHandle and friends) and replace Box throughout. Co-Authored-By: Claude Opus 4.7 (1M context) --- crates/shirabe/src/console/application.rs | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'crates/shirabe/src/console/application.rs') diff --git a/crates/shirabe/src/console/application.rs b/crates/shirabe/src/console/application.rs index 4bf9197..0b04e26 100644 --- a/crates/shirabe/src/console/application.rs +++ b/crates/shirabe/src/console/application.rs @@ -639,14 +639,18 @@ impl Application { // TODO(phase-b): build_package_map needs &mut InstallationManager // but get_composer returns &Composer; skip until shared ownership is settled. let package_map: Vec<( - Box, + crate::package::PackageInterfaceHandle, Option, )> = todo!( "build_package_map requires &mut InstallationManager" ); let map = generator.parse_autoloads( package_map, - &*root_package, + root_package + .as_rc() + .borrow() + .as_root_package_interface() + .unwrap(), PhpMixed::Bool(false), ); -- cgit v1.3.1