Struct ipc_queue::Sender

source ·
pub struct Sender<T: 'static, S> { /* private fields */ }

Implementations§

source§

impl<T: Transmittable, S: Synchronizer> Sender<T, S>

source

pub unsafe fn from_descriptor(d: FifoDescriptor<T>, synchronizer: S) -> Self

Create a Sender from a FifoDescriptor and Synchronizer.

§Safety

The caller must ensure the following:

  • The data and len fields in FifoDescriptor must adhere to all safety requirements described in std::slice::from_raw_parts_mut()

  • The offsets field in FifoDescriptor must be non-null and point to a valid memory location holding an AtomicUsize.

  • The synchronizer must somehow know how to correctly synchronize with the other end of the channel.

source

pub fn try_send(&self, val: Identified<T>) -> Result<(), TrySendError>

source

pub fn try_send_multiple( &self, values: &[Identified<T>] ) -> Result<usize, TrySendError>

Tries to send multiple values. Calling this function has the same semantics as calling try_send for each item in order until an error occurs, but it has the benefit of notifying the receiver at most once.

Returns the number of successfully sent items if any item was successfully sent, otherwise returns an error.

source

pub fn send(&self, val: Identified<T>) -> Result<(), SendError>

Trait Implementations§

source§

impl<T, S: Clone> Clone for Sender<T, S>

source§

fn clone(&self) -> Self

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl<T: Send, S: Send> Send for Sender<T, S>

source§

impl<T: Send, S: Sync> Sync for Sender<T, S>

Auto Trait Implementations§

§

impl<T, S> Freeze for Sender<T, S>
where S: Freeze,

§

impl<T, S> !RefUnwindSafe for Sender<T, S>

§

impl<T, S> Unpin for Sender<T, S>
where S: Unpin,

§

impl<T, S> !UnwindSafe for Sender<T, S>

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> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

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

§

type Error = Infallible

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

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

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

§

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.