diff options
| author | nsfisis <nsfisis@gmail.com> | 2026-05-22 04:19:14 +0900 |
|---|---|---|
| committer | nsfisis <nsfisis@gmail.com> | 2026-05-22 04:19:25 +0900 |
| commit | 2a1696906344cb4da768a940bf8b1f89bbc82b47 (patch) | |
| tree | 9e37f93baaa9858037ab3a25b13a676f07ccb3a9 /crates/shirabe/src/installer.rs | |
| parent | 6739da8a8e271a82d1bf8ca79bba58640ae6e743 (diff) | |
| download | php-shirabe-2a1696906344cb4da768a940bf8b1f89bbc82b47.tar.gz php-shirabe-2a1696906344cb4da768a940bf8b1f89bbc82b47.tar.zst php-shirabe-2a1696906344cb4da768a940bf8b1f89bbc82b47.zip | |
refactor: share Pool via Rc<RefCell>
Convert Pool to Rc<RefCell<Pool>> so Solver, Decisions, and
RuleSetGenerator share it, resolving the todo!() placeholders that
blocked the dependency resolver (Phase C shared ownership).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Diffstat (limited to 'crates/shirabe/src/installer.rs')
| -rw-r--r-- | crates/shirabe/src/installer.rs | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/crates/shirabe/src/installer.rs b/crates/shirabe/src/installer.rs index 8ea0249..3ccb65f 100644 --- a/crates/shirabe/src/installer.rs +++ b/crates/shirabe/src/installer.rs @@ -420,7 +420,7 @@ impl Installer { if self.install && self.execute_operations { // force binaries re-generation in case they are missing - let repository_manager = std::rc::Rc::clone(&self.repository_manager); + let repository_manager = self.repository_manager.clone(); let repository_manager = repository_manager.borrow(); for package in repository_manager.get_local_repository().get_packages() { self.installation_manager @@ -440,7 +440,7 @@ impl Installer { if show_funding { let mut funding_count: i64 = 0; - let repository_manager = std::rc::Rc::clone(&self.repository_manager); + let repository_manager = self.repository_manager.clone(); let repository_manager = repository_manager.borrow(); for package in repository_manager.get_local_repository().get_packages() { if let Some(cp) = package.as_complete_package_interface() { @@ -507,7 +507,7 @@ impl Installer { IndexMap::new(), IndexMap::new(), ); - let repository_manager = std::rc::Rc::clone(&self.repository_manager); + let repository_manager = self.repository_manager.clone(); let repository_manager = repository_manager.borrow(); for repo in repository_manager.get_repositories() { repo_set.add_repository(repo.clone_box())?; @@ -612,7 +612,7 @@ impl Installer { // creating repository set let policy = self.create_policy(true, locked_repository.as_ref()); let mut repository_set = self.create_repository_set(true, &platform_repo, &aliases, None); - let repository_manager = std::rc::Rc::clone(&self.repository_manager); + let repository_manager = self.repository_manager.clone(); let repository_manager = repository_manager.borrow(); let repositories = repository_manager.get_repositories(); for repository in repositories { |
