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 { ... }
}http and grpc and protobuf only.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 ExportLogsPartialSuccess
impl Message for ExportLogsServiceRequest
impl Message for ExportLogsServiceResponse
impl Message for ExportMetricsPartialSuccess
impl Message for ExportMetricsServiceRequest
impl Message for ExportMetricsServiceResponse
impl Message for ExportTracePartialSuccess
impl Message for ExportTraceServiceRequest
impl Message for ExportTraceServiceResponse
impl Message for AnyValue
impl Message for ArrayValue
impl Message for EntityRef
impl Message for InstrumentationScope
impl Message for KeyValue
impl Message for KeyValueList
impl Message for LogRecord
impl Message for LogsData
impl Message for ResourceLogs
impl Message for ScopeLogs
impl Message for Buckets
impl Message for Exemplar
impl Message for ExponentialHistogram
impl Message for ExponentialHistogramDataPoint
impl Message for Gauge
impl Message for Histogram
impl Message for HistogramDataPoint
impl Message for Metric
impl Message for MetricsData
impl Message for NumberDataPoint
impl Message for ResourceMetrics
impl Message for ScopeMetrics
impl Message for Sum
impl Message for Summary
impl Message for SummaryDataPoint
impl Message for ValueAtQuantile
impl Message for Resource
impl Message for Event
impl Message for rama::http::grpc::service::opentelemetry::proto::trace::v1::span::Link
impl Message for ResourceSpans
impl Message for ScopeSpans
impl Message for Span
impl Message for rama::http::grpc::service::opentelemetry::proto::trace::v1::Status
impl Message for TracesData
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