Skip to main content

HybridChannel

Struct HybridChannel 

Source
pub struct HybridChannel<T>(/* private fields */);
Expand description

Zero-sized factory for a zero-copy hybrid channel endpoint pair.

The sender and receiver own the shared ring and wake registries. The factory carries only its scalar parameter, so constructing endpoints never creates an unused channel-owner allocation or duplicate synchronization state.

Implementations§

Source§

impl<T> HybridChannel<T>
where T: Send,

Source

pub fn new(capacity: usize) -> (HybridSender<T>, HybridReceiver<T>)

Create a new hybrid channel with specified capacity

Auto Trait Implementations§

§

impl<T> Freeze for HybridChannel<T>
where PhantomData<fn() -> T>: Freeze,

§

impl<T> RefUnwindSafe for HybridChannel<T>
where PhantomData<fn() -> T>: RefUnwindSafe,

§

impl<T> Send for HybridChannel<T>
where PhantomData<fn() -> T>: Send,

§

impl<T> Sync for HybridChannel<T>
where PhantomData<fn() -> T>: Sync,

§

impl<T> Unpin for HybridChannel<T>
where PhantomData<fn() -> T>: Unpin,

§

impl<T> UnsafeUnpin for HybridChannel<T>
where PhantomData<fn() -> T>: UnsafeUnpin,

§

impl<T> UnwindSafe for HybridChannel<T>
where PhantomData<fn() -> T>: UnwindSafe,

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, 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.