Skip to main content

Crate surrealdb_core

Crate surrealdb_core 

Source
Expand description

§Surrealdb Core

This crate is the internal core library of SurrealDB. It contains most of the database functionality on top of which the surreal binary is implemented.

Unstable!

This crate is SurrealDB internal API. It does not adhere to SemVer and its API is free to change and break code even between patch versions. If you are looking for a stable interface to the SurrealDB library please have a look at the Rust SDK.

Modules§

api
catalog
SurrealDB Catalog definitions.
channel
Channels for receiving a SurrealQL database export
cnf
ctx
This module defines and handles the context for the SurrealDB database.
dbs
Datastore module which is the core of the database node. In this module we essentially manage the entire lifecycle of a database request acting as the glue between the API and the response. In this module we use channels as a transport layer and executors to process the operations. This module also gives a context to the transaction.
env
err
exec
Streaming Execution Module
expr
The type definitions for the computation format of the surreaql executor.
gql
GraphQL support for SurrealDB.
iam
idx
kvs
The module defining the key value store. Everything related the transaction for the key value store is defined in the tx.rs file. This module enables the following operations on the key value store:
mem
obs
This module defines the operations for object storage using the object_store crate. This will enable the user to store objects using local file storage, memory, or cloud storage such as S3 or GCS.
options
rpc
sql
The full type definitions for the SurrealQL query language
syn
Module containing the implementation of the surrealql tokens, lexer, and parser.

Macros§

define_aggregate
Helper macro to define simple aggregate functions with their accumulators.
define_async_function
Define an async scalar function that needs access to EvalContext.
define_context_function
Define a context-aware scalar function that needs access to EvalContext.
define_pure_function
Define a pure scalar function that wraps an existing fnc::* implementation.
lazy_env_parse
A macro that allows lazily parsing a value from the environment variable, with a fallback default value if the variable is not set or parsing fails.
map
Creates a new b-tree map of key-value pairs.
mrg
Extends a b-tree map of key-value pairs.
register_aggregates
Helper macro to register multiple aggregate functions at once.
register_functions
Helper macro to register multiple functions at once.

Structs§

CommunityComposer
Composer for the community edition of SurrealDB.