Struct protobuf::well_known_types::Any
source · pub struct Any {
pub type_url: String,
pub value: Vec<u8>,
pub unknown_fields: UnknownFields,
pub cached_size: CachedSize,
}
Fields§
§type_url: String
§value: Vec<u8>
§unknown_fields: UnknownFields
§cached_size: CachedSize
Implementations§
source§impl Any
impl Any
pub fn new() -> Any
pub fn get_type_url(&self) -> &str
pub fn clear_type_url(&mut self)
pub fn set_type_url(&mut self, v: String)
pub fn mut_type_url(&mut self) -> &mut String
pub fn take_type_url(&mut self) -> String
pub fn get_value(&self) -> &[u8] ⓘ
pub fn clear_value(&mut self)
pub fn set_value(&mut self, v: Vec<u8>)
pub fn mut_value(&mut self) -> &mut Vec<u8>
pub fn take_value(&mut self) -> Vec<u8>
source§impl Any
impl Any
sourcepub fn pack<M: Message>(message: &M) -> ProtobufResult<Any>
pub fn pack<M: Message>(message: &M) -> ProtobufResult<Any>
Pack any message into well_known_types::Any
value.
§Examples
use protobuf::well_known_types::Any;
let message: &MyMessage = message;
let any = Any::pack(message)?;
assert!(any.is::<MyMessage>());
sourcepub fn pack_dyn(message: &dyn Message) -> ProtobufResult<Any>
pub fn pack_dyn(message: &dyn Message) -> ProtobufResult<Any>
Pack any message into well_known_types::Any
value.
§Examples
use protobuf::Message;
use protobuf::well_known_types::Any;
let message: &dyn Message = message;
let any = Any::pack_dyn(message)?;
assert!(any.is_dyn(message.descriptor()));
sourcepub fn is_dyn(&self, descriptor: &MessageDescriptor) -> bool
pub fn is_dyn(&self, descriptor: &MessageDescriptor) -> bool
Check if Any
contains a message of given type.
sourcepub fn unpack<M: Message>(&self) -> ProtobufResult<Option<M>>
pub fn unpack<M: Message>(&self) -> ProtobufResult<Option<M>>
sourcepub fn unpack_dyn(
&self,
descriptor: &MessageDescriptor,
) -> ProtobufResult<Option<Box<dyn Message>>>
pub fn unpack_dyn( &self, descriptor: &MessageDescriptor, ) -> ProtobufResult<Option<Box<dyn Message>>>
Trait Implementations§
source§impl Message for Any
impl Message for Any
source§fn is_initialized(&self) -> bool
fn is_initialized(&self) -> bool
True iff all required fields are initialized.
Always returns
true
for protobuf 3.source§fn merge_from(&mut self, is: &mut CodedInputStream<'_>) -> ProtobufResult<()>
fn merge_from(&mut self, is: &mut CodedInputStream<'_>) -> ProtobufResult<()>
Update this message object with fields read from given stream.
source§fn compute_size(&self) -> u32
fn compute_size(&self) -> u32
Compute and cache size of this message and all nested messages
source§fn write_to_with_cached_sizes(
&self,
os: &mut CodedOutputStream<'_>,
) -> ProtobufResult<()>
fn write_to_with_cached_sizes( &self, os: &mut CodedOutputStream<'_>, ) -> ProtobufResult<()>
Write message to the stream. Read more
source§fn get_cached_size(&self) -> u32
fn get_cached_size(&self) -> u32
Get size previously computed by
compute_size
.source§fn get_unknown_fields(&self) -> &UnknownFields
fn get_unknown_fields(&self) -> &UnknownFields
Get a reference to unknown fields.
source§fn mut_unknown_fields(&mut self) -> &mut UnknownFields
fn mut_unknown_fields(&mut self) -> &mut UnknownFields
Get a mutable reference to unknown fields.
source§fn as_any_mut(&mut self) -> &mut dyn Any
fn as_any_mut(&mut self) -> &mut dyn Any
View self as mutable
Any
.source§fn descriptor(&self) -> &'static MessageDescriptor
fn descriptor(&self) -> &'static MessageDescriptor
Message descriptor for this message, used for reflection.
source§fn descriptor_static() -> &'static MessageDescriptor
fn descriptor_static() -> &'static MessageDescriptor
Get message descriptor for message type. Read more
source§fn default_instance() -> &'static Any
fn default_instance() -> &'static Any
Return a pointer to default immutable message with static lifetime. Read more
source§fn parse_from(is: &mut CodedInputStream<'_>) -> ProtobufResult<Self>where
Self: Sized,
fn parse_from(is: &mut CodedInputStream<'_>) -> ProtobufResult<Self>where
Self: Sized,
Parse message from stream.
source§fn write_to(&self, os: &mut CodedOutputStream<'_>) -> ProtobufResult<()>
fn write_to(&self, os: &mut CodedOutputStream<'_>) -> ProtobufResult<()>
Write the message to the stream. Read more
source§fn write_length_delimited_to(
&self,
os: &mut CodedOutputStream<'_>,
) -> ProtobufResult<()>
fn write_length_delimited_to( &self, os: &mut CodedOutputStream<'_>, ) -> ProtobufResult<()>
Write the message to the stream prepending the message with message length
encoded as varint.
source§fn write_length_delimited_to_vec(&self, vec: &mut Vec<u8>) -> ProtobufResult<()>
fn write_length_delimited_to_vec(&self, vec: &mut Vec<u8>) -> ProtobufResult<()>
Write the message to the vec, prepend the message with message length
encoded as varint.
source§fn merge_from_bytes(&mut self, bytes: &[u8]) -> ProtobufResult<()>
fn merge_from_bytes(&mut self, bytes: &[u8]) -> ProtobufResult<()>
Update this message object with fields read from given stream.
source§fn parse_from_reader(reader: &mut dyn Read) -> ProtobufResult<Self>where
Self: Sized,
fn parse_from_reader(reader: &mut dyn Read) -> ProtobufResult<Self>where
Self: Sized,
Parse message from reader.
Parse stops on EOF or when error encountered.
source§fn parse_from_bytes(bytes: &[u8]) -> ProtobufResult<Self>where
Self: Sized,
fn parse_from_bytes(bytes: &[u8]) -> ProtobufResult<Self>where
Self: Sized,
Parse message from byte array.
source§fn check_initialized(&self) -> ProtobufResult<()>
fn check_initialized(&self) -> ProtobufResult<()>
Check if all required fields of this object are initialized.
source§fn write_to_writer(&self, w: &mut dyn Write) -> ProtobufResult<()>
fn write_to_writer(&self, w: &mut dyn Write) -> ProtobufResult<()>
Write the message to the writer.
source§fn write_to_vec(&self, v: &mut Vec<u8>) -> ProtobufResult<()>
fn write_to_vec(&self, v: &mut Vec<u8>) -> ProtobufResult<()>
Write the message to bytes vec.
source§fn write_to_bytes(&self) -> ProtobufResult<Vec<u8>>
fn write_to_bytes(&self) -> ProtobufResult<Vec<u8>>
Write the message to bytes vec.
source§fn write_length_delimited_to_writer(
&self,
w: &mut dyn Write,
) -> ProtobufResult<()>
fn write_length_delimited_to_writer( &self, w: &mut dyn Write, ) -> ProtobufResult<()>
Write the message to the writer, prepend the message with message length
encoded as varint.
source§fn write_length_delimited_to_bytes(&self) -> ProtobufResult<Vec<u8>>
fn write_length_delimited_to_bytes(&self) -> ProtobufResult<Vec<u8>>
Write the message to the bytes vec, prepend the message with message length
encoded as varint.
source§impl ProtobufValue for Any
impl ProtobufValue for Any
source§fn as_ref(&self) -> ReflectValueRef<'_>
fn as_ref(&self) -> ReflectValueRef<'_>
As ref
source§fn is_non_zero(&self) -> bool
fn is_non_zero(&self) -> bool
Is value non-zero?
source§fn as_ref_copy(&self) -> ReflectValueRef<'static>
fn as_ref_copy(&self) -> ReflectValueRef<'static>
impl StructuralPartialEq for Any
Auto Trait Implementations§
impl !Freeze for Any
impl RefUnwindSafe for Any
impl Send for Any
impl Sync for Any
impl Unpin for Any
impl UnwindSafe for Any
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§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)