Trait container_broadcast::broadcast::BroadcastReceiver[][src]

pub trait BroadcastReceiver<const DIM: usize>: TensorSize<DIM> + Sized {
    type Element;
    fn bget_mut<'a>(
        &'a mut self,
        index: [usize; DIM]
    ) -> Option<&'a mut Self::Element>; fn receive(
        &mut self,
        broadcast: &impl Broadcastable<DIM, Element = Self::Element>
    ) -> Option<()> { ... }
unsafe fn bc_iter_mut<'a>(&'a mut self) -> BroadcastIterMut<'a, Self, DIM>

Notable traits for BroadcastIterMut<'a, T, DIM>

impl<'a, T: BroadcastReceiver<DIM>, const DIM: usize> Iterator for BroadcastIterMut<'a, T, DIM> type Item = &'a mut T::Element;
{ ... } }

Trait that emulates write access to reshaped arrays.

Associated Types

Loading content...

Required methods

fn bget_mut<'a>(
    &'a mut self,
    index: [usize; DIM]
) -> Option<&'a mut Self::Element>
[src]

Loading content...

Provided methods

fn receive(
    &mut self,
    broadcast: &impl Broadcastable<DIM, Element = Self::Element>
) -> Option<()>
[src]

unsafe fn bc_iter_mut<'a>(&'a mut self) -> BroadcastIterMut<'a, Self, DIM>

Notable traits for BroadcastIterMut<'a, T, DIM>

impl<'a, T: BroadcastReceiver<DIM>, const DIM: usize> Iterator for BroadcastIterMut<'a, T, DIM> type Item = &'a mut T::Element;
[src]

To be safe, the BroadcastReceiver must NOT alias bget_mut to the same underlying field for different inputs. You may implement a safe iter_mut method using this on any receiver where that invariant is preserved. If in doubt, use eachindex + bget_mut for a safe solution.

Loading content...

Implementations on Foreign Types

impl<'a, T> BroadcastReceiver<1_usize> for &'a mut [T][src]

type Element = T

impl<T, const N: usize> BroadcastReceiver<1_usize> for [T; N][src]

type Element = T

impl<'a, T> BroadcastReceiver<1_usize> for &'a mut Vec<T>[src]

type Element = T

Loading content...

Implementors

impl<T: Broadcastable<M> + BroadcastReceiver<M>, const N: usize, const M: usize> BroadcastReceiver<N> for ReShaped<T, N, M>[src]

type Element = <T as BroadcastReceiver<M>>::Element

Loading content...