//! Helper struct for inserting relational data in the database use super::ID; use super::data::TypedValue; use serde::{Serialize,Deserialize}; /// Value to insert #[derive(Debug,Clone,Serialize,Deserialize)] pub struct InsertValue { pub model_id: ID, pub value: TypedValue } impl InsertValue { pub fn new(model_id : ID, value : TypedValue) -> Self { Self { model_id, value } } } /// Info for inserting a relation #[derive(Debug,Clone,Serialize,Deserialize)] pub struct InsertRel { pub model_id: ID, pub related_id: ID, pub values: Vec } impl InsertRel { pub fn new(model_id : ID, related_id: ID, values : Vec) -> Self { Self { model_id, related_id, values } } } /// Info for inserting a relation #[derive(Debug,Clone,Serialize,Deserialize)] pub struct InsertObj { pub model_id: ID, pub values: Vec, pub relations: Vec, } impl InsertObj { pub fn new(model_id : ID, values : Vec, relations: Vec) -> Self { Self { model_id, values, relations } } }