Struct SafeAccessor

Source
pub struct SafeAccessor<'a, T: ?Sized, const D: usize, V: Vector<T, D>, I, VA: VectorArray<T, D, V, I>> { /* private fields */ }
Expand description

The immutable fast accessor. Contains a reference to the array, and the dimension to get from the vectors. Unlike the Fast accessor, this can be used for ALL types of vectors and arrays.

Trait Implementations§

Source§

impl<'a, T: ?Sized, const D: usize, V: Vector<T, D>, I, VA: VectorArray<T, D, V, I>> Accessor<T, I> for SafeAccessor<'a, T, D, V, I, VA>

Source§

fn get<'b>(&'b self, index: I) -> Option<&'b T>

Gets an item out of the array. This maybe be a split array, in which case the operation will take an item out of the vector.
Source§

impl<'a, T: ?Sized, const D: usize, V: Vector<T, D>, I, VA: VectorArray<T, D, V, I>> Index<I> for SafeAccessor<'a, T, D, V, I, VA>

Source§

type Output = T

The returned type after indexing.
Source§

fn index(&self, index: I) -> &Self::Output

Performs the indexing (container[index]) operation. Read more

Auto Trait Implementations§

§

impl<'a, T, const D: usize, V, I, VA> Freeze for SafeAccessor<'a, T, D, V, I, VA>
where T: ?Sized,

§

impl<'a, T, const D: usize, V, I, VA> RefUnwindSafe for SafeAccessor<'a, T, D, V, I, VA>

§

impl<'a, T, const D: usize, V, I, VA> Send for SafeAccessor<'a, T, D, V, I, VA>
where T: Send + ?Sized, V: Send, I: Send, VA: Sync,

§

impl<'a, T, const D: usize, V, I, VA> Sync for SafeAccessor<'a, T, D, V, I, VA>
where T: Sync + ?Sized, V: Sync, I: Sync, VA: Sync,

§

impl<'a, T, const D: usize, V, I, VA> Unpin for SafeAccessor<'a, T, D, V, I, VA>
where T: Unpin + ?Sized, V: Unpin, I: Unpin,

§

impl<'a, T, const D: usize, V, I, VA> UnwindSafe for SafeAccessor<'a, T, D, V, I, VA>

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<'a, T, A> IterateAccessor<'a, T> for A
where A: Accessor<T, usize> + 'a,

Source§

fn iter<'b, 'c>(&'b self) -> AccessorIter<'b, 'c, T, Self>

Source§

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

Source§

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

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.