#![doc = include_str!("../README.md")]
#[macro_use]
extern crate static_assertions;
pub mod api;
#[cfg(any(feature = "fdb-5_1", feature = "fdb-5_2", feature = "fdb-6_0"))]
pub mod cluster;
mod database;
pub mod directory;
mod error;
#[cfg(any(feature = "fdb-7_0", feature = "fdb-7_1"))]
#[deny(missing_docs)]
pub mod fdb_keys;
pub mod future;
mod keyselector;
#[cfg(any(feature = "fdb-7_1"))]
#[deny(missing_docs)]
pub mod mapped_key_values;
#[allow(clippy::all)]
pub mod options;
mod transaction;
pub mod tuple;
#[cfg(any(feature = "fdb-5_1", feature = "fdb-5_2", feature = "fdb-6_0"))]
pub use crate::cluster::Cluster;
pub use crate::database::*;
pub use crate::error::FdbError;
pub use crate::error::FdbResult;
pub use crate::keyselector::*;
pub use crate::transaction::*;
pub unsafe fn boot() -> api::NetworkAutoStop {
let network_builder = api::FdbApiBuilder::default()
.build()
.expect("foundationdb API to be initialized");
network_builder.boot().expect("fdb network running")
}
#[cfg(target_os = "linux")]
pub fn default_config_path() -> &'static str {
"/etc/foundationdb/fdb.cluster"
}
#[cfg(target_os = "macos")]
pub fn default_config_path() -> &'static str {
"/usr/local/etc/foundationdb/fdb.cluster"
}
#[cfg(target_os = "windows")]
pub fn default_config_path() -> &'static str {
"C:/ProgramData/foundationdb/fdb.cluster"
}