Skip to main content

SendEndpoint

Struct SendEndpoint 

Source
pub struct SendEndpoint<P>
where P: BytesPush,
{ /* private fields */ }
Expand description

A BytesPush wrapper which stages writes.

Implementations§

Source§

impl<P> SendEndpoint<P>
where P: BytesPush,

Source

pub fn new(queue: P, refill: BytesRefill) -> SendEndpoint<P>

Allocates a new BytesSendEndpoint from a shared queue.

Source

pub fn make_valid(&mut self, bytes: usize)

Makes the next bytes bytes valid.

The current implementation also sends the bytes, to ensure early visibility.

Source

pub fn reserve(&mut self, capacity: usize) -> &mut [u8] ⓘ

Acquires a prefix of self.empty() of length at least capacity.

Source

pub fn publish(&mut self)

Marks all written data as valid, makes visible.

Source

pub fn push_bytes(&mut self, bytes: Bytes)

Sends already-formed bytes, after anything staged so far.

Staged bytes are sent first, so that the order of messages toward the destination is the order in which they were pushed.

Trait Implementations§

Source§

impl<P> Drop for SendEndpoint<P>
where P: BytesPush,

Source§

fn drop(&mut self)

Executes the destructor for this type. Read more
Source§

fn pin_drop(self: Pin<&mut Self>)

🔬This is a nightly-only experimental API. (pin_ergonomics)
Execute the destructor for this type, but different to Drop::drop, it requires self to be pinned. Read more

Auto Trait Implementations§

§

impl<P> !RefUnwindSafe for SendEndpoint<P>

§

impl<P> !Send for SendEndpoint<P>

§

impl<P> !Sync for SendEndpoint<P>

§

impl<P> !UnwindSafe for SendEndpoint<P>

§

impl<P> Freeze for SendEndpoint<P>
where P: Freeze,

§

impl<P> Unpin for SendEndpoint<P>
where P: Unpin,

§

impl<P> UnsafeUnpin for SendEndpoint<P>
where P: UnsafeUnpin,

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.