Trait garage_table::schema::TableSchema
source · [−]pub trait TableSchema: Send + Sync {
type P: PartitionKey + Clone + PartialEq + Serialize + for<'de> Deserialize<'de> + Send + Sync;
type S: SortKey + Clone + Serialize + for<'de> Deserialize<'de> + Send + Sync;
type E: Entry<Self::P, Self::S>;
type Filter: Clone + Serialize + for<'de> Deserialize<'de> + Send + Sync;
const TABLE_NAME: &'static str;
fn matches_filter(entry: &Self::E, filter: &Self::Filter) -> bool;
fn try_migrate(_bytes: &[u8]) -> Option<Self::E> { ... }
fn updated(&self, _old: Option<Self::E>, _new: Option<Self::E>) { ... }
}
Expand description
Trait for the schema used in a table
Associated Types
type P: PartitionKey + Clone + PartialEq + Serialize + for<'de> Deserialize<'de> + Send + Sync
type P: PartitionKey + Clone + PartialEq + Serialize + for<'de> Deserialize<'de> + Send + Sync
The partition key used in that table
The sort key used int that table
Associated Constants
const TABLE_NAME: &'static str
const TABLE_NAME: &'static str
The name of the table in the database