pub struct DirLock<FE> { /* private fields */ }
Expand description
A clone-able wrapper type over a tokio::sync::RwLock
on a directory.
Implementations§
source§impl<FE: FileLoad> DirLock<FE>
impl<FE: FileLoad> DirLock<FE>
sourcepub async fn read(&self) -> DirReadGuard<FE>
pub async fn read(&self) -> DirReadGuard<FE>
Lock this directory for reading.
sourcepub fn try_read(&self) -> Result<DirReadGuard<FE>, Error>
pub fn try_read(&self) -> Result<DirReadGuard<FE>, Error>
Lock this directory for reading synchronously, if possible.
sourcepub async fn write(&self) -> DirWriteGuard<FE>
pub async fn write(&self) -> DirWriteGuard<FE>
Lock this directory for writing.
sourcepub fn try_write(&self) -> Result<DirWriteGuard<FE>, Error>
pub fn try_write(&self) -> Result<DirWriteGuard<FE>, Error>
Lock this directory for writing synchronously, if possible.
sourcepub fn sync(
&self
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + '_>>
pub fn sync(
&self
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + '_>>
Synchronize the contents of this directory with the filesystem.
This will create new subdirectories and delete entries from the filesystem, but will NOT synchronize the contents of any child directories or files.
Trait Implementations§
Auto Trait Implementations§
impl<FE> !RefUnwindSafe for DirLock<FE>
impl<FE> Send for DirLock<FE>where
FE: Send + Sync,
impl<FE> Sync for DirLock<FE>where
FE: Send + Sync,
impl<FE> Unpin for DirLock<FE>
impl<FE> !UnwindSafe for DirLock<FE>
Blanket Implementations§
source§impl<F> Match for F
impl<F> Match for F
source§fn matches<T>(&self) -> boolwhere
T: TryCastFrom<Self>,
fn matches<T>(&self) -> boolwhere
T: TryCastFrom<Self>,
Returns
true
if self
can be cast into the target type T
.source§impl<F, T> TryCastFrom<F> for Twhere
T: CastFrom<F>,
impl<F, T> TryCastFrom<F> for Twhere
T: CastFrom<F>,
source§fn can_cast_from(_: &F) -> bool
fn can_cast_from(_: &F) -> bool
Test if
value
can be cast into Self
.source§fn opt_cast_from(f: F) -> Option<T>
fn opt_cast_from(f: F) -> Option<T>
Returns
Some(Self)
if the source value can be cast into Self
, otherwise None
.source§impl<F, T> TryCastInto<T> for Fwhere
T: TryCastFrom<F>,
impl<F, T> TryCastInto<T> for Fwhere
T: TryCastFrom<F>,
source§fn can_cast_into(&self) -> bool
fn can_cast_into(&self) -> bool
Test if
self
can be cast into T
.source§fn opt_cast_into(self) -> Option<T>
fn opt_cast_into(self) -> Option<T>
Returns
Some(T)
if self
can be cast into T
, otherwise None
.