surrealdb_core/
lib.rs

1//! # Surrealdb Core
2//!
3//! This crate is the internal core library of SurrealDB.
4//! It contains most of the database functionality on top of which the surreal binary is
5//! implemented.
6//!
7//! <section class="warning">
8//! <h3>Unstable!</h3>
9//! This crate is <b>SurrealDB internal API</b>. It does not adhere to semver and it's API is free to
10//! change and break code even between patch versions. If you are looking for a stable interface
11//! to the Surrealdb library please have a look at <a href="https://crates.io/crates/surrealdb">the rust SDK</a>
12//! </section>
13//!
14
15#![doc(html_favicon_url = "https://surrealdb.s3.amazonaws.com/favicon.png")]
16#![doc(html_logo_url = "https://surrealdb.s3.amazonaws.com/icon.png")]
17
18#[macro_use]
19extern crate tracing;
20
21#[macro_use]
22mod mac;
23
24mod cf;
25mod doc;
26mod exe;
27mod fnc;
28
29pub mod api;
30pub mod cnf;
31pub mod ctx;
32pub mod dbs;
33pub mod env;
34pub mod err;
35pub mod fflags;
36pub mod gql;
37pub mod iam;
38pub mod idg;
39pub mod idx;
40pub mod key;
41pub mod kvs;
42pub mod mem;
43pub mod obs;
44pub mod options;
45pub mod rpc;
46pub mod sql;
47pub mod syn;
48pub mod sys;
49pub mod vs;
50
51#[cfg(feature = "ml")]
52pub use surrealml as ml;
53
54/// Channels for receiving a SurrealQL database export
55pub mod channel {
56	pub use async_channel::bounded;
57	pub use async_channel::unbounded;
58	pub use async_channel::Receiver;
59	pub use async_channel::Sender;
60}