pub struct MeshBuilder<T> {
    pub channels: Vec<Arc<SharedQueueThreaded<T>>>,
    pub shared_joined: Arc<AtomicUsize>,
    /* private fields */
}
Expand description

A Mesh is a structure which can be shared in every thread by reference to allow threads to join the Mesh and talk to each others.

Fields§

§channels: Vec<Arc<SharedQueueThreaded<T>>>§shared_joined: Arc<AtomicUsize>

Implementations§

source§

impl<T> MeshBuilder<T>

source

pub fn new() -> Result<Self>

Create a new mesh

source

pub fn join_with(&self, peer: usize) -> Result<Shard<T>>

Join the mesh means you can talk to other peer and peer can talk to you.

You must assign yourself an id so other Shard will be able to talk with you using this ID

Auto Trait Implementations§

§

impl<T> !RefUnwindSafe for MeshBuilder<T>

§

impl<T> Send for MeshBuilder<T>
where T: Send,

§

impl<T> Sync for MeshBuilder<T>
where T: Send,

§

impl<T> Unpin for MeshBuilder<T>

§

impl<T> !UnwindSafe for MeshBuilder<T>

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

§

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.