Struct self_update::Move

source ·
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. 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§

source§

impl<'a> Move<'a>

source

pub fn from_source(source: &'a Path) -> Move<'a>

Specify source file

source

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.

source

pub fn to_dest(&self, dest: &Path) -> Result<()>

Move source file to specified destination

Trait Implementations§

source§

impl<'a> Debug for Move<'a>

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

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§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

const: unstable · source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

const: unstable · source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

const: unstable · source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for Twhere U: From<T>,

const: unstable · source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
const: unstable · source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
const: unstable · source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for Twhere V: MultiLane<T>,

§

fn vzip(self) -> V

source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more