pub struct WriteBuf<S> {
pub out_buf: Buf,
/* private fields */
}
Expand description
An output counterpart of IoBuf when the latter is split
Fields§
§out_buf: Buf
Implementations§
Source§impl<S> WriteBuf<S>
impl<S> WriteBuf<S>
Sourcepub fn flush(&mut self) -> Result<(), Error>where
S: AsyncWrite,
pub fn flush(&mut self) -> Result<(), Error>where
S: AsyncWrite,
Write data in the output buffer to actual stream
You should put the data to be sent into self.out_buf
before flush
Note: this method silently assumes that you will call it on poll every time until self.done() returns false. I.e. it behaves as Async method but does’t return Async value to allow simpler handling
Sourcepub fn done(&self) -> bool
pub fn done(&self) -> bool
Returns true when connection is closed by peer
Note: this method returns false and schedules a wakeup if connecion is currently locked
Sourcepub fn borrow_raw(self) -> FutureWriteRaw<S>
pub fn borrow_raw(self) -> FutureWriteRaw<S>
Returns a future which will resolve into WriteRaw
This future resolves when after two conditions:
- Output buffer is fully flushed to the network (i.e. OS buffers)
- Internal BiLock is locked
Note: WriteRaw
will lock the underlying stream for the whole
lifetime of the WriteRaw
.
pub fn framed<E: Encode>(self, codec: E) -> WriteFramed<S, E>
Trait Implementations§
Auto Trait Implementations§
impl<S> Freeze for WriteBuf<S>
impl<S> !RefUnwindSafe for WriteBuf<S>
impl<S> Send for WriteBuf<S>where
S: Send,
impl<S> Sync for WriteBuf<S>where
S: Send,
impl<S> Unpin for WriteBuf<S>
impl<S> !UnwindSafe for WriteBuf<S>
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