pub struct DefaultFilesystem { /* private fields */ }Implementations§
Trait Implementations§
Source§impl Filesystem for DefaultFilesystem
impl Filesystem for DefaultFilesystem
fn info(&self) -> FilesystemInfo
fn cwd(&self) -> &str
fn placement(&self, path: &str) -> Result<Placement, FilesystemError>
fn metadata<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_effect_id: &'life1 EffectId,
_work: Option<Arc<WorkBudget>>,
path: &'life2 str,
follow: bool,
) -> Pin<Box<dyn Future<Output = Result<Metadata, FilesystemError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn read<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_effect_id: &'life1 EffectId,
_work: Option<Arc<WorkBudget>>,
path: &'life2 str,
offset: u64,
maximum_bytes: u64,
) -> Pin<Box<dyn Future<Output = Result<Vec<u8>, FilesystemError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Source§fn write<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_effect_id: &'life1 EffectId,
_work: Option<Arc<WorkBudget>>,
path: &'life2 str,
bytes: Vec<u8>,
) -> Pin<Box<dyn Future<Output = Result<(), FilesystemError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn write<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_effect_id: &'life1 EffectId,
_work: Option<Arc<WorkBudget>>,
path: &'life2 str,
bytes: Vec<u8>,
) -> Pin<Box<dyn Future<Output = Result<(), FilesystemError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Atomically replace the file contents, creating the file if it is missing.
Source§fn append<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_effect_id: &'life1 EffectId,
_work: Option<Arc<WorkBudget>>,
path: &'life2 str,
bytes: Vec<u8>,
) -> Pin<Box<dyn Future<Output = Result<(), FilesystemError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn append<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_effect_id: &'life1 EffectId,
_work: Option<Arc<WorkBudget>>,
path: &'life2 str,
bytes: Vec<u8>,
) -> Pin<Box<dyn Future<Output = Result<(), FilesystemError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Append bytes to the file, creating the file if it is missing.
fn mkdir<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_effect_id: &'life1 EffectId,
_work: Option<Arc<WorkBudget>>,
path: &'life2 str,
recursive: bool,
) -> Pin<Box<dyn Future<Output = Result<(), FilesystemError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn remove<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
_effect_id: &'life1 EffectId,
_work: Option<Arc<WorkBudget>>,
path: &'life2 str,
recursive: bool,
budget: &'life3 mut dyn MutationBudget,
) -> Pin<Box<dyn Future<Output = Result<(), FilesystemError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
fn move_entry<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait>(
&'life0 self,
_effect_id: &'life1 EffectId,
_work: Option<Arc<WorkBudget>>,
from: &'life2 str,
to: &'life3 str,
budget: &'life4 mut dyn MutationBudget,
) -> Pin<Box<dyn Future<Output = Result<(), FilesystemError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
fn copy<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait>(
&'life0 self,
_effect_id: &'life1 EffectId,
_work: Option<Arc<WorkBudget>>,
from: &'life2 str,
to: &'life3 str,
recursive: bool,
budget: &'life4 mut dyn MutationBudget,
) -> Pin<Box<dyn Future<Output = Result<(), FilesystemError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
fn next_reader<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
_: &'life1 EffectId,
work: Option<Arc<WorkBudget>>,
reader: &'life2 mut FileReader,
limits: &'life3 TenantLimits,
) -> Pin<Box<dyn Future<Output = Result<ReadOutput, FilesystemError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
fn close_reader<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_: &'life1 EffectId,
__arg2: Option<Arc<WorkBudget>>,
reader: &'life2 mut FileReader,
) -> Pin<Box<dyn Future<Output = Result<(), FilesystemError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn next_directory<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
_: &'life1 EffectId,
__arg2: Option<Arc<WorkBudget>>,
directory: &'life2 mut DirectoryReader,
_: &'life3 TenantLimits,
) -> Pin<Box<dyn Future<Output = Result<Option<DirectoryEntry>, FilesystemError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
fn close_directory<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
_: &'life1 EffectId,
__arg2: Option<Arc<WorkBudget>>,
directory: &'life2 mut DirectoryReader,
_: &'life3 TenantLimits,
) -> Pin<Box<dyn Future<Output = Result<(), FilesystemError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
fn write_chunk<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_: &'life1 EffectId,
__arg2: Option<Arc<WorkBudget>>,
writer: &'life2 mut FileWriter,
bytes: Vec<u8>,
) -> Pin<Box<dyn Future<Output = Result<(), FilesystemError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Source§fn close_writer<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_: &'life1 EffectId,
__arg2: Option<Arc<WorkBudget>>,
writer: &'life2 mut FileWriter,
) -> Pin<Box<dyn Future<Output = Result<(), FilesystemError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn close_writer<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_: &'life1 EffectId,
__arg2: Option<Arc<WorkBudget>>,
writer: &'life2 mut FileWriter,
) -> Pin<Box<dyn Future<Output = Result<(), FilesystemError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Only explicit close publishes. Dropping a resource never publishes it.
fn open_reader<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_effect_id: &'life1 EffectId,
_work: Option<Arc<WorkBudget>>,
path: &'life2 str,
options: ReaderOptions,
) -> Pin<Box<dyn Future<Output = Result<FileReader, FilesystemError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn open_directory<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
_effect_id: &'life1 EffectId,
_work: Option<Arc<WorkBudget>>,
path: &'life2 str,
recursive: bool,
_: &'life3 TenantLimits,
) -> Pin<Box<dyn Future<Output = Result<DirectoryReader, FilesystemError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
fn open_writer<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_effect_id: &'life1 EffectId,
_work: Option<Arc<WorkBudget>>,
path: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<FileWriter, FilesystemError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Source§fn supports_resource_replay(&self) -> bool
fn supports_resource_replay(&self) -> bool
Whether resources can be used after decoding without their local handles.
Auto Trait Implementations§
impl Freeze for DefaultFilesystem
impl RefUnwindSafe for DefaultFilesystem
impl Send for DefaultFilesystem
impl Sync for DefaultFilesystem
impl Unpin for DefaultFilesystem
impl UnsafeUnpin for DefaultFilesystem
impl UnwindSafe for DefaultFilesystem
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