pub struct UsizeNonZero(/* private fields */);Expand description
Contract type for non-zero usize values (!= 0).
Validates on construction, then can unwrap to stdlib type via into_inner().
Implementations§
Source§impl UsizeNonZero
impl UsizeNonZero
Trait Implementations§
Source§impl Clone for UsizeNonZero
impl Clone for UsizeNonZero
Source§fn clone(&self) -> UsizeNonZero
fn clone(&self) -> UsizeNonZero
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 UsizeNonZero
impl Debug for UsizeNonZero
Source§impl<'de> Deserialize<'de> for UsizeNonZero
impl<'de> Deserialize<'de> for UsizeNonZero
Source§fn deserialize<D: Deserializer<'de>>(d: D) -> Result<Self, D::Error>
fn deserialize<D: Deserializer<'de>>(d: D) -> Result<Self, D::Error>
Deserialize this value from the given Serde deserializer. Read more
Source§impl ElicitComplete for UsizeNonZero
impl ElicitComplete for UsizeNonZero
Source§fn validate_proofs_non_empty() -> bool
fn validate_proofs_non_empty() -> bool
Runtime check: all three proof methods return non-empty TokenStreams. Read more
Source§fn kani_proof_contains<Inner: Elicitation>() -> bool
fn kani_proof_contains<Inner: Elicitation>() -> bool
Runtime check: does this type’s Kani proof contain
Inner’s Kani proof? Read moreSource§fn verus_proof_contains<Inner: Elicitation>() -> bool
fn verus_proof_contains<Inner: Elicitation>() -> bool
Runtime check: does this type’s Verus proof contain
Inner’s Verus proof?Source§fn creusot_proof_contains<Inner: Elicitation>() -> bool
fn creusot_proof_contains<Inner: Elicitation>() -> bool
Runtime check: does this type’s Creusot proof contain
Inner’s Creusot proof?Source§impl ElicitIntrospect for UsizeNonZero
impl ElicitIntrospect for UsizeNonZero
Source§fn pattern() -> ElicitationPattern
fn pattern() -> ElicitationPattern
What elicitation pattern does this type use? Read more
Source§fn metadata() -> TypeMetadata
fn metadata() -> TypeMetadata
Get the complete structural metadata for this type. Read more
Source§impl ElicitPromptTree for UsizeNonZero
impl ElicitPromptTree for UsizeNonZero
Source§fn prompt_tree() -> PromptTree
fn prompt_tree() -> PromptTree
Return the static prompt tree for this type. Read more
Source§fn assembled_prompts() -> Vec<AssembledPrompt>
fn assembled_prompts() -> Vec<AssembledPrompt>
Return the complete assembled prompts in elicitation order. Read more
Source§impl ElicitSpec for UsizeNonZero
impl ElicitSpec for UsizeNonZero
Source§impl Elicitation for UsizeNonZero
impl Elicitation for UsizeNonZero
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 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
Returns a
proc_macro2::TokenStream containing a Verus-verified function
with requires/ensures specifications for this type’s invariants. Read moreSource§fn creusot_proof() -> TokenStream
fn creusot_proof() -> TokenStream
Returns a
proc_macro2::TokenStream containing Creusot contract functions
with #[requires]/#[ensures]/#[trusted] attributes for this type’s invariants. Read moreSource§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 prusti_proof() -> TokenStream
fn prusti_proof() -> TokenStream
Returns a
proc_macro2::TokenStream containing Prusti contract functions
with #[requires]/#[ensures] attributes for this type’s invariants. Read moreSource§impl Hash for UsizeNonZero
impl Hash for UsizeNonZero
Source§impl JsonSchema for UsizeNonZero
impl JsonSchema for UsizeNonZero
Source§fn json_schema(_gen: &mut SchemaGenerator) -> Schema
fn json_schema(_gen: &mut SchemaGenerator) -> Schema
Generates a JSON Schema for this type. Read more
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
Whether JSON Schemas generated for this type should be included directly in parent schemas,
rather than being re-used where possible using the
$ref keyword. Read moreSource§impl Ord for UsizeNonZero
impl Ord for UsizeNonZero
Source§fn cmp(&self, other: &UsizeNonZero) -> Ordering
fn cmp(&self, other: &UsizeNonZero) -> Ordering
1.21.0 · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
Source§impl PartialEq for UsizeNonZero
impl PartialEq for UsizeNonZero
Source§impl PartialOrd for UsizeNonZero
impl PartialOrd for UsizeNonZero
Source§impl Prompt for UsizeNonZero
impl Prompt for UsizeNonZero
Source§impl Serialize for UsizeNonZero
impl Serialize for UsizeNonZero
Source§impl ToCodeLiteral for UsizeNonZero
impl ToCodeLiteral for UsizeNonZero
Source§fn to_code_literal(&self) -> TokenStream
fn to_code_literal(&self) -> TokenStream
Return a
TokenStream containing a single Rust expression whose
evaluation produces a value equal to self.Source§fn type_tokens() -> TokenStreamwhere
Self: Sized,
fn type_tokens() -> TokenStreamwhere
Self: Sized,
Token stream for the concrete type name (used to annotate
None::<T>). Read moreimpl Copy for UsizeNonZero
impl Eq for UsizeNonZero
impl StructuralPartialEq for UsizeNonZero
Auto Trait Implementations§
impl Freeze for UsizeNonZero
impl RefUnwindSafe for UsizeNonZero
impl Send for UsizeNonZero
impl Sync for UsizeNonZero
impl Unpin for UsizeNonZero
impl UnsafeUnpin for UsizeNonZero
impl UnwindSafe for UsizeNonZero
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<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
Source§impl<T> ElicitJson for T
impl<T> ElicitJson for T
Source§async fn elicit_json<C>(communicator: &C) -> Result<T, ElicitError>where
C: ElicitCommunicator,
async fn elicit_json<C>(communicator: &C) -> Result<T, ElicitError>where
C: ElicitCommunicator,
Elicit a value by presenting the JSON schema and parsing the response.
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.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> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§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