Skip to main content

DataSelector

Trait DataSelector 

Source
pub trait DataSelector {
    // Required method
    fn resolve_indices(&self, count: usize) -> Vec<usize>;

    // Provided method
    fn is_contiguous(&self) -> bool { ... }
}
Expand description

Trait for types that can specify a data selection (index-based dimension)

Required Methods§

Source

fn resolve_indices(&self, count: usize) -> Vec<usize>

Resolve this selection to indices (within the given count)

Provided Methods§

Source

fn is_contiguous(&self) -> bool

Returns true if this selector represents a contiguous range. Range types (Range, RangeFrom, etc.) return true. Index arrays (&usize, Vec) return false.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementations on Foreign Types§

Source§

impl DataSelector for &[usize]

Multiple data indices

Source§

fn resolve_indices(&self, count: usize) -> Vec<usize>

Source§

impl DataSelector for Range<usize>

Data range selection

Source§

impl DataSelector for RangeFrom<usize>

Data range from selection

Source§

impl DataSelector for RangeFull

Data full range selection

Source§

impl DataSelector for RangeInclusive<usize>

Data inclusive range selection

Source§

impl DataSelector for RangeTo<usize>

Data range to selection

Source§

impl DataSelector for Vec<usize>

Multiple data indices (Vec)

Source§

fn resolve_indices(&self, count: usize) -> Vec<usize>

Source§

impl DataSelector for usize

Single data index

Source§

fn resolve_indices(&self, count: usize) -> Vec<usize>

Source§

impl<const N: usize> DataSelector for &[usize; N]

Multiple data indices (array reference)

Source§

fn resolve_indices(&self, count: usize) -> Vec<usize>

Implementors§