Skip to main content

TableIndexCdc

Trait TableIndexCdc 

Source
pub trait TableIndexCdc<T> {
    // Required methods
    fn insert_cdc(
        &self,
        value: T,
        link: Link,
    ) -> (Option<Link>, Vec<ChangeEvent<Pair<T, Link>>>);
    fn insert_checked_cdc(
        &self,
        value: T,
        link: Link,
    ) -> Option<Vec<ChangeEvent<Pair<T, Link>>>>;
    fn remove_cdc(
        &self,
        value: T,
        link: Link,
    ) -> (Option<(T, Link)>, Vec<ChangeEvent<Pair<T, Link>>>);
}

Required Methods§

Source

fn insert_cdc( &self, value: T, link: Link, ) -> (Option<Link>, Vec<ChangeEvent<Pair<T, Link>>>)

Source

fn insert_checked_cdc( &self, value: T, link: Link, ) -> Option<Vec<ChangeEvent<Pair<T, Link>>>>

Source

fn remove_cdc( &self, value: T, link: Link, ) -> (Option<(T, Link)>, Vec<ChangeEvent<Pair<T, Link>>>)

Implementors§

Source§

impl<PrimaryKey, const DATA_LENGTH: usize, PkNodeType> TableIndexCdc<PrimaryKey> for PrimaryIndex<PrimaryKey, DATA_LENGTH, PkNodeType>
where PrimaryKey: Debug + Eq + Hash + Clone + Send + Ord, PkNodeType: NodeLike<Pair<PrimaryKey, OffsetEqLink<DATA_LENGTH>>> + Send + 'static,

Source§

impl<T, Node, const N: usize> TableIndexCdc<T> for IndexMap<T, OffsetEqLink<N>, Node>
where T: Debug + Eq + Hash + Clone + Send + Ord, Node: NodeLike<Pair<T, OffsetEqLink<N>>> + Send + 'static,

Source§

impl<T, Node, const N: usize> TableIndexCdc<T> for IndexMultiMap<T, OffsetEqLink<N>, Node>
where T: Debug + Eq + Hash + Clone + Send + Ord, Node: NodeLike<MultiPair<T, OffsetEqLink<N>>> + Send + 'static,