diff options
Diffstat (limited to 'crates/shirabe-semver/src')
| -rw-r--r-- | crates/shirabe-semver/src/constraint/any_constraint.rs | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/crates/shirabe-semver/src/constraint/any_constraint.rs b/crates/shirabe-semver/src/constraint/any_constraint.rs index b61a36fb..37541deb 100644 --- a/crates/shirabe-semver/src/constraint/any_constraint.rs +++ b/crates/shirabe-semver/src/constraint/any_constraint.rs @@ -118,6 +118,19 @@ impl AnyConstraint { matches!(self, Self::MatchNone(_)) } + /// The pretty string as stored, without the `getPrettyString()` fallback to the + /// constraint's string form. PHP has no such reader — `$prettyString` is protected — so + /// this exists for callers that must round-trip a constraint without inventing a value + /// for the unset case. + pub fn pretty_string(&self) -> Option<&str> { + match self { + Self::Simple(c) => c.pretty_string.as_deref(), + Self::Multi(c) => c.pretty_string.as_deref(), + Self::MatchAll(c) => c.pretty_string.as_deref(), + Self::MatchNone(c) => c.pretty_string.as_deref(), + } + } + /// PHP exposes `ConstraintInterface::setPrettyString()` and defaults the /// pretty string to the constraint's string form when unset. This port takes /// the pretty string at construction instead; this setter exists only so |
