Skip to main content

TimeIndexOps

Trait TimeIndexOps 

Source
pub trait TimeIndexOps<'a>:
    Sized
    + Clone
    + Send
    + Sync
    + 'a {
    type IndexType: AsTime;
    type RangeType: TimeIndexOps<'a, IndexType = Self::IndexType> + 'a;

Show 15 methods // Required methods fn active(&self, w: Range<Self::IndexType>) -> bool; fn range(&self, w: Range<Self::IndexType>) -> Self::RangeType; fn iter(self) -> impl Iterator<Item = Self::IndexType> + Send + Sync + 'a; fn iter_rev( self, ) -> impl Iterator<Item = Self::IndexType> + Send + Sync + 'a; fn len(&self) -> usize; // Provided methods fn active_t(&self, w: Range<i64>) -> bool { ... } fn range_t(&self, w: Range<i64>) -> Self::RangeType { ... } fn first_t(&self) -> Option<i64> { ... } fn first(&self) -> Option<Self::IndexType> { ... } fn last_t(&self) -> Option<i64> { ... } fn last(&self) -> Option<Self::IndexType> { ... } fn iter_t(self) -> impl Iterator<Item = i64> + Send + Sync + 'a { ... } fn iter_rev_t(self) -> impl Iterator<Item = i64> + Send + Sync + 'a { ... } fn is_empty(&self) -> bool { ... } fn merge<R: TimeIndexOps<'a, IndexType = Self::IndexType>>( self, other: R, ) -> MergedTimeIndex<Self, R> { ... }
}

Required Associated Types§

Source

type IndexType: AsTime

Source

type RangeType: TimeIndexOps<'a, IndexType = Self::IndexType> + 'a

Required Methods§

Source

fn active(&self, w: Range<Self::IndexType>) -> bool

Source

fn range(&self, w: Range<Self::IndexType>) -> Self::RangeType

Source

fn iter(self) -> impl Iterator<Item = Self::IndexType> + Send + Sync + 'a

Source

fn iter_rev(self) -> impl Iterator<Item = Self::IndexType> + Send + Sync + 'a

Source

fn len(&self) -> usize

Provided Methods§

Source

fn active_t(&self, w: Range<i64>) -> bool

Source

fn range_t(&self, w: Range<i64>) -> Self::RangeType

Source

fn first_t(&self) -> Option<i64>

Source

fn first(&self) -> Option<Self::IndexType>

Source

fn last_t(&self) -> Option<i64>

Source

fn last(&self) -> Option<Self::IndexType>

Source

fn iter_t(self) -> impl Iterator<Item = i64> + Send + Sync + 'a

Source

fn iter_rev_t(self) -> impl Iterator<Item = i64> + Send + Sync + 'a

Source

fn is_empty(&self) -> bool

Source

fn merge<R: TimeIndexOps<'a, IndexType = Self::IndexType>>( self, other: R, ) -> MergedTimeIndex<Self, R>

Dyn Compatibility§

This trait is not dyn compatible.

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

Implementations on Foreign Types§

Source§

impl<'a, T: TimeIndexOps<'a> + Clone> TimeIndexOps<'a> for &'a T

Source§

type IndexType = <T as TimeIndexOps<'a>>::IndexType

Source§

type RangeType = <T as TimeIndexOps<'a>>::RangeType

Source§

fn active(&self, w: Range<Self::IndexType>) -> bool

Source§

fn range(&self, w: Range<Self::IndexType>) -> Self::RangeType

Source§

fn iter(self) -> impl Iterator<Item = Self::IndexType> + Send + Sync + 'a

Source§

fn iter_rev(self) -> impl Iterator<Item = Self::IndexType> + Send + Sync + 'a

Source§

fn len(&self) -> usize

Implementors§