pub mod batch;
pub mod core;
pub mod db;
pub mod iter;
pub mod namespace;
pub use core::{DATA, ExpireCursors, META, WeDb, clear_ks_prefix};
pub use batch::DbBatch;
pub use db::Db;
pub use iter::{Dbs, Namespaces};
pub use namespace::Namespace;
pub trait IntoOptId {
fn into_opt_id(self) -> Option<u64>;
}
impl IntoOptId for u64 {
#[inline(always)]
fn into_opt_id(self) -> Option<u64> {
Some(self)
}
}
impl IntoOptId for usize {
#[inline(always)]
fn into_opt_id(self) -> Option<u64> {
Some(self as u64)
}
}
impl IntoOptId for u32 {
#[inline(always)]
fn into_opt_id(self) -> Option<u64> {
Some(self as u64)
}
}
impl IntoOptId for u16 {
#[inline(always)]
fn into_opt_id(self) -> Option<u64> {
Some(self as u64)
}
}
impl IntoOptId for u8 {
#[inline(always)]
fn into_opt_id(self) -> Option<u64> {
Some(self as u64)
}
}
impl IntoOptId for i64 {
#[inline(always)]
fn into_opt_id(self) -> Option<u64> {
Some(self as u64)
}
}
impl IntoOptId for i32 {
#[inline(always)]
fn into_opt_id(self) -> Option<u64> {
Some(self as u64)
}
}
impl IntoOptId for Option<u64> {
#[inline(always)]
fn into_opt_id(self) -> Option<u64> {
self
}
}
impl IntoOptId for () {
#[inline(always)]
fn into_opt_id(self) -> Option<u64> {
None
}
}