Struct succinct::BinSearchSelect
[−]
[src]
pub struct BinSearchSelect<'a, Rank: 'a> { // some fields omitted }
Performs a select query by binary searching rank queries.
Methods
impl<'a, Rank: RankSupport + 'a> BinSearchSelect<'a, Rank>
[src]
Creates a new binary search select support based on a rank support.
fn new(rank_support: &'a Rank) -> Self
Creates a new binary search selection support given a rank support.
fn inner(&self) -> &'a Rank
Borrows a reference to the underlying rank support.
Trait Implementations
impl<'a, Rank: Bits + 'a> Bits for BinSearchSelect<'a, Rank>
[src]
type Block = Rank::Block
The underlying block type used to store the bits of the slice.
fn block_len(&self) -> usize
The length of the slice in blocks.
fn bit_len(&self) -> u64
The length of the slice in bits.
fn get_block(&self, index: usize) -> Self::Block
Gets the block at position
Read more
fn get_bit(&self, index: u64) -> bool
Gets the bit at position
Read more
fn get_bits(&self, start: u64, count: usize) -> Self::Block
Gets count
bits starting at bit index start
, interpreted as a little-endian integer. Read more
impl<'a, Rank: RankSupport + 'a> RankSupport for BinSearchSelect<'a, Rank>
[src]
type Over = Rank::Over
The type of value to rank.
fn rank(&self, index: u64, value: Self::Over) -> u64
Returns the rank of the given value at a given position. Read more
fn limit(&self) -> u64
The size of the vector being ranked. Read more
impl<'a, Rank: BitRankSupport + 'a> BitRankSupport for BinSearchSelect<'a, Rank>
[src]
fn rank1(&self, index: u64) -> u64
Returns the rank of 1 at the given position. Read more
fn rank0(&self, position: u64) -> u64
Returns the rank of 0 at the given position. Read more
impl<'a, Rank: BitRankSupport + 'a> SelectSupport1 for BinSearchSelect<'a, Rank>
[src]
impl<'a, Rank: BitRankSupport + 'a> SelectSupport0 for BinSearchSelect<'a, Rank>
[src]
impl<'a, Rank: RankSupport + 'a> SelectSupport for BinSearchSelect<'a, Rank>
[src]
type Over = Rank::Over
The type of value that we can search for.
fn select(&self, index: u64, value: Rank::Over) -> Option<u64>
Returns the position of the index
th occurrence of value
.
impl<'a, Rank: BitRankSupport + 'a> SpaceUsage for BinSearchSelect<'a, Rank>
[src]
fn is_stack_only() -> bool
Is the size of this type known statically? Read more
fn total_bytes(&self) -> usize
Computes the size of the receiver in bytes. Read more
fn stack_bytes() -> usize
Calculates the stack portion of the size of this type. Read more
fn heap_bytes(&self) -> usize
Calculates the heap portion of the size of an object. Read more