pub trait Data:
Clone
+ Serialize
+ DeserializeOwned { }Expand description
Marker trait for data types that can be stored in Eidetica.
This trait requires serialization capabilities and cloning for data structures that can be stored in the Eidetica database. All storable types must support JSON serialization/deserialization and cloning for efficient data operations.
Implementing this trait signifies that a type can be safely used as the data component of an Entry in the database.
§Examples
use eidetica::crdt::Data;
#[derive(Clone, serde::Serialize, serde::Deserialize)]
struct MyData {
value: String,
}
impl Data for MyData {}Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.