pub trait Message: Send + Sync {
// Required methods
fn encoded_len(&self) -> usize;
fn clear(&mut self);
// Provided methods
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>
where Self: Sized { ... }
fn encode_to_vec(&self) -> Vec<u8> ⓘ
where Self: Sized { ... }
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>
where Self: Sized { ... }
fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘ
where Self: Sized { ... }
fn decode(buf: impl Buf) -> Result<Self, DecodeError>
where Self: Default { ... }
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>
where Self: Default { ... }
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>
where Self: Sized { ... }
fn merge_length_delimited(
&mut self,
buf: impl Buf,
) -> Result<(), DecodeError>
where Self: Sized { ... }
}Expand description
A Protocol Buffers message.
Required Methods§
Sourcefn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Returns the encoded length of the message without a length delimiter.
Provided Methods§
Sourcefn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
Encodes the message to a buffer.
An error will be returned if the buffer does not have sufficient capacity.
Sourcefn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Encodes the message to a newly allocated buffer.
Sourcefn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
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.
Sourcefn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Encodes the message with a length-delimiter to a newly allocated buffer.
Sourcefn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Decodes an instance of the message from a buffer.
The entire buffer will be consumed.
Sourcefn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Decodes a length-delimited instance of the message from the buffer.
Sourcefn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
Decodes an instance of the message from a buffer, and merges it into self.
The entire buffer will be consumed.
Sourcefn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
Decodes a length-delimited instance of the message from buffer, and
merges it into self.
Implementations on Foreign Types§
Implementors§
impl Message for Bytes
google.protobuf.BytesValue
impl Message for String
google.protobuf.StringValue
impl Message for FileDescriptorSet
impl Message for HealthCheckRequest
impl Message for HealthCheckResponse
impl Message for HealthListRequest
impl Message for HealthListResponse
impl Message for FieldViolation
impl Message for rama::http::grpc::protobuf::types::pb::help::Link
impl Message for rama::http::grpc::protobuf::types::pb::precondition_failure::Violation
impl Message for rama::http::grpc::protobuf::types::pb::quota_failure::Violation
impl Message for BadRequest
impl Message for DebugInfo
impl Message for ErrorInfo
impl Message for Help
impl Message for LocalizedMessage
impl Message for PreconditionFailure
impl Message for QuotaFailure
impl Message for RequestInfo
impl Message for ResourceInfo
impl Message for RetryInfo
impl Message for rama::http::grpc::protobuf::types::Status
impl Message for Vec<u8>
google.protobuf.BytesValue