pub struct RequireRootFacts {
pub effective_directory: PathBuf,
pub repository_root: Option<PathBuf>,
}Expand description
What:
The two measurements the decision needs.
Option<PathBuf> is “a path or nothing”.
Why:
Finding them needs the filesystem and Git’s -C handling,
which stay outside
this file.
repository_root is nothing when the directory is in no repository.
In TS you’d write (pseudocode):
type RequireRootFacts = { effectiveDirectory: string; repositoryRoot: string | undefined };Fields§
§effective_directory: PathBufThe directory the subcommand runs in,
after every global -C <path>.
repository_root: Option<PathBuf>The root of the repository that directory is in, if any.
Trait Implementations§
Source§impl Clone for RequireRootFacts
impl Clone for RequireRootFacts
Source§impl Debug for RequireRootFacts
impl Debug for RequireRootFacts
impl Eq for RequireRootFacts
Source§impl PartialEq for RequireRootFacts
impl PartialEq for RequireRootFacts
impl StructuralPartialEq for RequireRootFacts
Auto Trait Implementations§
impl Freeze for RequireRootFacts
impl RefUnwindSafe for RequireRootFacts
impl Send for RequireRootFacts
impl Sync for RequireRootFacts
impl Unpin for RequireRootFacts
impl UnsafeUnpin for RequireRootFacts
impl UnwindSafe for RequireRootFacts
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> 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§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
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