#[non_exhaustive]pub enum Argv0LinkMethod {
SoftLink,
HardLink,
Script,
}Expand description
On-disk mechanism used by Cli::create_link to materialize an alternative
argv[0] name so the binary can be invoked under it.
Installers pick the mechanism that suits the platform and environment;
self-healing code can re-run Cli::create_link to restore a deleted link.
Non-exhaustive: more link mechanisms may be added in future releases.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
SoftLink
A symbolic link to the target executable (<name> on Unix, <name>.exe
on Windows). On Windows this may require Developer Mode or elevation.
HardLink
A hard link to the target executable (<name> on Unix, <name>.exe on
Windows). The link must live on the same volume as the target.
Script
A small shim script that forwards to the target via the argv0 command:
a <name>.cmd batch file on Windows, or an executable <name> shell
script on Unix. Useful when links are unavailable or inconvenient.
Trait Implementations§
Source§impl Clone for Argv0LinkMethod
impl Clone for Argv0LinkMethod
Source§fn clone(&self) -> Argv0LinkMethod
fn clone(&self) -> Argv0LinkMethod
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for Argv0LinkMethod
Source§impl Debug for Argv0LinkMethod
impl Debug for Argv0LinkMethod
impl Eq for Argv0LinkMethod
Source§impl PartialEq for Argv0LinkMethod
impl PartialEq for Argv0LinkMethod
Source§fn eq(&self, other: &Argv0LinkMethod) -> bool
fn eq(&self, other: &Argv0LinkMethod) -> bool
self and other values to be equal, and is used by ==.impl StructuralPartialEq for Argv0LinkMethod
Auto Trait Implementations§
impl Freeze for Argv0LinkMethod
impl RefUnwindSafe for Argv0LinkMethod
impl Send for Argv0LinkMethod
impl Sync for Argv0LinkMethod
impl Unpin for Argv0LinkMethod
impl UnsafeUnpin for Argv0LinkMethod
impl UnwindSafe for Argv0LinkMethod
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.