pub trait Message: Debug + Send + Sync {
fn encoded_len(&self) -> usize;
fn clear(&mut self);
fn encode<B>(&self, buf: &mut B) -> Result<(), EncodeError>
where
B: BufMut,
Self: Sized,
{ ... }
fn encode_length_delimited<B>(&self, buf: &mut B) -> Result<(), EncodeError>
where
B: BufMut,
Self: Sized,
{ ... }
fn decode<B>(buf: B) -> Result<Self, DecodeError>
where
B: Buf,
Self: Default,
{ ... }
fn decode_length_delimited<B>(buf: B) -> Result<Self, DecodeError>
where
B: Buf,
Self: Default,
{ ... }
fn merge<B>(&mut self, buf: B) -> Result<(), DecodeError>
where
B: Buf,
Self: Sized,
{ ... }
fn merge_length_delimited<B>(&mut self, buf: B) -> Result<(), DecodeError>
where
B: Buf,
Self: Sized,
{ ... }
}
Expand description
A Protocol Buffers message.
Required methods
fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Returns the encoded length of the message without a length delimiter.
Provided methods
Encodes the message to a buffer.
An error will be returned if the buffer does not have sufficient capacity.
fn encode_length_delimited<B>(&self, buf: &mut B) -> Result<(), EncodeError> where
B: BufMut,
Self: Sized,
fn encode_length_delimited<B>(&self, buf: &mut B) -> Result<(), EncodeError> where
B: BufMut,
Self: Sized,
Encodes the message with a length-delimiter to a buffer.
An error will be returned if the buffer does not have sufficient capacity.
Decodes an instance of the message from a buffer.
The entire buffer will be consumed.
fn decode_length_delimited<B>(buf: B) -> Result<Self, DecodeError> where
B: Buf,
Self: Default,
fn decode_length_delimited<B>(buf: B) -> Result<Self, DecodeError> where
B: Buf,
Self: Default,
Decodes a length-delimited instance of the message from the buffer.
Decodes an instance of the message from a buffer, and merges it into self
.
The entire buffer will be consumed.
fn merge_length_delimited<B>(&mut self, buf: B) -> Result<(), DecodeError> where
B: Buf,
Self: Sized,
fn merge_length_delimited<B>(&mut self, buf: B) -> Result<(), DecodeError> where
B: Buf,
Self: Sized,
Decodes a length-delimited instance of the message from buffer, and
merges it into self
.
Implementations on Foreign Types
sourceimpl<M> Message for Box<M> where
M: Message,
impl<M> Message for Box<M> where
M: Message,
fn encoded_len(&self) -> usize
fn clear(&mut self)
sourceimpl Message for bool
impl Message for bool
google.protobuf.BoolValue
fn encoded_len(&self) -> usize
fn clear(&mut self)
sourceimpl Message for u32
impl Message for u32
google.protobuf.UInt32Value
fn encoded_len(&self) -> usize
fn clear(&mut self)
sourceimpl Message for u64
impl Message for u64
google.protobuf.UInt64Value
fn encoded_len(&self) -> usize
fn clear(&mut self)
sourceimpl Message for i32
impl Message for i32
google.protobuf.Int32Value
fn encoded_len(&self) -> usize
fn clear(&mut self)
sourceimpl Message for i64
impl Message for i64
google.protobuf.Int64Value
fn encoded_len(&self) -> usize
fn clear(&mut self)
sourceimpl Message for f32
impl Message for f32
google.protobuf.FloatValue
fn encoded_len(&self) -> usize
fn clear(&mut self)
sourceimpl Message for f64
impl Message for f64
google.protobuf.DoubleValue
fn encoded_len(&self) -> usize
fn clear(&mut self)
sourceimpl Message for String
impl Message for String
google.protobuf.StringValue
fn encoded_len(&self) -> usize
fn clear(&mut self)
sourceimpl Message for Vec<u8>
impl Message for Vec<u8>
google.protobuf.BytesValue
fn encoded_len(&self) -> usize
fn clear(&mut self)
sourceimpl Message for Bytes
impl Message for Bytes
google.protobuf.BytesValue
fn encoded_len(&self) -> usize
fn clear(&mut self)
sourceimpl Message for ()
impl Message for ()
google.protobuf.Empty