[−][src]Struct succinct_rs::louds::LoudsBuilder
The builder of Louds.
Methods
impl LoudsBuilder
[src][−]
pub fn from_bit_string(bs: BitString) -> Self
[src][−]
Prepares for building Louds from LBS (LOUDS Bit vector).
It takes O(log bs
) time for validation.
Panics
If bs
does not represent a LOUDS tree. bs
must satisfy the following condition as LBS.
- Starts from "10"
- In the range of [0, i] for any i (< length of LBS);
- the number of '0' <= the number of '1' + 1, because:
- Each node, including virtual root (node num = 0), has one '0'.
- Each node is derived from one '1'.
- the number of '0' <= the number of '1' + 1, because:
- In the range of [0, length of LBS);
- the number of '0' == the number of '1' + 1
pub fn build(&self) -> Louds
[src][−]
Build Louds.
It internally calls SuccinctBitVectorBuilder::build() and takes O(log N) where N is the length of LBS.
Auto Trait Implementations
impl Send for LoudsBuilder
impl Sync for LoudsBuilder
Blanket Implementations
impl<T> From<T> for 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>,
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src][+]
U: TryFrom<T>,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src][+]
T: ?Sized,
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,