Skip to main content

Crate parse_rust_storage

Crate parse_rust_storage 

Source
Expand description

StorageAdapter trait and the query/update AST adapters lower.

The trait must be shaped by two consumers, not one. Building against Mongo alone bakes Mongo-isms (BSON semantics, $ operators, implicit schema) into the interface, and the Postgres port then fights it, which is roughly what happened upstream and produced the 55 catalogued divergences. The rule: if a method can only be implemented sensibly for one backend, the trait is wrong.

Only the pieces the 0.1.0 proof of concept needs exist so far: schemas, a small constraint vocabulary, and the CRUD verbs. Aggregation, relations and transactions are absent.

Re-exports§

pub use adapter::Row;
pub use adapter::StorageAdapter;
pub use adapter::WriteResult;
pub use query::Comparison;
pub use query::Constraint;
pub use query::QueryOptions;
pub use query::SortDirection;
pub use schema::ClassSchema;
pub use schema::FieldType;

Modules§

adapter
The StorageAdapter trait.
query
The query AST adapters lower.
schema
Field types, and the per-class shape a transform needs.