diff options
Diffstat (limited to 'crates/shirabe-semver/src/constraint/constraint_interface.rs')
| -rw-r--r-- | crates/shirabe-semver/src/constraint/constraint_interface.rs | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/crates/shirabe-semver/src/constraint/constraint_interface.rs b/crates/shirabe-semver/src/constraint/constraint_interface.rs index 09536e6..f4bd905 100644 --- a/crates/shirabe-semver/src/constraint/constraint_interface.rs +++ b/crates/shirabe-semver/src/constraint/constraint_interface.rs @@ -22,6 +22,21 @@ pub trait ConstraintInterface: std::fmt::Debug { false } + /// Rust-specific helper: PHP `$c instanceof Constraint` check. + fn is_constraint(&self) -> bool { + false + } + + /// Rust-specific helper: PHP `$c->getOperator()`. Only meaningful when `is_constraint()` is true. + fn get_operator(&self) -> &'static str { + "" + } + + /// Rust-specific helper: PHP `$c->getVersion()`. Only meaningful when `is_constraint()` is true. + fn get_version(&self) -> &str { + "" + } + fn clone_box(&self) -> Box<dyn ConstraintInterface>; fn as_any(&self) -> &dyn std::any::Any; |
