pub struct CatalogModel {
pub provider_key: String,
pub provider_name: String,
pub provider_kind: CatalogProviderKind,
pub id: String,
pub label: Option<String>,
pub context_tokens: Option<u64>,
pub max_output_tokens: Option<u64>,
pub input_modalities: Vec<Modality>,
pub pricing: PricingSummary,
pub reasoning: ReasoningSupport,
pub source: CatalogSource,
}Expand description
Normalized model catalog entry. Every provider handler produces these.
Fields§
§provider_key: StringProvider key (e.g. “openrouter”, “groq”).
provider_name: StringHuman-readable provider name.
provider_kind: CatalogProviderKindProvider kind for routing/capability dispatch.
id: StringModel id as used in API requests (no provider prefix).
label: Option<String>Human-readable label.
context_tokens: Option<u64>Input context window in tokens.
max_output_tokens: Option<u64>Maximum output tokens.
input_modalities: Vec<Modality>Input modalities.
pricing: PricingSummaryPricing summary.
reasoning: ReasoningSupportReasoning/thinking capability.
source: CatalogSourceData provenance.
Implementations§
Source§impl CatalogModel
impl CatalogModel
Sourcepub fn new(
provider_key: impl Into<String>,
provider_name: impl Into<String>,
id: impl Into<String>,
) -> Option<Self>
pub fn new( provider_key: impl Into<String>, provider_name: impl Into<String>, id: impl Into<String>, ) -> Option<Self>
Construct a minimal entry, returning None if the id is blank.
Sourcepub fn runtime_id(&self) -> String
pub fn runtime_id(&self) -> String
Synaps runtime id: bare for Anthropic/Claude, “provider/id” otherwise.
Sourcepub fn display_label(&self) -> &str
pub fn display_label(&self) -> &str
Label if present, id otherwise.
Trait Implementations§
Source§impl Clone for CatalogModel
impl Clone for CatalogModel
Source§fn clone(&self) -> CatalogModel
fn clone(&self) -> CatalogModel
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for CatalogModel
impl Debug for CatalogModel
Source§impl PartialEq for CatalogModel
impl PartialEq for CatalogModel
impl Eq for CatalogModel
impl StructuralPartialEq for CatalogModel
Auto Trait Implementations§
impl Freeze for CatalogModel
impl RefUnwindSafe for CatalogModel
impl Send for CatalogModel
impl Sync for CatalogModel
impl Unpin for CatalogModel
impl UnsafeUnpin for CatalogModel
impl UnwindSafe for CatalogModel
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<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
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
Compare self to
key and return true if they are equal.