Skip to main content

uni_store/backend/
capabilities.rs

1// SPDX-License-Identifier: Apache-2.0
2// Copyright 2024-2026 Dragonscale Team
3
4//! Optional marker traits for compile-time capability guarantees.
5//!
6//! These are used when constructing backends directly (not through
7//! `dyn StorageBackend`) to provide compile-time proof that a backend
8//! supports a given capability.
9
10use super::traits::StorageBackend;
11
12/// Marker: this backend supports vector similarity search.
13pub trait VectorSearchCapability: StorageBackend {}
14
15/// Marker: this backend supports full-text search.
16pub trait FullTextSearchCapability: StorageBackend {}
17
18/// Marker: this backend supports scalar indexes.
19pub trait ScalarIndexCapability: StorageBackend {}