Skip to main content

MemoryStore

Trait MemoryStore 

Source
pub trait MemoryStore:
    RecallStore
    + GraphStore
    + ColumnStore { }
👎Deprecated since 0.14.2:

bound on the facet traits you use (FactStore / RecallStore / GraphStore / ColumnStore); MemoryStore is a compat alias since the 0.14 facet split and will be removed in 0.15

Expand description

The full storage surface crate::service::MemoryService historically required: every facet at once. Kept as a supertrait alias so existing callers and bounds (S: MemoryStore) compile unchanged; the blanket impl makes it automatic for any backend that implements the facets, so there is nothing extra to implement and nothing to forget.

Implementors migrating from the pre-facet monolith (≤ 0.13): the methods did not change — they moved. impl MemoryStore becomes impl FactStore + RecallStore + GraphStore + ColumnStore (#1959).

Not to be confused with velesdb-node’s napi class MemoryStore, which is unrelated: that is the JS-facing service object (a MemoryService wrapper), not this storage trait. Same name, opposite sides of the binding seam (#2018).

Since the facet split shipped, no bound in this workspace names the alias (S: GraphStore-style facet bounds everywhere) — it exists only so pre-facet out-of-tree code keeps compiling, and it goes away in the next breaking cycle.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§