pub struct JsonSchema {Show 14 fields
pub schema_ref: Option<String>,
pub schema_type: Option<JsonSchemaType>,
pub description: Option<String>,
pub encrypted: Option<bool>,
pub enum_values: Option<Vec<Value>>,
pub items: Option<Box<JsonSchema>>,
pub properties: Option<BTreeMap<String, JsonSchema>>,
pub required: Option<Vec<String>>,
pub additional_properties: Option<AdditionalProperties>,
pub any_of: Option<Vec<JsonSchema>>,
pub one_of: Option<Vec<JsonSchema>>,
pub all_of: Option<Vec<JsonSchema>>,
pub defs: Option<BTreeMap<String, JsonSchema>>,
pub definitions: Option<BTreeMap<String, JsonSchema>>,
}Expand description
Generic JSON-Schema subset needed for our tool definitions.
Fields§
§schema_ref: Option<String>§schema_type: Option<JsonSchemaType>§description: Option<String>§encrypted: Option<bool>Responses-only marker for reviewed encrypted tool parameters.
enum_values: Option<Vec<Value>>§items: Option<Box<JsonSchema>>§properties: Option<BTreeMap<String, JsonSchema>>§required: Option<Vec<String>>§additional_properties: Option<AdditionalProperties>§any_of: Option<Vec<JsonSchema>>§one_of: Option<Vec<JsonSchema>>§all_of: Option<Vec<JsonSchema>>§defs: Option<BTreeMap<String, JsonSchema>>§definitions: Option<BTreeMap<String, JsonSchema>>Implementations§
Source§impl JsonSchema
impl JsonSchema
pub fn any_of(variants: Vec<JsonSchema>, description: Option<String>) -> Self
pub fn one_of(variants: Vec<JsonSchema>, description: Option<String>) -> Self
pub fn all_of(variants: Vec<JsonSchema>, description: Option<String>) -> Self
pub fn boolean(description: Option<String>) -> Self
pub fn string(description: Option<String>) -> Self
pub fn with_encrypted(self) -> Self
pub fn number(description: Option<String>) -> Self
pub fn integer(description: Option<String>) -> Self
pub fn null(description: Option<String>) -> Self
pub fn string_enum(values: Vec<JsonValue>, description: Option<String>) -> Self
pub fn array(items: JsonSchema, description: Option<String>) -> Self
pub fn object( properties: BTreeMap<String, JsonSchema>, required: Option<Vec<String>>, additional_properties: Option<AdditionalProperties>, ) -> Self
Trait Implementations§
Source§impl Clone for JsonSchema
impl Clone for JsonSchema
Source§fn clone(&self) -> JsonSchema
fn clone(&self) -> JsonSchema
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 JsonSchema
impl Debug for JsonSchema
Source§impl Default for JsonSchema
impl Default for JsonSchema
Source§fn default() -> JsonSchema
fn default() -> JsonSchema
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for JsonSchema
impl<'de> Deserialize<'de> for JsonSchema
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 From<JsonSchema> for AdditionalProperties
impl From<JsonSchema> for AdditionalProperties
Source§fn from(value: JsonSchema) -> Self
fn from(value: JsonSchema) -> Self
Converts to this type from the input type.
Source§impl PartialEq for JsonSchema
impl PartialEq for JsonSchema
Source§impl Serialize for JsonSchema
impl Serialize for JsonSchema
impl StructuralPartialEq for JsonSchema
Auto Trait Implementations§
impl Freeze for JsonSchema
impl RefUnwindSafe for JsonSchema
impl Send for JsonSchema
impl Sync for JsonSchema
impl Unpin for JsonSchema
impl UnsafeUnpin for JsonSchema
impl UnwindSafe for JsonSchema
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<T> AsTypeStaticRegistered for T
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> ConnectorRuntimePayload for T
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
impl<T> ErasedDestructor for Twhere
T: 'static,
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
impl<T> HasTyVTable for Twhere
T: ?Sized,
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> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request