Struct toodee::TooDeeView [−][src]
Provides a read-only view (or subset) of a TooDee
array.
Implementations
impl<'a, T> TooDeeView<'a, T>
[src]
pub fn new(num_cols: usize, num_rows: usize, data: &'a [T]) -> TooDeeView<'a, T>
[src]
Create a new TooDeeViewMut
using the provided slice reference.
Panics
Panics if one of the dimensions is zero but the other is non-zero. This is to enforce the rule that empty arrays have no dimensions.
Panics if the slice's length is not sufficient to represent the desired array dimensions.
Examples
use toodee::TooDeeView; let data = vec![0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]; let view = TooDeeView::new(4, 3, &data);
Trait Implementations
impl<'a, T: Clone> Clone for TooDeeView<'a, T>
[src]
fn clone(&self) -> TooDeeView<'a, T>
[src]
pub fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl<'a, T: Copy> Copy for TooDeeView<'a, T>
[src]
impl<T> Debug for TooDeeView<'_, T> where
T: Debug,
[src]
T: Debug,
impl<'a, T: Eq> Eq for TooDeeView<'a, T>
[src]
impl<T> From<TooDeeView<'_, T>> for TooDee<T> where
T: Clone,
[src]
T: Clone,
fn from(view: TooDeeView<'_, T>) -> Self
[src]
impl<'a, T> From<TooDeeViewMut<'a, T>> for TooDeeView<'a, T>
[src]
fn from(v: TooDeeViewMut<'a, T>) -> TooDeeView<'a, T>
[src]
impl<'a, T: Hash> Hash for TooDeeView<'a, T>
[src]
fn hash<__H: Hasher>(&self, state: &mut __H)
[src]
pub fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0[src]
H: Hasher,
impl<'a, T> Index<(usize, usize)> for TooDeeView<'a, T>
[src]
type Output = T
The returned type after indexing.
fn index(&self, coord: Coordinate) -> &Self::Output
[src]
impl<'a, T> Index<usize> for TooDeeView<'a, T>
[src]
type Output = [T]
The returned type after indexing.
fn index(&self, row: usize) -> &Self::Output
[src]
impl<'a, T> IntoIterator for &'a TooDeeView<'a, T>
[src]
type Item = &'a T
The type of the elements being iterated over.
type IntoIter = Cells<'a, T>
Which kind of iterator are we turning this into?
fn into_iter(self) -> Self::IntoIter
[src]
impl<'a, T: PartialEq> PartialEq<TooDeeView<'a, T>> for TooDeeView<'a, T>
[src]
fn eq(&self, other: &TooDeeView<'a, T>) -> bool
[src]
fn ne(&self, other: &TooDeeView<'a, T>) -> bool
[src]
impl<'a, T> StructuralEq for TooDeeView<'a, T>
[src]
impl<'a, T> StructuralPartialEq for TooDeeView<'a, T>
[src]
impl<'a, T> TooDeeOps<T> for TooDeeView<'a, T>
[src]
fn num_cols(&self) -> usize
[src]
fn num_rows(&self) -> usize
[src]
fn bounds(&self) -> (Coordinate, Coordinate)
[src]
fn view(&self, start: Coordinate, end: Coordinate) -> TooDeeView<'_, T>
[src]
fn rows(&self) -> Rows<'_, T>ⓘ
[src]
fn col(&self, col: usize) -> Col<'_, T>ⓘ
[src]
unsafe fn get_unchecked_row(&self, row: usize) -> &[T]
[src]
Examples
use toodee::{TooDee,TooDeeOps,TooDeeOpsMut}; unsafe { let toodee : TooDee<u32> = TooDee::new(10, 5); let view = toodee.view((0,0), (10,5)); let row = view.get_unchecked_row(3); assert_eq!(row.len(), 10); }
unsafe fn get_unchecked(&self, coord: Coordinate) -> &T
[src]
Examples
use toodee::{TooDee,TooDeeOps,TooDeeOpsMut}; let toodee : TooDee<u32> = TooDee::new(10, 5); let view = toodee.view((0,0), (10,5)); unsafe { assert_eq!(*view.get_unchecked((1,3)), 0); }
fn size(&self) -> (usize, usize)
[src]
fn is_empty(&self) -> bool
[src]
fn cells(&self) -> Cells<'_, T>
[src]
Auto Trait Implementations
impl<'a, T> Send for TooDeeView<'a, T> where
T: Sync,
[src]
T: Sync,
impl<'a, T> Sync for TooDeeView<'a, T> where
T: Sync,
[src]
T: Sync,
impl<'a, T> Unpin for TooDeeView<'a, T>
[src]
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,