pub enum InputSchema {
AnyOf(AnyOfInputSchema),
Object(ObjectInputSchema),
Array(ArrayInputSchema),
String(StringInputSchema),
Integer(IntegerInputSchema),
Number(NumberInputSchema),
Boolean(BooleanInputSchema),
Image(ImageInputSchema),
Audio(AudioInputSchema),
Video(VideoInputSchema),
File(FileInputSchema),
}Expand description
Schema for validating Function input.
Defines the expected structure and constraints for input data. Used by remote Functions to document and validate their inputs.
Variants§
AnyOf(AnyOfInputSchema)
A union of schemas - input must match at least one.
Object(ObjectInputSchema)
An object with named properties.
Array(ArrayInputSchema)
An array of items.
String(StringInputSchema)
A string value.
Integer(IntegerInputSchema)
An integer value.
Number(NumberInputSchema)
A floating-point number.
Boolean(BooleanInputSchema)
A boolean value.
Image(ImageInputSchema)
An image (URL or base64).
Audio(AudioInputSchema)
Audio content.
Video(VideoInputSchema)
Video content.
File(FileInputSchema)
A file.
Implementations§
Source§impl InputSchema
impl InputSchema
Sourcepub fn modalities(&self) -> Modalities
pub fn modalities(&self) -> Modalities
Returns which media modalities are present anywhere in this schema.
Sourcepub fn validate_input(&self, input: &InputValue) -> bool
pub fn validate_input(&self, input: &InputValue) -> bool
Validates that an input value conforms to this schema.
Trait Implementations§
Source§impl<'arbitrary> Arbitrary<'arbitrary> for InputSchema
impl<'arbitrary> Arbitrary<'arbitrary> for InputSchema
Source§fn arbitrary(u: &mut Unstructured<'arbitrary>) -> Result<Self>
fn arbitrary(u: &mut Unstructured<'arbitrary>) -> Result<Self>
Generate an arbitrary value of
Self from the given unstructured data. Read moreSource§fn arbitrary_take_rest(u: Unstructured<'arbitrary>) -> Result<Self>
fn arbitrary_take_rest(u: Unstructured<'arbitrary>) -> Result<Self>
Generate an arbitrary value of
Self from the entirety of the given
unstructured data. Read moreSource§fn size_hint(depth: usize) -> (usize, Option<usize>)
fn size_hint(depth: usize) -> (usize, Option<usize>)
Get a size hint for how many bytes out of an
Unstructured this type
needs to construct itself. Read moreSource§fn try_size_hint(
depth: usize,
) -> Result<(usize, Option<usize>), MaxRecursionReached>
fn try_size_hint( depth: usize, ) -> Result<(usize, Option<usize>), MaxRecursionReached>
Get a size hint for how many bytes out of an
Unstructured this type
needs to construct itself. Read moreSource§impl Clone for InputSchema
impl Clone for InputSchema
Source§fn clone(&self) -> InputSchema
fn clone(&self) -> InputSchema
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · 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 InputSchema
impl Debug for InputSchema
Source§impl<'de> Deserialize<'de> for InputSchema
impl<'de> Deserialize<'de> for InputSchema
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 InputSchema
impl JsonSchema for InputSchema
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 InputSchema
impl PartialEq for InputSchema
Source§fn eq(&self, other: &InputSchema) -> bool
fn eq(&self, other: &InputSchema) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl Serialize for InputSchema
impl Serialize for InputSchema
impl StructuralPartialEq for InputSchema
Auto Trait Implementations§
impl Freeze for InputSchema
impl RefUnwindSafe for InputSchema
impl Send for InputSchema
impl Sync for InputSchema
impl Unpin for InputSchema
impl UnsafeUnpin for InputSchema
impl UnwindSafe for InputSchema
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> 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 more