Struct ReadTrackingReader
pub struct ReadTrackingReader<'a, R>where
R: Read,{
pub have_read: bool,
/* private fields */
}
Expand description
A Read
implementation which tracks whether any bytes have been read at all. This allows us to distinguish
between “EOF reached before we started” and “EOF reached mid-read”.
This is not exported to bindings users as manual TLV building is not currently supported in bindings
Fields§
§have_read: bool
Returns whether we have read from this reader or not yet.
Implementations§
§impl<'a, R> ReadTrackingReader<'a, R>where
R: Read,
impl<'a, R> ReadTrackingReader<'a, R>where
R: Read,
pub fn new(read: &'a mut R) -> ReadTrackingReader<'a, R>
pub fn new(read: &'a mut R) -> ReadTrackingReader<'a, R>
Returns a new ReadTrackingReader
.
Trait Implementations§
Auto Trait Implementations§
impl<'a, R> Freeze for ReadTrackingReader<'a, R>
impl<'a, R> RefUnwindSafe for ReadTrackingReader<'a, R>where
R: RefUnwindSafe,
impl<'a, R> Send for ReadTrackingReader<'a, R>where
R: Send,
impl<'a, R> Sync for ReadTrackingReader<'a, R>where
R: Sync,
impl<'a, R> Unpin for ReadTrackingReader<'a, R>
impl<'a, R> !UnwindSafe for ReadTrackingReader<'a, R>
Blanket Implementations§
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> 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
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