[][src]Struct bitvec::index::BitTail

#[repr(transparent)]pub struct BitTail<R> where
    R: BitRegister
{ /* fields omitted */ }

Semantic index of a dead bit after a live region.

Like BitIdx<R>, this type indicates a semantic counter within a register R. However, it marks the position of a dead bit after a live range. This means that it is permitted to have the value of R::BITS, to indicate that a live region touches the semantic back edge of the register R.

Instances of this type will only contain the value 0 when the span that created them is empty. Otherwise, they will have the range 1 ..= R::BITS.

This type cannot be used for indexing into a register R, and does not translate to a BitPos<R>. It has no behavior other than viewing its internal counter for region arithmetic.

Type Parameters

  • R: The register type that these values govern.

Validity

Values of this type are required to be in the range 0 ..= R::BITS. Any value outside this range will cause the program state to become invalid, and the library’s behavior is unspecified. The library will never produce such an invalid value.

Construction

This type cannot be directly constructed outside the bitvec crate. bitvec will construct safe values of this type, and allows users to view them and use them for region computation. All values of this type constructed by bitvec are known to be correct based on user input to the crate.

Implementations

impl<R> BitTail<R> where
    R: BitRegister
[src]

pub fn value(self) -> u8[src]

Views the internal tail value.

Trait Implementations

impl<R: Clone> Clone for BitTail<R> where
    R: BitRegister
[src]

impl<R: Copy> Copy for BitTail<R> where
    R: BitRegister
[src]

impl<R> Debug for BitTail<R> where
    R: BitRegister
[src]

impl<R: Default> Default for BitTail<R> where
    R: BitRegister
[src]

impl<R> Display for BitTail<R> where
    R: BitRegister
[src]

impl<R: Eq> Eq for BitTail<R> where
    R: BitRegister
[src]

impl<R: Hash> Hash for BitTail<R> where
    R: BitRegister
[src]

impl<R: Ord> Ord for BitTail<R> where
    R: BitRegister
[src]

impl<R: PartialEq> PartialEq<BitTail<R>> for BitTail<R> where
    R: BitRegister
[src]

impl<R: PartialOrd> PartialOrd<BitTail<R>> for BitTail<R> where
    R: BitRegister
[src]

impl<R> StructuralEq for BitTail<R> where
    R: BitRegister
[src]

impl<R> StructuralPartialEq for BitTail<R> where
    R: BitRegister
[src]

Auto Trait Implementations

impl<R> RefUnwindSafe for BitTail<R> where
    R: RefUnwindSafe

impl<R> Send for BitTail<R>

impl<R> Sync for BitTail<R>

impl<R> Unpin for BitTail<R>

impl<R> UnwindSafe for BitTail<R> where
    R: UnwindSafe

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> Conv for T[src]

impl<T> Conv for T[src]

impl<T> FmtForward for T[src]

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

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

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

impl<T> Pipe for T[src]

impl<T> PipeAsRef for T[src]

impl<T> PipeBorrow for T[src]

impl<T> PipeDeref for T[src]

impl<T> PipeRef for T[src]

impl<T> Tap for T[src]

impl<T> Tap for T[src]

impl<T, U> TapAsRef<U> for T where
    U: ?Sized
[src]

impl<T, U> TapBorrow<U> for T where
    U: ?Sized
[src]

impl<T> TapDeref for T[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T> TryConv for T[src]

impl<T> TryConv for 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.