pub struct ExplicitUseCatalog {
pub rows: Vec<ModelSchema>,
pub unknown: HashSet<String>,
pub codex_cli_signed_in: bool,
}Expand description
The catalog as an explicit use sees it: every row with its available
flag resolved authoritatively, and the rows whose flag could not be
trusted because the secret store errored while checking their credential.
Fields§
§rows: Vec<ModelSchema>§unknown: HashSet<String>Ids of rows whose credential state is unknown: the store errored on the
env key, the ChatGPT sign-in or the OpenRouter key the row needs, or
the Codex CLI’s sign-in couldn’t be confirmed either way. Their
available flag says nothing about the credential; a caller deciding
whether a model is gone must check this set first.
codex_cli_signed_in: boolWhether the Codex CLI is installed and confirmed signed in. A Codex CLI
row’s available also holds while its sign-in is unknown after a check
that failed (and, off Unix, whenever the binary exists), so it doesn’t
say this. A first check still running reads as unknown but leaves the
row unavailable.
Implementations§
Source§impl ExplicitUseCatalog
impl ExplicitUseCatalog
Sourcepub fn new(
rows: Vec<ModelSchema>,
unknown: HashSet<String>,
codex_cli: CodexCliSignIn,
) -> Self
pub fn new( rows: Vec<ModelSchema>, unknown: HashSet<String>, codex_cli: CodexCliSignIn, ) -> Self
The catalog from rows, the ids whose credential state is unknown,
and the Codex CLI’s sign-in. While that sign-in is unknown (always,
off Unix), every Codex CLI row joins unknown: like an unreadable
key, it is not evidence the CLI is connected or not.
Trait Implementations§
Source§impl Clone for ExplicitUseCatalog
impl Clone for ExplicitUseCatalog
Source§impl Debug for ExplicitUseCatalog
impl Debug for ExplicitUseCatalog
Auto Trait Implementations§
impl Freeze for ExplicitUseCatalog
impl RefUnwindSafe for ExplicitUseCatalog
impl Send for ExplicitUseCatalog
impl Sync for ExplicitUseCatalog
impl Unpin for ExplicitUseCatalog
impl UnsafeUnpin for ExplicitUseCatalog
impl UnwindSafe for ExplicitUseCatalog
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> ErasedDestructor for Twhere
T: 'static,
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> ⓘ
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> ⓘ
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