pub struct DynamicDecoder { /* private fields */ }Expand description
Decoder for wire bytes → DynamicMessage.
Implementations§
Source§impl DynamicDecoder
impl DynamicDecoder
pub fn new(desc: MessageDescriptor) -> Self
Trait Implementations§
Source§impl Clone for DynamicDecoder
impl Clone for DynamicDecoder
Source§impl Debug for DynamicDecoder
impl Debug for DynamicDecoder
Source§impl Decoder for DynamicDecoder
impl Decoder for DynamicDecoder
Source§fn decode(
&mut self,
buf: &mut DecodeBuf<'_>,
) -> Result<Option<Self::Item>, Status>
fn decode( &mut self, buf: &mut DecodeBuf<'_>, ) -> Result<Option<Self::Item>, Status>
Decode one gRPC frame. tonic calls this once per complete frame, so an
empty buffer is a message whose fields all hold their defaults (e.g.
google.protobuf.Empty), not the absence of one. A message missing a
proto2 required field is rejected, as protobuf parsers do by default
(Go proto.Unmarshal, C++ ParseFromString); the decoder itself
accepts it partially.
Source§type Item = DynamicMessage
type Item = DynamicMessage
The type that is decoded.
Source§fn buffer_settings(&self) -> BufferSettings
fn buffer_settings(&self) -> BufferSettings
Controls how tonic creates and expands decode buffers.
Auto Trait Implementations§
impl Freeze for DynamicDecoder
impl RefUnwindSafe for DynamicDecoder
impl Send for DynamicDecoder
impl Sync for DynamicDecoder
impl Unpin for DynamicDecoder
impl UnsafeUnpin for DynamicDecoder
impl UnwindSafe for DynamicDecoder
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<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request