Struct self_update::Move [−][src]
pub struct Move<'a> { /* fields omitted */ }
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.
If the existing dest
file is a currently running long running program,
replace_using_temp
may run into errors cleaning up the temp dir.
If that’s the case for your use-case, consider not specifying a temp dir to use.
- Errors:
- Io - copying / renaming
Implementations
impl<'a> Move<'a>
[src]
impl<'a> Move<'a>
[src]pub fn from_source(source: &'a Path) -> Move<'a>
[src]
pub fn from_source(source: &'a Path) -> Move<'a>
[src]Specify source file
pub fn replace_using_temp(&mut self, temp: &'a Path) -> &mut Self
[src]
pub fn replace_using_temp(&mut self, temp: &'a Path) -> &mut Self
[src]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> 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
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]pub fn borrow_mut(&mut self) -> &mut T
[src]
pub fn borrow_mut(&mut self) -> &mut T
[src]Mutably borrows from an owned value. Read more
impl<T> Instrument for T
[src]
impl<T> Instrument for T
[src]fn instrument(self, span: Span) -> Instrumented<Self>
[src]
fn instrument(self, span: Span) -> Instrumented<Self>
[src]Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more
fn in_current_span(self) -> Instrumented<Self>
[src]
fn in_current_span(self) -> Instrumented<Self>
[src]impl<V, T> VZip<V> for T where
V: MultiLane<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,