[][src]Struct lset::Span

#[repr(C)]pub struct Span<T, U = T> {
    pub start: T,
    pub count: U,
}

Expresses a linear set by its start element and number of elements.

This type is fully isomorphic with core::ops::Range and Line. However, unlike core::ops::Range, this type is not an iterator and therefore can implement Copy.

Fields

start: T

The start element

count: U

The number of elments

Trait Implementations

impl<T: Clone, U: Clone> Clone for Span<T, U>[src]

impl<T, U> Contains<Span<T, U>> for Span<T, U> where
    Self: Into<Line<T>> + Clone,
    T: PartialOrd
[src]

impl<T, U> Contains<T> for Span<T, U> where
    Self: Into<Line<T>> + Clone,
    Line<T>: Contains<T>, 
[src]

impl<T: Copy, U: Copy> Copy for Span<T, U>[src]

impl<T: Debug, U: Debug> Debug for Span<T, U>[src]

impl<T: Default, U: Default> Default for Span<T, U>[src]

impl<T, U, V> Empty for Span<T, U> where
    T: PartialOrd<V> + Add<U, Output = V> + Clone,
    U: Clone
[src]

impl<T: Eq, U: Eq> Eq for Span<T, U>[src]

impl<T: Clone + Sub<T, Output = U>, U> From<Line<T>> for Span<T, U>[src]

impl<T: Copy + Sub<T, Output = U>, U> From<Range<T>> for Span<T, U>[src]

impl<T: Clone + Add<U, Output = T>, U> From<Span<T, U>> for Range<T>[src]

impl<T: Clone + Add<U, Output = T>, U> From<Span<T, U>> for Line<T>[src]

impl<T: PartialEq, U: PartialEq> PartialEq<Span<T, U>> for Span<T, U>[src]

impl<T, U> Split<Span<T, U>> for Span<T, U> where
    Self: Into<Line<T>>,
    Line<T>: Into<Self>,
    Line<T>: Split<Line<T>>, 
[src]

impl<T, U> Split<U> for Span<T, U> where
    T: Add<U, Output = T> + Clone,
    Line<T>: Split<T> + Into<Self>,
    Self: Into<Line<T>>, 
[src]

impl<T, U> StructuralEq for Span<T, U>[src]

impl<T, U> StructuralPartialEq for Span<T, U>[src]

Auto Trait Implementations

impl<T, U> Send for Span<T, U> where
    T: Send,
    U: Send

impl<T, U> Sync for Span<T, U> where
    T: Sync,
    U: Sync

impl<T, U> Unpin for Span<T, U> where
    T: Unpin,
    U: Unpin

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.