pub struct RegexSetValid(/* private fields */);Expand description
A valid, compiled regex pattern set.
This contract ensures multiple regex patterns compile successfully and can be used for efficient multi-pattern matching.
§Kani Verification
In Kani mode, uses PhantomData and symbolic validation. Trusts regex crate’s compilation logic, verifies only wrapper invariants.
Implementations§
Source§impl RegexSetValid
impl RegexSetValid
Sourcepub fn new<I, S>(patterns: I) -> Result<Self, ValidationError>
pub fn new<I, S>(patterns: I) -> Result<Self, ValidationError>
Create a new RegexSetValid from pattern strings.
§Errors
Returns ValidationError::RegexInvalid if any pattern cannot be compiled.
Sourcepub fn from_regex_set(regex_set: RegexSet) -> Self
pub fn from_regex_set(regex_set: RegexSet) -> Self
Create a new RegexSetValid from an existing RegexSet.
Sourcepub fn into_inner(self) -> RegexSet
pub fn into_inner(self) -> RegexSet
Unwrap the RegexSet.
Trait Implementations§
Source§impl Clone for RegexSetValid
impl Clone for RegexSetValid
Source§fn clone(&self) -> RegexSetValid
fn clone(&self) -> RegexSetValid
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for RegexSetValid
impl Debug for RegexSetValid
Source§impl Elicitation for RegexSetValid
impl Elicitation for RegexSetValid
Source§async fn elicit<C: ElicitCommunicator>(communicator: &C) -> ElicitResult<Self>
async fn elicit<C: ElicitCommunicator>(communicator: &C) -> ElicitResult<Self>
Elicit a value of this type from the user via style-aware client. Read more
Source§fn elicit_checked(
peer: Peer<RoleServer>,
) -> impl Future<Output = ElicitResult<Self>> + Send
fn elicit_checked( peer: Peer<RoleServer>, ) -> impl Future<Output = ElicitResult<Self>> + Send
Server-side elicitation via MCP peer. Read more
Source§fn with_style(style: Self::Style) -> ElicitBuilder<Self>
fn with_style(style: Self::Style) -> ElicitBuilder<Self>
Create a builder for one-off style override. Read more
Source§fn elicit_proven<C: ElicitCommunicator>(
communicator: &C,
) -> impl Future<Output = ElicitResult<(Self, Established<Is<Self>>)>> + Send
fn elicit_proven<C: ElicitCommunicator>( communicator: &C, ) -> impl Future<Output = ElicitResult<(Self, Established<Is<Self>>)>> + Send
Elicit a value with proof it inhabits type Self. Read more
Source§fn kani_proof() -> TokenStream
fn kani_proof() -> TokenStream
Generate a Kani symbolic execution proof harness for this type. Read more
Source§fn verus_proof() -> TokenStream
fn verus_proof() -> TokenStream
Generate a Verus specification proof for this type. Read more
Source§fn creusot_proof() -> TokenStream
fn creusot_proof() -> TokenStream
Generate a Creusot contract proof for this type. Read more
Source§fn prusti_proof() -> TokenStream
fn prusti_proof() -> TokenStream
Generate a Prusti separation logic proof for this type. Read more
Auto Trait Implementations§
impl Freeze for RegexSetValid
impl RefUnwindSafe for RegexSetValid
impl Send for RegexSetValid
impl Sync for RegexSetValid
impl Unpin for RegexSetValid
impl UnsafeUnpin for RegexSetValid
impl UnwindSafe for RegexSetValid
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<T> WithContract for T
impl<T> WithContract for T
Source§fn with_contract<C>(contract: C) -> ContractedElicitation<Self, C>
fn with_contract<C>(contract: C) -> ContractedElicitation<Self, C>
Attach a contract to this type’s elicitation. Read more