pub struct Move<'a> { /* private fields */ }
Expand description
Moves a file from the given path to the specified destination.
source
and dest
must be on the same filesystem.
If replace_using_temp
is specified, the destination file will be
replaced using the given temporary path.
- Errors:
- Io - copying / renaming
Implementations§
Source§impl<'a> Move<'a>
impl<'a> Move<'a>
Sourcepub fn from_source(source: &'a Path) -> Move<'a>
pub fn from_source(source: &'a Path) -> Move<'a>
Specify source file
Sourcepub fn replace_using_temp(&mut self, temp: &'a Path) -> &mut Self
pub fn replace_using_temp(&mut self, temp: &'a Path) -> &mut Self
If specified and the destination file already exists, the “destination” file will be moved to the given temporary location before the “source” file is moved to the “destination” file.
In the event of an io
error while renaming “source” to “destination”,
the temporary file will be moved back to “destination”.
The temp
dir must be explicitly provided since rename
operations require
files to live on the same filesystem.
Trait Implementations§
Auto Trait Implementations§
impl<'a> Freeze for Move<'a>
impl<'a> RefUnwindSafe for Move<'a>
impl<'a> Send for Move<'a>
impl<'a> Sync for Move<'a>
impl<'a> Unpin for Move<'a>
impl<'a> UnwindSafe for Move<'a>
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
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more