pub trait BitSetInterface: BitSetBase + IntoIterator<Item = usize> + LevelMasksExt {
    type BlockIter<'a>: BlockIterator
       where Self: 'a;
    type Iter<'a>: IndexIterator<Item = usize>
       where Self: 'a;
    type IntoBlockIter: BlockIterator;

    // Required methods
    fn block_iter(&self) -> Self::BlockIter<'_>;
    fn iter(&self) -> Self::Iter<'_>;
    fn into_block_iter(self) -> Self::IntoBlockIter;
    fn contains(&self, index: usize) -> bool;
}

Required Associated Types§

source

type BlockIter<'a>: BlockIterator where Self: 'a

source

type Iter<'a>: IndexIterator<Item = usize> where Self: 'a

source

type IntoBlockIter: BlockIterator

Required Methods§

source

fn block_iter(&self) -> Self::BlockIter<'_>

source

fn iter(&self) -> Self::Iter<'_>

source

fn into_block_iter(self) -> Self::IntoBlockIter

source

fn contains(&self, index: usize) -> bool

Object Safety§

This trait is not object safe.

Implementors§

source§

impl<T> BitSetInterface for T
where T: IntoIterator<Item = usize> + LevelMasksExt,

§

type BlockIter<'a> = CachingBlockIter<&'a T> where Self: 'a

§

type Iter<'a> = <<T as BitSetInterface>::BlockIter<'a> as BlockIterator>::IndexIter where Self: 'a

§

type IntoBlockIter = CachingBlockIter<T>