diff options
| author | nsfisis <nsfisis@gmail.com> | 2026-05-28 22:43:11 +0900 |
|---|---|---|
| committer | nsfisis <nsfisis@gmail.com> | 2026-05-28 22:43:43 +0900 |
| commit | eea4efe87e455742ec17881ee93d8095925e8516 (patch) | |
| tree | 6d242f4fdd0bf32f0494a6fbbd62bce9ed6e1dc7 /crates/shirabe/src/command/create_project_command.rs | |
| parent | cc5d73c05a0abca2eebcc8a6afa0b1543ee49850 (diff) | |
| download | php-shirabe-eea4efe87e455742ec17881ee93d8095925e8516.tar.gz php-shirabe-eea4efe87e455742ec17881ee93d8095925e8516.tar.zst php-shirabe-eea4efe87e455742ec17881ee93d8095925e8516.zip | |
refactor(repository): introduce Rc<RefCell<_>> handles for repositories
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Diffstat (limited to 'crates/shirabe/src/command/create_project_command.rs')
| -rw-r--r-- | crates/shirabe/src/command/create_project_command.rs | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/crates/shirabe/src/command/create_project_command.rs b/crates/shirabe/src/command/create_project_command.rs index d5a8a0c..c669aa5 100644 --- a/crates/shirabe/src/command/create_project_command.rs +++ b/crates/shirabe/src/command/create_project_command.rs @@ -304,7 +304,7 @@ impl CreateProjectCommand { let _ = &composer_json_repositories_config; let placeholder_existing: IndexMap< String, - Box<dyn crate::repository::RepositoryInterface>, + crate::repository::RepositoryInterfaceHandle, > = IndexMap::new(); let name = RepositoryFactory::generate_repository_name( &PhpMixed::Int(index as i64), @@ -737,12 +737,14 @@ impl CreateProjectCommand { if repositories.is_none() { // TODO(phase-b): default_repos needs &mut RepositoryManager but we hold &RepositoryManager. let _ = rm; - repository_set.add_repository(Box::new(CompositeRepository::new( - RepositoryFactory::default_repos(Some(io.clone()), Some(config.clone()), None)? - .into_iter() - .map(|(_, v)| v) - .collect(), - ))); + repository_set.add_repository(crate::repository::RepositoryInterfaceHandle::new( + CompositeRepository::new( + RepositoryFactory::default_repos(Some(io.clone()), Some(config.clone()), None)? + .into_iter() + .map(|(_, v)| v) + .collect(), + ), + ))?; } else { for repo in repositories.unwrap() { let mut repo_config = |
