starchart/
lib.rs

1#![warn(
2	clippy::pedantic,
3	clippy::nursery,
4	clippy::suspicious,
5	clippy::str_to_string,
6	clippy::string_to_string,
7	missing_copy_implementations,
8	missing_docs
9)]
10#![deny(clippy::all)]
11#![allow(clippy::module_name_repetitions, clippy::no_effect_underscore_binding)]
12#![cfg_attr(
13	docsrs,
14	feature(doc_auto_cfg, doc_cfg),
15	deny(rustdoc::broken_intra_doc_links)
16)]
17#![cfg_attr(not(test), warn(clippy::panic_in_result_fn))]
18//! A simple database system that allows the use of multiple different backends.
19
20#[cfg(feature = "metadata")]
21const METADATA_KEY: &str = "__metadata__";
22
23use std::result::Result as StdResult;
24
25pub mod action;
26mod atomics;
27pub mod backend;
28mod entry;
29pub mod error;
30mod starchart;
31#[cfg(not(tarpaulin_include))]
32mod util;
33
34#[doc(inline)]
35pub use self::{
36	action::Action,
37	entry::{Entry, IndexEntry, Key},
38	error::Error,
39	starchart::Starchart,
40};
41
42/// A type alias for a [`Result`] that wraps around [`Error`].
43pub type Result<T, E = Error> = StdResult<T, E>;
44
45/// The helper derive macro for easily implementing [`IndexEntry`].
46#[cfg(feature = "derive")]
47pub use starchart_derive::IndexEntry;