pub struct EmbeddingCompatibilityDescriptor { /* private fields */ }Expand description
Validated compatibility descriptor whose canonical JSON is identity input.
Implementations§
Source§impl EmbeddingCompatibilityDescriptor
impl EmbeddingCompatibilityDescriptor
Sourcepub fn new(
input: EmbeddingCompatibilityInput,
) -> Result<Self, SearchArtifactError>
pub fn new( input: EmbeddingCompatibilityInput, ) -> Result<Self, SearchArtifactError>
Validate all compatibility fields and freeze schema version 1.
§Errors
Rejects incomplete producer/tokenizer/chunking identities, empty recipes, unnormalized strings, excessive nesting, and oversized canonical JSON.
Sourcepub fn from_json(path: &Path, bytes: &[u8]) -> Result<Self, SearchArtifactError>
pub fn from_json(path: &Path, bytes: &[u8]) -> Result<Self, SearchArtifactError>
Parse one exact canonical persisted descriptor and re-run validation.
§Errors
Distinguishes oversized, malformed/corrupt, and incompatible descriptor bytes. Unknown fields and noncanonical encodings fail closed.
Sourcepub fn to_canonical_json(&self) -> Result<Vec<u8>, SearchArtifactError>
pub fn to_canonical_json(&self) -> Result<Vec<u8>, SearchArtifactError>
Serialize compact JSON with every object key sorted by UTF-8 bytes.
§Errors
Returns a structured validation error if serialization exceeds the v1 bound.
Sourcepub fn compatibility_id(
&self,
) -> Result<EmbeddingCompatibilityId, SearchArtifactError>
pub fn compatibility_id( &self, ) -> Result<EmbeddingCompatibilityId, SearchArtifactError>
SHA-256 compatibility identity over canonical descriptor JSON.
§Errors
Propagates canonical serialization validation.
Sourcepub const fn dimensions(&self) -> u32
pub const fn dimensions(&self) -> u32
Fixed vector width.
Sourcepub const fn normalization(&self) -> EmbeddingNormalization
pub const fn normalization(&self) -> EmbeddingNormalization
Persisted vector normalization contract.
Sourcepub const fn producer(&self) -> &EmbeddingProducerIdentity
pub const fn producer(&self) -> &EmbeddingProducerIdentity
Statically distinct producer descriptor.
Sourcepub const fn tokenizer(&self) -> Option<&TokenizerIdentity>
pub const fn tokenizer(&self) -> Option<&TokenizerIdentity>
Persisted tokenizer identity for text-derived embeddings.
Sourcepub const fn chunking(&self) -> Option<&ChunkingIdentity>
pub const fn chunking(&self) -> Option<&ChunkingIdentity>
Persisted explicit chunking contract, if any.
Trait Implementations§
impl StructuralPartialEq for EmbeddingCompatibilityDescriptor
Auto Trait Implementations§
impl Freeze for EmbeddingCompatibilityDescriptor
impl RefUnwindSafe for EmbeddingCompatibilityDescriptor
impl Send for EmbeddingCompatibilityDescriptor
impl Sync for EmbeddingCompatibilityDescriptor
impl Unpin for EmbeddingCompatibilityDescriptor
impl UnsafeUnpin for EmbeddingCompatibilityDescriptor
impl UnwindSafe for EmbeddingCompatibilityDescriptor
Blanket Implementations§
impl<T> Allocation for T
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,
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