Trait FilesystemConfig

Source
pub trait FilesystemConfig: Send + Sync {
    type Filesystem: Filesystem;

    // Required methods
    fn start_filesystem<'life0, 'life1, 'async_trait>(
        &'life0 self,
        block_device_factory: &'life1 dyn BlockDeviceFactory,
    ) -> Pin<Box<dyn Future<Output = Self::Filesystem> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait;
    fn name(&self) -> String;
}
Expand description

A trait for creating Filesystems.

Required Associated Types§

Source

type Filesystem: Filesystem

The concrete type of the filesystem started by start_filesystem. It must at least implement the Filesystem trait.

Required Methods§

Source

fn start_filesystem<'life0, 'life1, 'async_trait>( &'life0 self, block_device_factory: &'life1 dyn BlockDeviceFactory, ) -> Pin<Box<dyn Future<Output = Self::Filesystem> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Starts an instance of the filesystem.

Source

fn name(&self) -> String

The name of the filesystem. This is used for filtering benchmarks and outputting results.

Implementors§

Source§

impl FilesystemConfig for MountedFilesystem

impl FilesystemConfig for Fxfs

impl FilesystemConfig for Blobfs

impl FilesystemConfig for F2fs

impl FilesystemConfig for Fxblob

impl FilesystemConfig for Memfs

impl FilesystemConfig for Minfs

impl FilesystemConfig for PkgDirTest