Struct ProtobufAny
pub struct ProtobufAny { /* private fields */ }Expand description
A protobuf message and the associated protobuf type URL.
This has the encoding of google.protobuf.Any.
Implementations§
§impl ProtobufAny
 
impl ProtobufAny
pub fn new<T>(data: T) -> ProtobufAnywhere
    T: DescribedProtobuf,
pub fn new<T>(data: T) -> ProtobufAnywhere
    T: DescribedProtobuf,
Encodes data as a protobuf message.
pub fn parse<T>(&self) -> Result<T, Error>where
    T: DescribedProtobuf,
pub fn parse<T>(&self) -> Result<T, Error>where
    T: DescribedProtobuf,
Decodes the protobuf message into T.
Fails if this message is an encoding of a different type.
pub fn is_message<T>(&self) -> boolwhere
    T: DescribedProtobuf,
pub fn is_message<T>(&self) -> boolwhere
    T: DescribedProtobuf,
Returns true if this message is an encoding of T.
Trait Implementations§
§impl Debug for ProtobufAny
 
impl Debug for ProtobufAny
§impl DefaultEncoding for ProtobufAny
 
impl DefaultEncoding for ProtobufAny
§type Encoding = TableEncoder
 
type Encoding = TableEncoder
The encoding to use for the serialization. Read more
§impl DescribeTable for ProtobufAny
 
impl DescribeTable for ProtobufAny
§const DESCRIPTION: MessageDescription<'static>
 
const DESCRIPTION: MessageDescription<'static>
The protobuf message description for this type.
§impl<'encoding, AnyR> StructDecodeMetadata<'encoding, AnyR> for ProtobufAnywhere
    AnyR: 'static,
 
impl<'encoding, AnyR> StructDecodeMetadata<'encoding, AnyR> for ProtobufAnywhere
    AnyR: 'static,
§const DECODERS: &'static [ErasedDecoderEntry]
 
const DECODERS: &'static [ErasedDecoderEntry]
The list of decoder vtables.
§impl<AnyR> StructEncodeMetadata<AnyR> for ProtobufAnywhere
    AnyR: 'static,
 
impl<AnyR> StructEncodeMetadata<AnyR> for ProtobufAnywhere
    AnyR: 'static,
§const ENCODERS: &'static [ErasedEncoderEntry]
 
const ENCODERS: &'static [ErasedEncoderEntry]
The list of encoder vtables.
§impl StructMetadata for ProtobufAny
 
impl StructMetadata for ProtobufAny
Auto Trait Implementations§
impl Freeze for ProtobufAny
impl RefUnwindSafe for ProtobufAny
impl Send for ProtobufAny
impl Sync for ProtobufAny
impl Unpin for ProtobufAny
impl UnwindSafe for ProtobufAny
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
§impl<T> DescribedProtobuf for T
 
impl<T> DescribedProtobuf for T
§const DESCRIPTION: MessageDescription<'static>
 
const DESCRIPTION: MessageDescription<'static>
The message description.
§impl<T> Instrument for T
 
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
 
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
 
fn in_current_span(self) -> Instrumented<Self>
§impl<T> MeshField for Twhere
    T: DefaultEncoding,
    <T as DefaultEncoding>::Encoding: FieldEncode<T, Resource> + for<'a> FieldDecode<'a, T, Resource> + Send + Sync,
 
impl<T> MeshField for Twhere
    T: DefaultEncoding,
    <T as DefaultEncoding>::Encoding: FieldEncode<T, Resource> + for<'a> FieldDecode<'a, T, Resource> + Send + Sync,
type Encoding = <T as DefaultEncoding>::Encoding
§impl<T> MeshPayload for Twhere
    T: DefaultEncoding + Any + Send + 'static,
    <T as DefaultEncoding>::Encoding: MessageEncode<T, Resource> + for<'a> MessageDecode<'a, T, Resource> + FieldEncode<T, Resource> + for<'a> FieldDecode<'a, T, Resource> + Send + Sync,
 
impl<T> MeshPayload for Twhere
    T: DefaultEncoding + Any + Send + 'static,
    <T as DefaultEncoding>::Encoding: MessageEncode<T, Resource> + for<'a> MessageDecode<'a, T, Resource> + FieldEncode<T, Resource> + for<'a> FieldDecode<'a, T, Resource> + Send + Sync,
type Encoding = <T as DefaultEncoding>::Encoding
§impl<T> Protobuf for Twhere
    T: DefaultEncoding,
    <T as DefaultEncoding>::Encoding: MessageEncode<T, NoResources> + for<'a> MessageDecode<'a, T, NoResources> + FieldEncode<T, NoResources> + for<'a> FieldDecode<'a, T, NoResources>,
 
impl<T> Protobuf for Twhere
    T: DefaultEncoding,
    <T as DefaultEncoding>::Encoding: MessageEncode<T, NoResources> + for<'a> MessageDecode<'a, T, NoResources> + FieldEncode<T, NoResources> + for<'a> FieldDecode<'a, T, NoResources>,
§type Encoding = <T as DefaultEncoding>::Encoding
 
type Encoding = <T as DefaultEncoding>::Encoding
The default encoding for 
Self.§impl<T> SerializeMessage for Twhere
    T: 'static + MeshPayload + Send,
 
impl<T> SerializeMessage for Twhere
    T: 'static + MeshPayload + Send,
§fn compute_message_size(&mut self, sizer: MessageSizer<'_>)
 
fn compute_message_size(&mut self, sizer: MessageSizer<'_>)
Computes the message size, as in 
MessageEncode::compute_message_size.§fn write_message(self, writer: MessageWriter<'_, '_, Resource>)
 
fn write_message(self, writer: MessageWriter<'_, '_, Resource>)
Writes the message, as in 
MessageEncode::write_message.§fn extract(self) -> <T as SerializeMessage>::Concrete
 
fn extract(self) -> <T as SerializeMessage>::Concrete
Extract the concrete message.