#[non_exhaustive]pub struct NumberSchema {
pub type_: NumberTypeConst,
pub title: Option<Cow<'static, str>>,
pub description: Option<Cow<'static, str>>,
pub minimum: Option<f64>,
pub maximum: Option<f64>,
pub default: Option<f64>,
}Expand description
Schema definition for number properties (floating-point).
Compliant with MCP 2025-06-18 specification for elicitation schemas. Supports only the fields allowed by the MCP spec.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.type_: NumberTypeConstType discriminator
title: Option<Cow<'static, str>>Optional title for the schema
description: Option<Cow<'static, str>>Human-readable description
minimum: Option<f64>Minimum value (inclusive)
maximum: Option<f64>Maximum value (inclusive)
default: Option<f64>Default value
Implementations§
Source§impl NumberSchema
impl NumberSchema
Sourcepub fn with_range(self, min: f64, max: f64) -> Result<Self, &'static str>
pub fn with_range(self, min: f64, max: f64) -> Result<Self, &'static str>
Set minimum and maximum (inclusive)
Sourcepub fn range(self, min: f64, max: f64) -> Self
pub fn range(self, min: f64, max: f64) -> Self
Set minimum and maximum (panics on invalid input)
Sourcepub fn description(self, description: impl Into<Cow<'static, str>>) -> Self
pub fn description(self, description: impl Into<Cow<'static, str>>) -> Self
Set description
Sourcepub fn with_default(self, default: f64) -> Self
pub fn with_default(self, default: f64) -> Self
Set default value
Trait Implementations§
Source§impl Clone for NumberSchema
impl Clone for NumberSchema
Source§impl Debug for NumberSchema
impl Debug for NumberSchema
Source§impl Default for NumberSchema
impl Default for NumberSchema
Source§impl<'de> Deserialize<'de> for NumberSchema
impl<'de> Deserialize<'de> for NumberSchema
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl JsonSchema for NumberSchema
Available on crate feature schemars only.
impl JsonSchema for NumberSchema
Available on crate feature
schemars only.Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Returns a string that uniquely identifies the schema produced by this type. Read more
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &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 PartialEq for NumberSchema
impl PartialEq for NumberSchema
Source§impl Serialize for NumberSchema
impl Serialize for NumberSchema
impl StructuralPartialEq for NumberSchema
Auto Trait Implementations§
impl Freeze for NumberSchema
impl RefUnwindSafe for NumberSchema
impl Send for NumberSchema
impl Sync for NumberSchema
impl Unpin for NumberSchema
impl UnsafeUnpin for NumberSchema
impl UnwindSafe for NumberSchema
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