Crate succinct [] [src]

Succinct data structures for Rust.

This library is a very early work in progress. So far we have:

  • integer vectors with arbitrary-sized (1- to 64-bit) elements;
  • constant-time rank queries; and
  • O(lg lg n)-time select queries based on binary search over ranks.

Usage

It’s on crates.io, so you can add

[dependencies]
succinct = "0.2.2"

to your Cargo.toml and

extern crate succinct;

to your crate root.

Macros

impl_static_space_usage!

Structs

BinSearchSelect

Performs a select query by binary searching rank queries.

IntVec

A vector of k-bit unsigned integers, where k is determined at run time.

IntVecBuilder

Builder for configuring and constructing an IntVec.

JacobsonRank

Add-on to BitStore to support fast rank queries.

Traits

BitStore

Interface for read-only bit vector operations.

BitStoreMut

Interface for mutable bit vector operations.

BlockType

Types that can be used for IntVec storage.

RankSupport

Interface for types that support rank queries.

SelectSupport

Interface for types that support select queries.

SpaceUsage

Types that know how to compute their space usage.