From 7f606f36fef0c0467c3c0db3d0da33af486dae8a Mon Sep 17 00:00:00 2001 From: nsfisis Date: Sun, 17 May 2026 02:25:52 +0900 Subject: feat(port): add stub implementations of shirabe-external-packages --- .../src/composer/semver/compiling_matcher.rs | 22 ++++++++++++++++ .../src/composer/semver/intervals.rs | 29 ++++++++++++++++++++++ .../src/composer/semver/mod.rs | 3 +++ .../src/composer/semver/semver.rs | 16 ++++++++++++ 4 files changed, 70 insertions(+) create mode 100644 crates/shirabe-external-packages/src/composer/semver/compiling_matcher.rs create mode 100644 crates/shirabe-external-packages/src/composer/semver/intervals.rs create mode 100644 crates/shirabe-external-packages/src/composer/semver/mod.rs create mode 100644 crates/shirabe-external-packages/src/composer/semver/semver.rs (limited to 'crates/shirabe-external-packages/src/composer/semver') diff --git a/crates/shirabe-external-packages/src/composer/semver/compiling_matcher.rs b/crates/shirabe-external-packages/src/composer/semver/compiling_matcher.rs new file mode 100644 index 0000000..dea5475 --- /dev/null +++ b/crates/shirabe-external-packages/src/composer/semver/compiling_matcher.rs @@ -0,0 +1,22 @@ +use shirabe_php_shim::PhpMixed; + +#[derive(Debug)] +pub struct CompilingMatcher; + +impl CompilingMatcher { + pub fn r#match(constraint: &dyn std::any::Any, package: &dyn std::any::Any) -> bool { + todo!() + } + + pub fn matches(constraint: &dyn std::any::Any, operator: &str, version: &str) -> bool { + todo!() + } + + pub fn match_(constraint: &dyn std::any::Any, operator: &str, version: &str) -> bool { + todo!() + } + + pub fn clear() { + todo!() + } +} diff --git a/crates/shirabe-external-packages/src/composer/semver/intervals.rs b/crates/shirabe-external-packages/src/composer/semver/intervals.rs new file mode 100644 index 0000000..957436d --- /dev/null +++ b/crates/shirabe-external-packages/src/composer/semver/intervals.rs @@ -0,0 +1,29 @@ +use shirabe_php_shim::PhpMixed; + +#[derive(Debug)] +pub struct Intervals; + +impl Intervals { + pub fn is_subset_of( + constraint_a: &dyn std::any::Any, + constraint_b: &dyn std::any::Any, + ) -> anyhow::Result { + todo!() + } + + pub fn compact_constraint(constraint: &dyn std::any::Any) -> Box { + todo!() + } + + pub fn compact(constraint: &dyn std::any::Any) -> Box { + todo!() + } + + pub fn get(constraint: &dyn std::any::Any) -> anyhow::Result { + todo!() + } + + pub fn clear() { + todo!() + } +} diff --git a/crates/shirabe-external-packages/src/composer/semver/mod.rs b/crates/shirabe-external-packages/src/composer/semver/mod.rs new file mode 100644 index 0000000..800150d --- /dev/null +++ b/crates/shirabe-external-packages/src/composer/semver/mod.rs @@ -0,0 +1,3 @@ +pub mod compiling_matcher; +pub mod intervals; +pub mod semver; diff --git a/crates/shirabe-external-packages/src/composer/semver/semver.rs b/crates/shirabe-external-packages/src/composer/semver/semver.rs new file mode 100644 index 0000000..f467c2c --- /dev/null +++ b/crates/shirabe-external-packages/src/composer/semver/semver.rs @@ -0,0 +1,16 @@ +#[derive(Debug)] +pub struct Semver; + +impl Semver { + pub fn sort(versions: Vec) -> anyhow::Result> { + todo!() + } + + pub fn rsort(versions: Vec) -> Vec { + todo!() + } + + pub fn satisfies(version: &str, constraint: &str) -> bool { + todo!() + } +} -- cgit v1.3.1