pub trait Dir: Store + Send + Sized + 'static {
    type Read: DirRead<Lock = Self>;
    type Write: DirWrite<FileEntry = <Self::Read as DirRead>::FileEntry, Lock = Self>;

    fn read<'life0, 'async_trait>(
        &'life0 self,
        txn_id: TxnId
    ) -> Pin<Box<dyn Future<Output = TCResult<Self::Read>> + Send + 'async_trait>>
   where
        'life0: 'async_trait,
        Self: 'async_trait
; fn write<'life0, 'async_trait>(
        &'life0 self,
        txn_id: TxnId
    ) -> Pin<Box<dyn Future<Output = TCResult<Self::Write>> + Send + 'async_trait>>
   where
        'life0: 'async_trait,
        Self: 'async_trait
; fn create_dir_unique<'life0, 'async_trait>(
        &'life0 self,
        txn_id: TxnId
    ) -> Pin<Box<dyn Future<Output = TCResult<Self>> + Send + 'async_trait>>
   where
        'life0: 'async_trait,
        Self: Sync + 'async_trait
, { ... } fn create_file_unique<'life0, 'async_trait, C, F, B>(
        &'life0 self,
        txn_id: TxnId,
        class: C
    ) -> Pin<Box<dyn Future<Output = TCResult<F>> + Send + 'async_trait>>
   where
        <Self::Write as DirWrite>::FileClass: From<C>,
        <Self::Read as DirRead>::FileEntry: AsType<F>,
        C: Copy + Send + Display,
        B: BlockData,
        F: File<B>,
        C: 'async_trait,
        F: 'async_trait,
        B: 'async_trait,
        'life0: 'async_trait,
        Self: Sync + 'async_trait
, { ... } }
Expand description

A transactional directory

Required Associated Types

The type of read guard used by this Dir

The type of write guard used by this Dir

Required Methods

Lock this Dir for reading.

Lock this Dir for writing.

Provided Methods

Convenience method to create a temporary working directory

Convenience method to create a temporary file

Implementors