pub struct Probes<'a> {
pub env_set: &'a dyn Fn(&str) -> bool,
pub exists: &'a dyn Fn(&Path) -> bool,
pub keychain_has_claude: &'a dyn Fn() -> bool,
}Expand description
Injected IO, so statuses_with is a pure function of config plus these
answers. Tests pass closures over a fixture and never touch a real $HOME,
environment variable, or Keychain.
Fields§
§env_set: &'a dyn Fn(&str) -> boolWhether an environment variable is set to a non-empty value.
exists: &'a dyn Fn(&Path) -> boolWhether a path exists.
keychain_has_claude: &'a dyn Fn() -> boolWhether the macOS login Keychain holds Claude Code’s OAuth blob. Always
false off macOS; a subprocess (security(1)) when it is consulted,
which is why it is injected and asked only once Claude’s credential
file has already been ruled out.
Auto Trait Implementations§
impl<'a> !RefUnwindSafe for Probes<'a>
impl<'a> !Send for Probes<'a>
impl<'a> !Sync for Probes<'a>
impl<'a> !UnwindSafe for Probes<'a>
impl<'a> Freeze for Probes<'a>
impl<'a> Unpin for Probes<'a>
impl<'a> UnsafeUnpin for Probes<'a>
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> 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