pipecircuit 0.0.23

Correct. Robust. Fast. Portable. Pick four.
Documentation
use alloc::vec::Vec;

mod bucket;
mod creation;
mod find;
mod inconsistency;
mod insert;
mod remove;
mod replace;

pub(super) use creation::DenseKeyIndexCreationError;
pub(super) use find::{FindOutcome, FoundLocation};
pub(super) use inconsistency::IndexInconsistency;
pub(super) use insert::{CommitInconsistency, CommitOutcome, PrepareInsertOutcome};
pub(super) use insert::{PreparedCommit, PreparedVacancy};
pub(super) use remove::PreparedRemoval;
pub(super) use remove::{PrepareRemoveOutcome, RowRelocation};
pub(super) use replace::{PrepareReplaceOutcome, PreparedReplacement, ReplaceOutcome};

const EMPTY_ROW: u32 = u32::MAX;

pub(super) struct DenseKeyIndex {
    buckets: Vec<u32>,
}

#[cfg(test)]
mod tests;