From c86f266f7125de0f45bd8ac7719c6e2311196b54 Mon Sep 17 00:00:00 2001 From: nsfisis Date: Fri, 15 May 2026 23:44:45 +0900 Subject: feat(port): port RootPackageInterface.php --- .../shirabe/src/package/root_package_interface.rs | 50 ++++++++++++++++++++++ 1 file changed, 50 insertions(+) (limited to 'crates/shirabe/src') diff --git a/crates/shirabe/src/package/root_package_interface.rs b/crates/shirabe/src/package/root_package_interface.rs index e1e92ca..7bcc925 100644 --- a/crates/shirabe/src/package/root_package_interface.rs +++ b/crates/shirabe/src/package/root_package_interface.rs @@ -1 +1,51 @@ //! ref: composer/src/Composer/Package/RootPackageInterface.php + +use indexmap::IndexMap; +use shirabe_php_shim::PhpMixed; + +use crate::package::complete_package_interface::CompletePackageInterface; +use crate::package::link::Link; + +pub trait RootPackageInterface: CompletePackageInterface { + fn get_aliases(&self) -> Vec>; + + fn get_minimum_stability(&self) -> &str; + + fn get_stability_flags(&self) -> IndexMap; + + fn get_references(&self) -> IndexMap; + + fn get_prefer_stable(&self) -> bool; + + fn get_config(&self) -> IndexMap; + + fn set_requires(&mut self, requires: Vec); + + fn set_dev_requires(&mut self, dev_requires: Vec); + + fn set_conflicts(&mut self, conflicts: Vec); + + fn set_provides(&mut self, provides: Vec); + + fn set_replaces(&mut self, replaces: Vec); + + fn set_autoload(&mut self, autoload: IndexMap); + + fn set_dev_autoload(&mut self, dev_autoload: IndexMap); + + fn set_stability_flags(&mut self, stability_flags: IndexMap); + + fn set_minimum_stability(&mut self, minimum_stability: String); + + fn set_prefer_stable(&mut self, prefer_stable: bool); + + fn set_config(&mut self, config: IndexMap); + + fn set_references(&mut self, references: IndexMap); + + fn set_aliases(&mut self, aliases: Vec>); + + fn set_suggests(&mut self, suggests: IndexMap); + + fn set_extra(&mut self, extra: IndexMap); +} -- cgit v1.3.1