#[non_exhaustive]pub struct AuthStatusEntry {
pub provider: String,
pub env: String,
pub identity: String,
pub expires_at: String,
pub scopes: Vec<String>,
pub expired: bool,
pub refreshable: bool,
}Expand description
Data rendered by auth status.
Built by status_result/to_status_entry from the dispatcher’s
Credential (or its absence). Consumer code receives it as a command
result and should not construct it directly — #[non_exhaustive] lets
this framework add fields (as it did for refreshable)
without another breaking release.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.provider: StringProvider name.
env: StringEnvironment name.
identity: StringCached identity, empty when missing or unavailable.
expires_at: StringCredential expiration timestamp, empty when missing or unavailable.
scopes: Vec<String>OAuth scopes granted to the cached credential, empty when missing, unavailable, or the provider doesn’t expose scope data (e.g. PATs).
expired: boolWhether the cached credential is expired or unavailable.
refreshable: boolWhether a renewal mechanism (e.g. an OAuth refresh token) is on file
for this credential — reflects presence, not verified validity, since
that’s only discoverable by attempting a renewal. Always false when
there is no cached credential, or the provider has no such mechanism
(e.g. PATs) — expired && !refreshable means the next command
definitely needs auth login, while expired && refreshable means it
will attempt a silent renewal first and only fall back to an
interactive login if that fails.
Trait Implementations§
Source§impl Clone for AuthStatusEntry
impl Clone for AuthStatusEntry
Source§fn clone(&self) -> AuthStatusEntry
fn clone(&self) -> AuthStatusEntry
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for AuthStatusEntry
impl Debug for AuthStatusEntry
Source§impl<'de> Deserialize<'de> for AuthStatusEntry
impl<'de> Deserialize<'de> for AuthStatusEntry
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
impl Eq for AuthStatusEntry
Source§impl PartialEq for AuthStatusEntry
impl PartialEq for AuthStatusEntry
Source§impl Serialize for AuthStatusEntry
impl Serialize for AuthStatusEntry
impl StructuralPartialEq for AuthStatusEntry
Auto Trait Implementations§
impl Freeze for AuthStatusEntry
impl RefUnwindSafe for AuthStatusEntry
impl Send for AuthStatusEntry
impl Sync for AuthStatusEntry
impl Unpin for AuthStatusEntry
impl UnsafeUnpin for AuthStatusEntry
impl UnwindSafe for AuthStatusEntry
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,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
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.