pub struct AsyncPhysicalFS { /* private fields */ }
Expand description
A physical filesystem implementation using the underlying OS file system
Implementations§
Trait Implementations§
source§impl AsyncFileSystem for AsyncPhysicalFS
impl AsyncFileSystem for AsyncPhysicalFS
source§fn read_dir<'life0, 'life1, 'async_trait>(
&'life0 self,
path: &'life1 str
) -> Pin<Box<dyn Future<Output = VfsResult<Box<dyn Unpin + Stream<Item = String> + Send>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn read_dir<'life0, 'life1, 'async_trait>(
&'life0 self,
path: &'life1 str
) -> Pin<Box<dyn Future<Output = VfsResult<Box<dyn Unpin + Stream<Item = String> + Send>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Iterates over all direct children of this directory path
NOTE: the returned String items denote the local bare filenames, i.e. they should not contain “/” anywhere
source§fn create_dir<'life0, 'life1, 'async_trait>(
&'life0 self,
path: &'life1 str
) -> Pin<Box<dyn Future<Output = VfsResult<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn create_dir<'life0, 'life1, 'async_trait>(
&'life0 self,
path: &'life1 str
) -> Pin<Box<dyn Future<Output = VfsResult<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Creates the directory at this path Read more
source§fn open_file<'life0, 'life1, 'async_trait>(
&'life0 self,
path: &'life1 str
) -> Pin<Box<dyn Future<Output = VfsResult<Box<dyn SeekAndRead + Send + Unpin>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn open_file<'life0, 'life1, 'async_trait>(
&'life0 self,
path: &'life1 str
) -> Pin<Box<dyn Future<Output = VfsResult<Box<dyn SeekAndRead + Send + Unpin>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Opens the file at this path for reading
source§fn create_file<'life0, 'life1, 'async_trait>(
&'life0 self,
path: &'life1 str
) -> Pin<Box<dyn Future<Output = VfsResult<Box<dyn Write + Send + Unpin>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn create_file<'life0, 'life1, 'async_trait>(
&'life0 self,
path: &'life1 str
) -> Pin<Box<dyn Future<Output = VfsResult<Box<dyn Write + Send + Unpin>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Creates a file at this path for writing
source§fn append_file<'life0, 'life1, 'async_trait>(
&'life0 self,
path: &'life1 str
) -> Pin<Box<dyn Future<Output = VfsResult<Box<dyn Write + Send + Unpin>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn append_file<'life0, 'life1, 'async_trait>(
&'life0 self,
path: &'life1 str
) -> Pin<Box<dyn Future<Output = VfsResult<Box<dyn Write + Send + Unpin>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Opens the file at this path for appending
source§fn metadata<'life0, 'life1, 'async_trait>(
&'life0 self,
path: &'life1 str
) -> Pin<Box<dyn Future<Output = VfsResult<VfsMetadata>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn metadata<'life0, 'life1, 'async_trait>(
&'life0 self,
path: &'life1 str
) -> Pin<Box<dyn Future<Output = VfsResult<VfsMetadata>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Returns the file metadata for the file at this path
source§fn set_modification_time<'life0, 'life1, 'async_trait>(
&'life0 self,
path: &'life1 str,
time: SystemTime
) -> Pin<Box<dyn Future<Output = VfsResult<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn set_modification_time<'life0, 'life1, 'async_trait>(
&'life0 self,
path: &'life1 str,
time: SystemTime
) -> Pin<Box<dyn Future<Output = VfsResult<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Sets the files modification timestamp, if the implementation supports it
source§fn set_access_time<'life0, 'life1, 'async_trait>(
&'life0 self,
path: &'life1 str,
time: SystemTime
) -> Pin<Box<dyn Future<Output = VfsResult<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn set_access_time<'life0, 'life1, 'async_trait>(
&'life0 self,
path: &'life1 str,
time: SystemTime
) -> Pin<Box<dyn Future<Output = VfsResult<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Sets the files access timestamp, if the implementation supports it
source§fn exists<'life0, 'life1, 'async_trait>(
&'life0 self,
path: &'life1 str
) -> Pin<Box<dyn Future<Output = VfsResult<bool>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn exists<'life0, 'life1, 'async_trait>(
&'life0 self,
path: &'life1 str
) -> Pin<Box<dyn Future<Output = VfsResult<bool>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Returns true if a file or directory at path exists, false otherwise
source§fn remove_file<'life0, 'life1, 'async_trait>(
&'life0 self,
path: &'life1 str
) -> Pin<Box<dyn Future<Output = VfsResult<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn remove_file<'life0, 'life1, 'async_trait>(
&'life0 self,
path: &'life1 str
) -> Pin<Box<dyn Future<Output = VfsResult<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Removes the file at this path
source§fn remove_dir<'life0, 'life1, 'async_trait>(
&'life0 self,
path: &'life1 str
) -> Pin<Box<dyn Future<Output = VfsResult<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn remove_dir<'life0, 'life1, 'async_trait>(
&'life0 self,
path: &'life1 str
) -> Pin<Box<dyn Future<Output = VfsResult<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Removes the directory at this path
source§fn copy_file<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
src: &'life1 str,
dest: &'life2 str
) -> Pin<Box<dyn Future<Output = VfsResult<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn copy_file<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
src: &'life1 str,
dest: &'life2 str
) -> Pin<Box<dyn Future<Output = VfsResult<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Copies the src path to the destination path within the same filesystem (optional)
source§fn move_file<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
src: &'life1 str,
dest: &'life2 str
) -> Pin<Box<dyn Future<Output = VfsResult<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn move_file<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
src: &'life1 str,
dest: &'life2 str
) -> Pin<Box<dyn Future<Output = VfsResult<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Moves the src path to the destination path within the same filesystem (optional)
source§fn move_dir<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
src: &'life1 str,
dest: &'life2 str
) -> Pin<Box<dyn Future<Output = VfsResult<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn move_dir<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
src: &'life1 str,
dest: &'life2 str
) -> Pin<Box<dyn Future<Output = VfsResult<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Moves the src directory to the destination path within the same filesystem (optional)
source§fn set_creation_time<'life0, 'life1, 'async_trait>(
&'life0 self,
_path: &'life1 str,
_time: SystemTime
) -> Pin<Box<dyn Future<Output = VfsResult<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn set_creation_time<'life0, 'life1, 'async_trait>(
&'life0 self,
_path: &'life1 str,
_time: SystemTime
) -> Pin<Box<dyn Future<Output = VfsResult<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Sets the files creation timestamp, if the implementation supports it
Auto Trait Implementations§
impl RefUnwindSafe for AsyncPhysicalFS
impl Send for AsyncPhysicalFS
impl Sync for AsyncPhysicalFS
impl Unpin for AsyncPhysicalFS
impl UnwindSafe for AsyncPhysicalFS
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