pub trait SparseWriteGuard<T: CType + DType>: Send + Sync {
    // Required methods
    fn clear<'life0, 'async_trait>(
        &'life0 mut self,
        txn_id: TxnId,
        range: Range
    ) -> Pin<Box<dyn Future<Output = TCResult<()>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
    fn overwrite<'life0, 'async_trait, O>(
        &'life0 mut self,
        txn_id: TxnId,
        other: O
    ) -> Pin<Box<dyn Future<Output = TCResult<()>> + Send + 'async_trait>>
       where O: SparseInstance<DType = T> + TensorPermitRead + 'async_trait,
             Self: 'async_trait,
             'life0: 'async_trait;
    fn write_value<'life0, 'async_trait>(
        &'life0 mut self,
        txn_id: TxnId,
        coord: Coord,
        value: T
    ) -> Pin<Box<dyn Future<Output = TCResult<()>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;

    // Provided method
    fn merge<'life0, 'async_trait, FE>(
        &'life0 mut self,
        txn_id: TxnId,
        filled: SparseFile<FE, T>,
        zeros: SparseFile<FE, T>
    ) -> Pin<Box<dyn Future<Output = TCResult<()>> + Send + 'async_trait>>
       where FE: AsType<Node> + ThreadSafe + 'async_trait,
             Number: CastInto<T>,
             Self: 'async_trait,
             'life0: 'async_trait { ... }
}

Required Methods§

source

fn clear<'life0, 'async_trait>( &'life0 mut self, txn_id: TxnId, range: Range ) -> Pin<Box<dyn Future<Output = TCResult<()>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

source

fn overwrite<'life0, 'async_trait, O>( &'life0 mut self, txn_id: TxnId, other: O ) -> Pin<Box<dyn Future<Output = TCResult<()>> + Send + 'async_trait>>
where O: SparseInstance<DType = T> + TensorPermitRead + 'async_trait, Self: 'async_trait, 'life0: 'async_trait,

source

fn write_value<'life0, 'async_trait>( &'life0 mut self, txn_id: TxnId, coord: Coord, value: T ) -> Pin<Box<dyn Future<Output = TCResult<()>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Provided Methods§

source

fn merge<'life0, 'async_trait, FE>( &'life0 mut self, txn_id: TxnId, filled: SparseFile<FE, T>, zeros: SparseFile<FE, T> ) -> Pin<Box<dyn Future<Output = TCResult<()>> + Send + 'async_trait>>
where FE: AsType<Node> + ThreadSafe + 'async_trait, Number: CastInto<T>, Self: 'async_trait, 'life0: 'async_trait,

Object Safety§

This trait is not object safe.

Implementors§

source§

impl<'a, FE, T, S> SparseWriteGuard<T> for SparseCowWriteGuard<'a, FE, T, S>
where FE: AsType<Node> + ThreadSafe, S: SparseInstance<DType = T> + Clone, T: CType + DType + Debug, Number: From<T>,

source§

impl<'a, G, T> SparseWriteGuard<T> for SparseSliceWriteGuard<'a, G, T>
where G: SparseWriteGuard<T>, T: CType + DType,