Trait Grid3Set

Source
pub trait Grid3Set: Grid3 {
    // Required method
    fn set<I>(&mut self, coord: I, elem: Self::Item)
       where I: Into<Vector3<i32>>;

    // Provided method
    fn try_set<I>(
        &mut self,
        coord: I,
        elem: Self::Item,
    ) -> Result<(), Self::Item>
       where I: Into<Vector3<i32>> { ... }
}
Expand description

2D grid write by value.

Required Methods§

Source

fn set<I>(&mut self, coord: I, elem: Self::Item)
where I: Into<Vector3<i32>>,

Provided Methods§

Source

fn try_set<I>(&mut self, coord: I, elem: Self::Item) -> Result<(), Self::Item>
where I: Into<Vector3<i32>>,

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl<'a, F, I, T> Grid3Set for KolmoMutGrid3<'a, F, I, T>
where F: Fn(I) -> &'a mut T, T: 'a, I: From<Vector3<i32>>,

Source§

impl<G> Grid3Set for Grid3Flat<G>
where G: Grid3 + Grid3Mut, <G as Grid3>::Item: Grid3 + Grid3Set, <G as Grid3>::XBound: Clone, <G as Grid3>::YBound: Clone, <G as Grid3>::ZBound: Clone,

Source§

impl<G> Grid3Set for Grid3NewOrigin<G>

Source§

impl<G> Grid3Set for Grid3Wrapping<G>
where G: Grid3 + Grid3Set, <G as Grid3>::XBound: BoundRange, <G as Grid3>::YBound: BoundRange, <G as Grid3>::ZBound: BoundRange,

Source§

impl<G, X, Y, Z> Grid3Set for Grid3Slice<G, X, Y, Z>

Source§

impl<I, R, T, Fr, Fw> Grid3Set for KolmoRwGrid3<I, R, T, Fr, Fw>
where Fr: Fn(I, &R) -> &T, Fw: FnMut(I, &mut R) -> &mut T, I: From<Vector3<i32>>,

Source§

impl<T> Grid3Set for ArrayGrid3<T>

Source§

impl<T> Grid3Set for Inline3x3x3Grid<T>

Source§

impl<T> Grid3Set for T
where T: Deref + DerefMut, <T as Deref>::Target: Grid3Set,