aboutsummaryrefslogtreecommitdiffhomepage
path: root/crates/shirabe/src/repository
diff options
context:
space:
mode:
authornsfisis <nsfisis@gmail.com>2026-05-12 03:16:54 +0900
committernsfisis <nsfisis@gmail.com>2026-05-12 03:16:54 +0900
commitc812babb8dec19b2860678022cc0e8a702324b28 (patch)
tree1234ad53664ea82a65a71e19a00b5f0b6c07691b /crates/shirabe/src/repository
parent6a804d9206164a10a583a8b097d531af9984631a (diff)
downloadphp-shirabe-c812babb8dec19b2860678022cc0e8a702324b28.tar.gz
php-shirabe-c812babb8dec19b2860678022cc0e8a702324b28.tar.zst
php-shirabe-c812babb8dec19b2860678022cc0e8a702324b28.zip
feat(port): port InstalledFilesystemRepository.php
Diffstat (limited to 'crates/shirabe/src/repository')
-rw-r--r--crates/shirabe/src/repository/installed_filesystem_repository.rs24
1 files changed, 24 insertions, 0 deletions
diff --git a/crates/shirabe/src/repository/installed_filesystem_repository.rs b/crates/shirabe/src/repository/installed_filesystem_repository.rs
index 85332de..9a8bb31 100644
--- a/crates/shirabe/src/repository/installed_filesystem_repository.rs
+++ b/crates/shirabe/src/repository/installed_filesystem_repository.rs
@@ -1 +1,25 @@
//! ref: composer/src/Composer/Repository/InstalledFilesystemRepository.php
+
+use crate::repository::filesystem_repository::FilesystemRepository;
+use crate::repository::installed_repository_interface::InstalledRepositoryInterface;
+
+#[derive(Debug)]
+pub struct InstalledFilesystemRepository {
+ inner: FilesystemRepository,
+}
+
+impl InstalledFilesystemRepository {
+ pub fn get_repo_name(&self) -> String {
+ format!("installed {}", self.inner.get_repo_name())
+ }
+}
+
+impl InstalledRepositoryInterface for InstalledFilesystemRepository {
+ fn get_dev_mode(&self) -> Option<bool> {
+ self.inner.get_dev_mode()
+ }
+
+ fn is_fresh(&self) -> bool {
+ !self.inner.file.exists()
+ }
+}