Crate mentat [] [src]

Re-exports

pub extern crate edn;
pub use errors::MentatError;
pub use errors::Result;
pub use query::IntoResult;
pub use query::QueryExecutionResult;
pub use query::QueryExplanation;
pub use query::QueryPlanStep;
pub use query::q_once;
pub use query_builder::QueryBuilder;
pub use conn::CacheAction;
pub use conn::CacheDirection;
pub use conn::Conn;
pub use conn::InProgress;
pub use conn::Metadata;
pub use conn::Pullable;
pub use conn::Queryable;
pub use conn::Syncable;
pub use store::Store;

Modules

conn
entity_builder
errors
query
query_builder
store
vocabulary

This module exposes an interface for programmatic management of vocabularies.

Macros

bail
kw

Produce the appropriate Keyword for the provided namespace and name. This lives here because we can't re-export macros: https://github.com/rust-lang/rust/issues/29638.

var

Produce the appropriate Variable for the provided valid ?-prefixed name. This lives here because we can't re-export macros: https://github.com/rust-lang/rust/issues/29638.

Structs

Attribute

A Mentat schema attribute has a value type and several other flags determining how assertions with the attribute are interpreted.

DateTime

ISO 8601 combined date and time with time zone.

DbError
Keyword

A keyword is a symbol, optionally with a namespace, that prints with a leading colon. This concept is imported from Clojure, as it features in EDN and the query syntax that we use.

KnownEntid

An entid that's either already in the store, or newly allocated to a tempid. TODO: we'd like to link this in some way to the lifetime of a particular PartitionMap.

ParseError
PlainSymbol

A simplification of Clojure's Symbol.

QueryInputs

Define the inputs to a query. This is in two parts: a set of values known now, and a set of types known now. The separate map of types is to allow queries to be algebrized without full knowledge of the bindings that will be used at execution time. When built correctly, types is guaranteed to contain the types of values -- use QueryInputs::new or QueryInputs::with_values to construct an instance.

QueryOutput
RelResult

The result you get from a 'rel' query, like:

Schema

Represents a Mentat schema.

TxObserver
TxReport

A transaction report summarizes an applied transaction.

Utc

The UTC time zone. This is the most efficient time zone when you don't need the local time. It is also used as an offset (which is also a dummy type).

Uuid

A Universally Unique Identifier (UUID).

Variable

Enums

AlgebrizerError
Binding

The values bound in a query specification can be:

FindSpec

A definition of the first part of a find query: the [:find ?foo ?bar…] bit.

ProjectorError
PullError
QueryResults
SQLError
TypedValue

Represents a value that can be stored in a Mentat store.

ValueType

The attribute of each Mentat assertion has a :db/valueType constraining the value to a particular set. Mentat recognizes the following :db/valueType values.

Constants

CORE_SCHEMA_VERSION
DB_SCHEMA_CORE

Traits

HasSchema

Functions

new_connection

Type Definitions

AttributeSet
Entid

Represents one entid in the entid space.