[−][src]Struct succinct::JacobsonRank
Jacobson’s rank structure for fast rank queries over a BitVec
.
Construct with JacobsonRank::new
.
Methods
impl<Store: BitVec> JacobsonRank<Store>
[src]
pub fn new(bits: Store) -> Self
[src]
Creates a new rank support structure for the given bit vector.
pub fn inner(&self) -> &Store
[src]
Borrows a reference to the underlying bit store.
pub fn into_inner(self) -> Store
[src]
Returns the underlying bit store.
Trait Implementations
impl<Store: SpaceUsage> SpaceUsage for JacobsonRank<Store>
[src]
fn is_stack_only() -> bool
[src]
fn heap_bytes(&self) -> usize
[src]
fn total_bytes(&self) -> usize
[src]
Computes the size of the receiver in bytes. Read more
fn stack_bytes() -> usize
[src]
Calculates the stack portion of the size of this type. Read more
impl<Store: BitVec> BitVec for JacobsonRank<Store>
[src]
type Block = Store::Block
The underlying block type used to store the bits of the vector.
fn bit_len(&self) -> u64
[src]
fn block_len(&self) -> usize
[src]
fn get_block(&self, index: usize) -> Store::Block
[src]
fn get_bit(&self, index: u64) -> bool
[src]
fn get_bits(&self, index: u64, count: usize) -> Store::Block
[src]
impl<Store: BitVec> RankSupport for JacobsonRank<Store>
[src]
type Over = bool
The type of value to rank.
fn rank(&self, position: u64, value: bool) -> u64
[src]
fn limit(&self) -> u64
[src]
impl<Store: BitVec> BitRankSupport for JacobsonRank<Store>
[src]
fn rank1(&self, position: u64) -> u64
[src]
fn rank0(&self, position: u64) -> u64
[src]
Returns the rank of 0 at the given position. Read more
impl<Store: Clone> Clone for JacobsonRank<Store>
[src]
fn clone(&self) -> JacobsonRank<Store>
[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Performs copy-assignment from source
. Read more
impl<Store: Debug> Debug for JacobsonRank<Store>
[src]
Auto Trait Implementations
impl<Store> Send for JacobsonRank<Store> where
Store: Send,
Store: Send,
impl<Store> Unpin for JacobsonRank<Store> where
Store: Unpin,
Store: Unpin,
impl<Store> Sync for JacobsonRank<Store> where
Store: Sync,
Store: Sync,
impl<Store> RefUnwindSafe for JacobsonRank<Store> where
Store: RefUnwindSafe,
Store: RefUnwindSafe,
impl<Store> UnwindSafe for JacobsonRank<Store> where
Store: UnwindSafe,
Store: UnwindSafe,
Blanket Implementations
impl<T> From<T> for T
[src]
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,