pub struct RSNarrow { /* private fields */ }

Implementations§

source§

impl RSNarrow

source

pub fn new(bv: BitVector) -> Self

source

pub fn n_ones(&self) -> usize

Returns the number of bits set to 1 in the bitvector.

source

pub fn n_zeros(&self) -> usize

Returns the number of bits set to 0 in the bitvector.

Trait Implementations§

source§

impl AccessBin for RSNarrow

source§

fn get(&self, i: usize) -> Option<bool>

Returns the bit at the given position i, or None if i is out of bounds.

source§

unsafe fn get_unchecked(&self, i: usize) -> bool

Returns the bit at the given position i.

Safety

Calling this method with an out-of-bounds index is undefined behavior.

source§

impl Clone for RSNarrow

source§

fn clone(&self) -> RSNarrow

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for RSNarrow

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for RSNarrow

source§

fn default() -> RSNarrow

Returns the “default value” for a type. Read more
source§

impl<'de> Deserialize<'de> for RSNarrow

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl PartialEq for RSNarrow

source§

fn eq(&self, other: &RSNarrow) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl RankBin for RSNarrow

source§

fn rank1(&self, i: usize) -> Option<usize>

Returns the number of ones in the indexed sequence up to position i excluded.
source§

unsafe fn rank1_unchecked(&self, i: usize) -> usize

Returns the number of ones in the indexed sequence up to position i excluded. None if the position is out of bound. Read more
source§

fn rank0(&self, i: usize) -> Option<usize>

Returns the number of zeros in the indexed sequence up to position i excluded.
source§

unsafe fn rank0_unchecked(&self, i: usize) -> usize

Returns the number of zeros in the indexed sequence up to position i excluded. Read more
source§

impl Serialize for RSNarrow

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
source§

impl SpaceUsage for RSNarrow

source§

fn space_usage_byte(&self) -> usize

Gives the space usage in bytes of the data structure.

source§

fn space_usage_KiB(&self) -> f64

Gives the space usage of the data structure in KiB.
source§

fn space_usage_MiB(&self) -> f64

Gives the space usage of the data structure in MiB.
source§

fn space_usage_GiB(&self) -> f64

Gives the space usage of the data structure in GiB.
source§

impl Eq for RSNarrow

source§

impl StructuralEq for RSNarrow

source§

impl StructuralPartialEq for RSNarrow

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

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

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,