pub type Metadata = Value;Expand description
Metadata type for vector payloads
Uses serde_json::Value for flexible JSON-compatible storage. Supports arbitrary nested structures, arrays, and primitive types.
§Example
use embedvec::Metadata;
let meta: Metadata = serde_json::json!({
"doc_id": "123",
"category": "finance",
"timestamp": 1737400000,
"tags": ["important", "reviewed"]
});Aliased Type§
pub enum Metadata {
Null,
Bool(bool),
Number(Number),
String(String),
Array(Vec<Value>),
Object(Map<String, Value>),
}Variants§
Null
Represents a JSON null value.
let v = json!(null);Bool(bool)
Represents a JSON boolean.
let v = json!(true);Number(Number)
Represents a JSON number, whether integer or floating point.
let v = json!(12.5);String(String)
Represents a JSON string.
let v = json!("a string");Array(Vec<Value>)
Represents a JSON array.
let v = json!(["an", "array"]);Object(Map<String, Value>)
Represents a JSON object.
By default the map is backed by a BTreeMap. Enable the preserve_order
feature of serde_json to use IndexMap instead, which preserves
entries in the order they are inserted into the map. In particular, this
allows JSON data to be deserialized into a Value and serialized to a
string while retaining the order of map keys in the input.
let v = json!({ "an": "object" });