Trait protobuf::Message [] [src]

pub trait Message: Debug + Clear + Any + Send + Sync {
    fn descriptor(&self) -> &'static MessageDescriptor;
fn is_initialized(&self) -> bool;
fn merge_from(&mut self, is: &mut CodedInputStream) -> ProtobufResult<()>;
fn write_to_with_cached_sizes(
        &self,
        os: &mut CodedOutputStream
    ) -> ProtobufResult<()>;
fn compute_size(&self) -> u32;
fn get_cached_size(&self) -> u32;
fn get_unknown_fields<'s>(&'s self) -> &'s UnknownFields;
fn mut_unknown_fields<'s>(&'s mut self) -> &'s mut UnknownFields;
fn as_any(&self) -> &Any;
fn new() -> Self
    where
        Self: Sized
;
fn default_instance() -> &'static Self
    where
        Self: Sized
; fn write_to(&self, os: &mut CodedOutputStream) -> ProtobufResult<()> { ... }
fn write_length_delimited_to(
        &self,
        os: &mut CodedOutputStream
    ) -> ProtobufResult<()> { ... }
fn write_length_delimited_to_vec(
        &self,
        vec: &mut Vec<u8>
    ) -> ProtobufResult<()> { ... }
fn merge_from_bytes(&mut self, bytes: &[u8]) -> ProtobufResult<()> { ... }
fn check_initialized(&self) -> ProtobufResult<()> { ... }
fn write_to_writer(&self, w: &mut Write) -> ProtobufResult<()> { ... }
fn write_to_vec(&self, v: &mut Vec<u8>) -> ProtobufResult<()> { ... }
fn write_to_bytes(&self) -> ProtobufResult<Vec<u8>> { ... }
fn write_length_delimited_to_writer(
        &self,
        w: &mut Write
    ) -> ProtobufResult<()> { ... }
fn write_length_delimited_to_bytes(&self) -> ProtobufResult<Vec<u8>> { ... }
fn type_id(&self) -> TypeId { ... }
fn as_any_mut(&mut self) -> &mut Any { ... }
fn into_any(self: Box<Self>) -> Box<Any> { ... }
fn descriptor_static() -> &'static MessageDescriptor
    where
        Self: Sized
, { ... } }

Trait implemented for all generated structs for protobuf messages. Also, generated messages implement Clone + Default + PartialEq

Required Methods

Message descriptor for this message, used for reflection.

True iff all required fields are initialized. Always returns true for protobuf 3.

Update this message object with fields read from given stream.

Write message to the stream.

Sizes of this messages and nested messages must be cached by calling compute_size prior to this call.

Compute and cache size of this message and all nested messages

Get size previously computed by compute_size.

Get a reference to unknown fields.

Get a mutable reference to unknown fields.

View self as Any.

Create an empty message object.

Return a pointer to default immutable message.

Provided Methods

Write the message to the stream.

Results in error if message is not fully initialized.

Write the message to the stream prepending the message with message length encoded as varint.

Write the message to the vec, prepend the message with message length encoded as varint.

Update this message object with fields read from given stream.

Check if all required fields of this object are initialized.

Write the message to the writer.

Write the message to bytes vec.

Write the message to bytes vec.

Write the message to the writer, prepend the message with message length encoded as varint.

Write the message to the bytes vec, prepend the message with message length encoded as varint.

Get type id for downcasting.

View self as mutable Any.

Convert boxed self to boxed Any.

Get message descriptor for message type.

Implementors