pub struct Part {
pub metadata: MessageField<Struct>,
pub filename: String,
pub media_type: String,
pub content: Option<Content>,
/* private fields */
}Fields§
§metadata: MessageField<Struct>Field 5: metadata
filename: StringField 6: filename
media_type: StringField 7: media_type
content: Option<Content>Implementations§
Source§impl Part
impl Part
Sourcepub fn text_with_metadata(content: String, metadata: Struct) -> Self
pub fn text_with_metadata(content: String, metadata: Struct) -> Self
Create a text part with metadata
Sourcepub fn file_from_bytes(
bytes: Vec<u8>,
name: Option<String>,
mime_type: Option<String>,
) -> Self
pub fn file_from_bytes( bytes: Vec<u8>, name: Option<String>, mime_type: Option<String>, ) -> Self
Create a file part from base64 encoded data (or bytes)
Sourcepub fn file_from_uri(
uri: String,
name: Option<String>,
mime_type: Option<String>,
) -> Self
pub fn file_from_uri( uri: String, name: Option<String>, mime_type: Option<String>, ) -> Self
Create a file part from a URI
Sourcepub fn get_text(&self) -> Option<&str>
pub fn get_text(&self) -> Option<&str>
Helper method to get the text content if this is a Text part
Sourcepub fn text_builder(content: String) -> PartBuilder
pub fn text_builder(content: String) -> PartBuilder
Create a builder-style text part that can be chained
Sourcepub fn data_builder(data: Value) -> PartBuilder
pub fn data_builder(data: Value) -> PartBuilder
Create a builder-style data part that can be chained
Sourcepub fn file_builder() -> FilePartBuilder
pub fn file_builder() -> FilePartBuilder
Create a builder-style file part that can be chained
Trait Implementations§
Source§impl DefaultInstance for Part
impl DefaultInstance for Part
Source§fn default_instance() -> &'static Self
fn default_instance() -> &'static Self
Return a reference to the single default instance of this type.
Source§impl<'de> Deserialize<'de> for Part
impl<'de> Deserialize<'de> for Part
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 ExtensionSet for Part
impl ExtensionSet for Part
Source§const PROTO_FQN: &'static str = "lf.a2a.v1.Part"
const PROTO_FQN: &'static str = "lf.a2a.v1.Part"
Fully-qualified proto type name of this message (no leading dot),
e.g.
"google.protobuf.FieldOptions". Read moreSource§fn unknown_fields(&self) -> &UnknownFields
fn unknown_fields(&self) -> &UnknownFields
Immutable access to the extendee’s unknown-field storage.
Source§fn unknown_fields_mut(&mut self) -> &mut UnknownFields
fn unknown_fields_mut(&mut self) -> &mut UnknownFields
Mutable access to the extendee’s unknown-field storage.
Source§fn extension<C>(&self, ext: &Extension<C>) -> <C as ExtensionCodec>::Outputwhere
C: ExtensionCodec,
fn extension<C>(&self, ext: &Extension<C>) -> <C as ExtensionCodec>::Outputwhere
C: ExtensionCodec,
Read an extension value. Read more
Source§fn set_extension<C>(
&mut self,
ext: &Extension<C>,
value: <C as ExtensionCodec>::Value,
)where
C: ExtensionCodec,
fn set_extension<C>(
&mut self,
ext: &Extension<C>,
value: <C as ExtensionCodec>::Value,
)where
C: ExtensionCodec,
Write an extension value, replacing any prior occurrences. Read more
Source§fn has_extension<C>(&self, ext: &Extension<C>) -> boolwhere
C: ExtensionCodec,
fn has_extension<C>(&self, ext: &Extension<C>) -> boolwhere
C: ExtensionCodec,
Returns
true if any record at the extension’s field number is present. Read moreSource§fn clear_extension<C>(&mut self, ext: &Extension<C>)where
C: ExtensionCodec,
fn clear_extension<C>(&mut self, ext: &Extension<C>)where
C: ExtensionCodec,
Remove all records at the extension’s field number. Read more
Source§fn extension_or_default<C>(
&self,
ext: &Extension<C>,
) -> <C as ExtensionCodec>::Valuewhere
C: ExtensionCodec<Output = Option<<C as ExtensionCodec>::Value>>,
<C as ExtensionCodec>::Value: Default,
fn extension_or_default<C>(
&self,
ext: &Extension<C>,
) -> <C as ExtensionCodec>::Valuewhere
C: ExtensionCodec<Output = Option<<C as ExtensionCodec>::Value>>,
<C as ExtensionCodec>::Value: Default,
Read a singular extension value, returning the proto2
[default = ...]
value if absent, or the type’s Default if no proto default was declared. Read moreSource§impl Message for Part
impl Message for Part
Source§fn compute_size(&self) -> u32
fn compute_size(&self) -> u32
Returns the total encoded size in bytes.
The result is a u32; the protobuf specification requires all
messages to fit within 2 GiB (2,147,483,647 bytes), so a
compliant message will never overflow this type.
Source§fn write_to(&self, buf: &mut impl BufMut)
fn write_to(&self, buf: &mut impl BufMut)
Write this message’s encoded bytes to a buffer. Read more
Source§fn merge_field(
&mut self,
tag: Tag,
buf: &mut impl Buf,
depth: u32,
) -> Result<(), DecodeError>
fn merge_field( &mut self, tag: Tag, buf: &mut impl Buf, depth: u32, ) -> Result<(), DecodeError>
Processes a single already-decoded tag and its associated field data
from
buf. Read moreSource§fn cached_size(&self) -> u32
fn cached_size(&self) -> u32
The cached encoded size from the last
compute_size() call. Read moreSource§fn encode(&self, buf: &mut impl BufMut)
fn encode(&self, buf: &mut impl BufMut)
Convenience: compute size, then write. This is the primary encoding API.
Source§fn encode_length_delimited(&self, buf: &mut impl BufMut)
fn encode_length_delimited(&self, buf: &mut impl BufMut)
Encode this message as a length-delimited byte sequence.
Source§fn encode_to_bytes(&self) -> Bytes
fn encode_to_bytes(&self) -> Bytes
Encode this message to a new
bytes::Bytes. Read moreSource§fn decode(buf: &mut impl Buf) -> Result<Self, DecodeError>where
Self: Sized,
fn decode(buf: &mut impl Buf) -> Result<Self, DecodeError>where
Self: Sized,
Decode a message from a buffer.
Source§fn decode_from_slice(data: &[u8]) -> Result<Self, DecodeError>where
Self: Sized,
fn decode_from_slice(data: &[u8]) -> Result<Self, DecodeError>where
Self: Sized,
Decode a message from a byte slice. Read more
Source§fn decode_length_delimited(buf: &mut impl Buf) -> Result<Self, DecodeError>where
Self: Sized,
fn decode_length_delimited(buf: &mut impl Buf) -> Result<Self, DecodeError>where
Self: Sized,
Decode a length-delimited message from a buffer. Read more
Source§fn merge_to_limit(
&mut self,
buf: &mut impl Buf,
depth: u32,
limit: usize,
) -> Result<(), DecodeError>
fn merge_to_limit( &mut self, buf: &mut impl Buf, depth: u32, limit: usize, ) -> Result<(), DecodeError>
Source§fn merge_group(
&mut self,
buf: &mut impl Buf,
depth: u32,
field_number: u32,
) -> Result<(), DecodeError>
fn merge_group( &mut self, buf: &mut impl Buf, depth: u32, field_number: u32, ) -> Result<(), DecodeError>
Merges a group-encoded message from
buf, reading fields until an
EndGroup tag with the given field_number is encountered. Read moreSource§fn merge(&mut self, buf: &mut impl Buf, depth: u32) -> Result<(), DecodeError>
fn merge(&mut self, buf: &mut impl Buf, depth: u32) -> Result<(), DecodeError>
Merge fields from a buffer into this message. Read more
Source§fn merge_from_slice(&mut self, data: &[u8]) -> Result<(), DecodeError>
fn merge_from_slice(&mut self, data: &[u8]) -> Result<(), DecodeError>
Merge fields from a byte slice into this message. Read more
Source§fn merge_length_delimited(
&mut self,
buf: &mut impl Buf,
depth: u32,
) -> Result<(), DecodeError>
fn merge_length_delimited( &mut self, buf: &mut impl Buf, depth: u32, ) -> Result<(), DecodeError>
Merge fields from a length-delimited sub-message payload into this message. Read more
Source§impl ProtoElemJson for Part
impl ProtoElemJson for Part
Source§fn serialize_proto_json<S: Serializer>(
v: &Self,
s: S,
) -> Result<S::Ok, S::Error>
fn serialize_proto_json<S: Serializer>( v: &Self, s: S, ) -> Result<S::Ok, S::Error>
Serialize this value with proto3 JSON semantics.
Source§fn deserialize_proto_json<'de, D: Deserializer<'de>>(
d: D,
) -> Result<Self, D::Error>
fn deserialize_proto_json<'de, D: Deserializer<'de>>( d: D, ) -> Result<Self, D::Error>
Deserialize a value with proto3 JSON semantics.
impl StructuralPartialEq for Part
Auto Trait Implementations§
impl !Freeze for Part
impl RefUnwindSafe for Part
impl Send for Part
impl Sync for Part
impl Unpin for Part
impl UnsafeUnpin for Part
impl UnwindSafe for Part
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,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
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