Struct git_lock::Marker

source ·
pub struct Marker { /* private fields */ }
Expand description

Locks a resource to allow related resources to be updated using files.

As opposed to the File type this one won’t keep the tempfile open for writing and thus consumes no system resources, nor can it be persisted.

Implementations§

source§

impl Marker

source

pub fn acquire_to_hold_resource( at_path: impl AsRef<Path>, mode: Fail, boundary_directory: Option<PathBuf> ) -> Result<Marker, Error>

Like acquire_to_update_resource() but without the possibility to make changes and commit them.

If boundary_directory is given, non-existing directories will be created automatically and removed in the case of a rollback.

source§

impl Marker

source

pub fn commit(self) -> Result<PathBuf, Error<Self>>

Commit the changes written to the previously open file and overwrite the original file atomically, returning the resource path on success.

This fails for markers which weren’t created with File::close()

source§

impl Marker

source

pub fn lock_path(&self) -> &Path

Return the path at which the lock file resides

source

pub fn resource_path(&self) -> PathBuf

Return the path at which the locked resource resides

Trait Implementations§

source§

impl Debug for Marker

source§

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

Formats the value using the given formatter. Read more

Auto Trait Implementations§

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, 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.