aboutsummaryrefslogtreecommitdiffhomepage
path: root/crates/shirabe/src/repository/installed_array_repository.rs
diff options
context:
space:
mode:
authornsfisis <nsfisis@gmail.com>2026-05-28 22:43:11 +0900
committernsfisis <nsfisis@gmail.com>2026-05-28 22:43:43 +0900
commiteea4efe87e455742ec17881ee93d8095925e8516 (patch)
tree6d242f4fdd0bf32f0494a6fbbd62bce9ed6e1dc7 /crates/shirabe/src/repository/installed_array_repository.rs
parentcc5d73c05a0abca2eebcc8a6afa0b1543ee49850 (diff)
downloadphp-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/repository/installed_array_repository.rs')
-rw-r--r--crates/shirabe/src/repository/installed_array_repository.rs11
1 files changed, 11 insertions, 0 deletions
diff --git a/crates/shirabe/src/repository/installed_array_repository.rs b/crates/shirabe/src/repository/installed_array_repository.rs
index ca2d8c7..1520497 100644
--- a/crates/shirabe/src/repository/installed_array_repository.rs
+++ b/crates/shirabe/src/repository/installed_array_repository.rs
@@ -133,7 +133,18 @@ impl RepositoryInterface for InstalledArrayRepository {
fn as_advisory_provider(&self) -> Option<&dyn AdvisoryProviderInterface> {
None
}
+ fn as_installed_repository_interface(&self) -> Option<&dyn InstalledRepositoryInterface> {
+ Some(self)
+ }
+ fn as_installed_repository_interface_mut(
+ &mut self,
+ ) -> Option<&mut dyn InstalledRepositoryInterface> {
+ Some(self)
+ }
fn as_any(&self) -> &dyn std::any::Any {
todo!()
}
+ fn set_self_handle(&self, weak: crate::repository::RepositoryInterfaceWeakHandle) {
+ self.inner.set_self_handle(weak);
+ }
}