pipecircuit 0.0.5

Correct. Robust. Fast. Portable.
Documentation
use super::{WarpTable, WarpTableRow};

#[cfg(feature = "secondary-indexes")]
mod algebra;
#[cfg(feature = "secondary-indexes")]
mod lookup;
#[cfg(feature = "secondary-indexes")]
mod mutable;
#[cfg(feature = "secondary-indexes")]
mod range_lookup;
#[cfg(feature = "secondary-indexes")]
mod rows;
#[cfg(feature = "secondary-indexes")]
mod selection;

#[cfg(feature = "secondary-indexes")]
#[doc(hidden)]
pub use algebra::SelectionOperand;
#[cfg(feature = "secondary-indexes")]
pub use lookup::SecondaryIndexLookupOutcome;
#[cfg(feature = "secondary-indexes")]
pub use mutable::{
    DetachedRangeIndexLookupOutcome, DetachedSecondaryIndexLookupOutcome, DetachedSelection,
    MutableRangeIndexLookupOutcome, MutableSecondaryIndexLookupOutcome, MutableSelection,
    MutableSelectionForEachOutcome, MutableSelectionOperand,
};
#[cfg(feature = "secondary-indexes")]
pub use range_lookup::RangeIndexLookupOutcome;
#[cfg(feature = "secondary-indexes")]
pub use rows::{SelectionMembershipInconsistency, SelectionRows};
#[cfg(feature = "secondary-indexes")]
pub use selection::Selection;

impl<Row: WarpTableRow, Brand> WarpTable<Row, Brand> {
    pub fn query(&self) -> Row::Query<'_, Brand> {
        Row::query(self)
    }

    pub fn query_mut(&mut self) -> Row::MutQuery<'_, Brand> {
        Row::query_mut(self)
    }
}

#[cfg(feature = "secondary-indexes")]
#[doc(hidden)]
pub use lookup::bind_secondary_lookup;
#[cfg(feature = "secondary-indexes")]
#[doc(hidden)]
pub use lookup::own_secondary_membership;
#[cfg(feature = "secondary-indexes")]
#[doc(hidden)]
pub use mutable::{
    bind_detached_range_lookup, bind_detached_secondary_lookup, bind_mutable_range_lookup,
    bind_mutable_secondary_lookup,
};
#[cfg(feature = "secondary-indexes")]
#[doc(hidden)]
pub use range_lookup::bind_range_lookup;