pub enum InputValue {
RichContentPart(RichContentPart),
Object(IndexMap<String, InputValue>),
Array(Vec<InputValue>),
String(String),
Integer(i64),
Number(f64),
Boolean(bool),
}Expand description
A concrete input value (post-compilation).
Represents any JSON-like value that can be passed to a Function, including rich content types (images, audio, video, files).
Variants§
RichContentPart(RichContentPart)
Rich content (image, audio, video, file).
Object(IndexMap<String, InputValue>)
An object with string keys.
Array(Vec<InputValue>)
An array of values.
String(String)
A string value.
Integer(i64)
An integer value.
Number(f64)
A floating-point number.
Boolean(bool)
A boolean value.
Implementations§
Source§impl InputValue
impl InputValue
Sourcepub fn to_rich_content_parts(
self,
depth: usize,
) -> impl Iterator<Item = RichContentPart>
pub fn to_rich_content_parts( self, depth: usize, ) -> impl Iterator<Item = RichContentPart>
Converts the input to a sequence of rich content parts.
This is used to render structured input data as formatted JSON in multimodal messages.
Trait Implementations§
Source§impl<'a> Arbitrary<'a> for InputValue
impl<'a> Arbitrary<'a> for InputValue
Source§fn arbitrary(u: &mut Unstructured<'a>) -> Result<Self>
fn arbitrary(u: &mut Unstructured<'a>) -> Result<Self>
Generate an arbitrary value of
Self from the given unstructured data. Read moreSource§fn arbitrary_take_rest(u: Unstructured<'a>) -> Result<Self, Error>
fn arbitrary_take_rest(u: Unstructured<'a>) -> Result<Self, Error>
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 InputValue
impl Clone for InputValue
Source§fn clone(&self) -> InputValue
fn clone(&self) -> InputValue
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 InputValue
impl Debug for InputValue
Source§impl<'de> Deserialize<'de> for InputValue
impl<'de> Deserialize<'de> for InputValue
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 FromSpecial for InputValue
impl FromSpecial for InputValue
fn from_special( special: &Special, params: &Params<'_, '_>, ) -> Result<Self, ExpressionError>
Source§impl FromStarlarkValue for InputValue
impl FromStarlarkValue for InputValue
fn from_starlark_value( value: &StarlarkValue<'_>, ) -> Result<Self, ExpressionError>
Source§impl Hash for InputValue
impl Hash for InputValue
Source§impl JsonSchema for InputValue
impl JsonSchema for InputValue
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 InputValue
impl PartialEq for InputValue
Source§fn eq(&self, other: &InputValue) -> bool
fn eq(&self, other: &InputValue) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl Serialize for InputValue
impl Serialize for InputValue
Source§impl ToStarlarkValue for InputValue
impl ToStarlarkValue for InputValue
fn to_starlark_value<'v>(&self, heap: &'v StarlarkHeap) -> StarlarkValue<'v>
impl Eq for InputValue
impl StructuralPartialEq for InputValue
Auto Trait Implementations§
impl Freeze for InputValue
impl RefUnwindSafe for InputValue
impl Send for InputValue
impl Sync for InputValue
impl Unpin for InputValue
impl UnsafeUnpin for InputValue
impl UnwindSafe for InputValue
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> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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