pub struct ModelCatalog {
pub schema_version: String,
pub catalog_version: String,
pub descriptors: Vec<ModelDescriptor>,
}Expand description
Versioned, content-addressed catalog embedded in every routing plan.
Fields§
§schema_version: StringSchema version enforced against SCHEMA_VERSION.
catalog_version: StringCatalog contract version enforced against MODEL_CATALOG_VERSION.
descriptors: Vec<ModelDescriptor>Content-addressed model descriptors, sorted by id.
Implementations§
Source§impl ModelCatalog
impl ModelCatalog
Sourcepub fn new(descriptors: Vec<ModelDescriptor>) -> Result<Self, RoutingError>
pub fn new(descriptors: Vec<ModelDescriptor>) -> Result<Self, RoutingError>
Creates a new catalog from descriptors, validates, and digest-sorts them by id.
Sourcepub fn validate(&self) -> Result<(), RoutingError>
pub fn validate(&self) -> Result<(), RoutingError>
Validates schema version, catalog version, descriptor digests, sort order, and non-emptiness.
Sourcepub fn digest(&self) -> Result<String, RoutingError>
pub fn digest(&self) -> Result<String, RoutingError>
Computes a canonical BLAKE3 digest over the validated catalog JSON.
Trait Implementations§
Source§impl Clone for ModelCatalog
impl Clone for ModelCatalog
Source§fn clone(&self) -> ModelCatalog
fn clone(&self) -> ModelCatalog
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · 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 ModelCatalog
impl Debug for ModelCatalog
Source§impl<'de> Deserialize<'de> for ModelCatalog
impl<'de> Deserialize<'de> for ModelCatalog
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>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for ModelCatalog
Source§impl PartialEq for ModelCatalog
impl PartialEq for ModelCatalog
Source§impl Serialize for ModelCatalog
impl Serialize for ModelCatalog
impl StructuralPartialEq for ModelCatalog
Auto Trait Implementations§
impl Freeze for ModelCatalog
impl RefUnwindSafe for ModelCatalog
impl Send for ModelCatalog
impl Sync for ModelCatalog
impl Unpin for ModelCatalog
impl UnsafeUnpin for ModelCatalog
impl UnwindSafe for ModelCatalog
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