aboutsummaryrefslogtreecommitdiffhomepage
path: root/crates/shirabe/src/repository/vcs/git_driver.rs
diff options
context:
space:
mode:
authornsfisis <nsfisis@gmail.com>2026-05-22 04:19:14 +0900
committernsfisis <nsfisis@gmail.com>2026-05-22 04:19:25 +0900
commit2a1696906344cb4da768a940bf8b1f89bbc82b47 (patch)
tree9e37f93baaa9858037ab3a25b13a676f07ccb3a9 /crates/shirabe/src/repository/vcs/git_driver.rs
parent6739da8a8e271a82d1bf8ca79bba58640ae6e743 (diff)
downloadphp-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/repository/vcs/git_driver.rs')
-rw-r--r--crates/shirabe/src/repository/vcs/git_driver.rs10
1 files changed, 5 insertions, 5 deletions
diff --git a/crates/shirabe/src/repository/vcs/git_driver.rs b/crates/shirabe/src/repository/vcs/git_driver.rs
index 8c0aefd..69b16b6 100644
--- a/crates/shirabe/src/repository/vcs/git_driver.rs
+++ b/crates/shirabe/src/repository/vcs/git_driver.rs
@@ -118,8 +118,8 @@ impl GitDriver {
let mut git_util = GitUtil::new(
self.inner.io.clone_box(),
- std::rc::Rc::clone(&self.inner.config),
- std::rc::Rc::clone(&self.inner.process),
+ self.inner.config.clone(),
+ self.inner.process.clone(),
std::rc::Rc::new(std::cell::RefCell::new(Filesystem::new(None))),
);
if !git_util.sync_mirror(&self.inner.url, &self.repo_dir)? {
@@ -184,8 +184,8 @@ impl GitDriver {
let mut git_util = GitUtil::new(
self.inner.io.clone_box(),
- std::rc::Rc::clone(&self.inner.config),
- std::rc::Rc::clone(&self.inner.process),
+ self.inner.config.clone(),
+ self.inner.process.clone(),
std::rc::Rc::new(std::cell::RefCell::new(Filesystem::new(None))),
);
if !Filesystem::is_local_path(&self.inner.url) {
@@ -451,7 +451,7 @@ impl GitDriver {
let mut git_util = GitUtil::new(
io.clone_box(),
todo!(),
- std::rc::Rc::clone(&process),
+ process.clone(),
std::rc::Rc::new(std::cell::RefCell::new(Filesystem::new(None))),
);
GitUtil::clean_env(&process);