pub enum SpecializationStrategy {
OneTablePerClass,
SingleTable,
OneTablePerChild,
}Expand description
How to fold a specialization hierarchy into the relational model.
Variants§
OneTablePerClass
One table per class: parent stays, each child gets its own table with an FK to the parent. Always safe.
SingleTable
Single table: parent absorbs all child columns, plus a discriminator column. Only valid for total + disjoint specializations.
OneTablePerChild
One table per child: parent disappears, each child gets the parent’s columns inlined. Suitable for total specializations.
Trait Implementations§
Source§impl Clone for SpecializationStrategy
impl Clone for SpecializationStrategy
Source§fn clone(&self) -> SpecializationStrategy
fn clone(&self) -> SpecializationStrategy
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for SpecializationStrategy
impl Debug for SpecializationStrategy
Source§impl Default for SpecializationStrategy
impl Default for SpecializationStrategy
Source§fn default() -> SpecializationStrategy
fn default() -> SpecializationStrategy
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for SpecializationStrategy
impl<'de> Deserialize<'de> for SpecializationStrategy
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Hash for SpecializationStrategy
impl Hash for SpecializationStrategy
Source§impl PartialEq for SpecializationStrategy
impl PartialEq for SpecializationStrategy
Source§impl Serialize for SpecializationStrategy
impl Serialize for SpecializationStrategy
impl Copy for SpecializationStrategy
impl Eq for SpecializationStrategy
impl StructuralPartialEq for SpecializationStrategy
Auto Trait Implementations§
impl Freeze for SpecializationStrategy
impl RefUnwindSafe for SpecializationStrategy
impl Send for SpecializationStrategy
impl Sync for SpecializationStrategy
impl Unpin for SpecializationStrategy
impl UnsafeUnpin for SpecializationStrategy
impl UnwindSafe for SpecializationStrategy
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.