diff options
| author | nsfisis <nsfisis@gmail.com> | 2026-05-14 19:45:41 +0900 |
|---|---|---|
| committer | nsfisis <nsfisis@gmail.com> | 2026-05-14 19:45:41 +0900 |
| commit | 422a5e6f74eb55bd522772d03a7910591e7ea332 (patch) | |
| tree | b9f54067fb75be6754d3b828c9c17fb97efffe2b /crates/shirabe/src/repository | |
| parent | 2ae4bfdd31dc6d2f0046f8c93a74ac6c0a4f59e9 (diff) | |
| download | php-shirabe-422a5e6f74eb55bd522772d03a7910591e7ea332.tar.gz php-shirabe-422a5e6f74eb55bd522772d03a7910591e7ea332.tar.zst php-shirabe-422a5e6f74eb55bd522772d03a7910591e7ea332.zip | |
feat(port): port WritableArrayRepository.php
Diffstat (limited to 'crates/shirabe/src/repository')
| -rw-r--r-- | crates/shirabe/src/repository/writable_array_repository.rs | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/crates/shirabe/src/repository/writable_array_repository.rs b/crates/shirabe/src/repository/writable_array_repository.rs index 41ae657..54e4b04 100644 --- a/crates/shirabe/src/repository/writable_array_repository.rs +++ b/crates/shirabe/src/repository/writable_array_repository.rs @@ -1 +1,36 @@ //! ref: composer/src/Composer/Repository/WritableArrayRepository.php + +use anyhow::Result; +use crate::installer::installation_manager::InstallationManager; +use crate::repository::array_repository::ArrayRepository; + +#[derive(Debug)] +pub struct WritableArrayRepository { + inner: ArrayRepository, + pub(crate) dev_package_names: Vec<String>, + dev_mode: Option<bool>, +} + +impl WritableArrayRepository { + /// Returns true if dev requirements were installed, false if --no-dev was used, None if yet unknown. + pub fn get_dev_mode(&self) -> Option<bool> { + self.dev_mode + } + + pub fn set_dev_package_names(&mut self, dev_package_names: Vec<String>) { + self.dev_package_names = dev_package_names; + } + + pub fn get_dev_package_names(&self) -> &Vec<String> { + &self.dev_package_names + } + + pub fn write(&mut self, dev_mode: bool, _installation_manager: &InstallationManager) -> Result<()> { + self.dev_mode = Some(dev_mode); + Ok(()) + } + + pub fn reload(&mut self) { + self.dev_mode = None; + } +} |
