pub struct WireEnvelopeHeader {
pub paradigm_kind: u8,
pub discriminator: u32,
pub parity_mode: u8,
pub rank_id: Option<u32>,
pub dataset_hash: [u8; 32],
pub params_hash: [u8; 32],
pub shape_fingerprint: [u32; 4],
}Expand description
Paradigm-agnostic envelope header. Carries everything
vernier-partial needs to validate cross-rank compatibility:
paradigm + sub-kind, parity mode, dataset / params hashes, the
shape fingerprint, and the rank id.
Field order is wire-format load-bearing. rkyv’s archived
layout follows declaration order; reordering or inserting a field
changes the byte layout. Add new fields at the end and bump
FORMAT_VERSION.
Fields§
§paradigm_kind: u8§discriminator: u32Paradigm-defined sub-kind. Instance: KernelKind discriminant.
Semantic: 0. Panoptic: 0.
parity_mode: u8ParityMode discriminant.
rank_id: Option<u32>Optional rank identifier (none for single-rank flows).
dataset_hash: [u8; 32]BLAKE3 over the canonical dataset form.
params_hash: [u8; 32]BLAKE3 over the canonical params archive.
shape_fingerprint: [u32; 4]Paradigm-specific four-slot shape fingerprint. Instance:
(n_categories, n_area_ranges, n_images, retain_iou as u32).
Semantic: (n_classes, 0, n_images, 0). Panoptic:
(n_categories, 0, n_images, things_stuff_split as u32).
Trait Implementations§
Source§impl Archive for WireEnvelopeHeader
impl Archive for WireEnvelopeHeader
Source§const COPY_OPTIMIZATION: CopyOptimization<Self>
const COPY_OPTIMIZATION: CopyOptimization<Self>
serialize. Read moreSource§type Archived = ArchivedWireEnvelopeHeader
type Archived = ArchivedWireEnvelopeHeader
Source§type Resolver = WireEnvelopeHeaderResolver
type Resolver = WireEnvelopeHeaderResolver
Source§impl Clone for WireEnvelopeHeader
impl Clone for WireEnvelopeHeader
Source§fn clone(&self) -> WireEnvelopeHeader
fn clone(&self) -> WireEnvelopeHeader
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 WireEnvelopeHeader
impl Debug for WireEnvelopeHeader
Source§impl<__D: Fallible + ?Sized> Deserialize<WireEnvelopeHeader, __D> for Archived<WireEnvelopeHeader>where
u8: Archive,
<u8 as Archive>::Archived: Deserialize<u8, __D>,
u32: Archive,
<u32 as Archive>::Archived: Deserialize<u32, __D>,
Option<u32>: Archive,
<Option<u32> as Archive>::Archived: Deserialize<Option<u32>, __D>,
[u8; 32]: Archive,
<[u8; 32] as Archive>::Archived: Deserialize<[u8; 32], __D>,
[u32; 4]: Archive,
<[u32; 4] as Archive>::Archived: Deserialize<[u32; 4], __D>,
impl<__D: Fallible + ?Sized> Deserialize<WireEnvelopeHeader, __D> for Archived<WireEnvelopeHeader>where
u8: Archive,
<u8 as Archive>::Archived: Deserialize<u8, __D>,
u32: Archive,
<u32 as Archive>::Archived: Deserialize<u32, __D>,
Option<u32>: Archive,
<Option<u32> as Archive>::Archived: Deserialize<Option<u32>, __D>,
[u8; 32]: Archive,
<[u8; 32] as Archive>::Archived: Deserialize<[u8; 32], __D>,
[u32; 4]: Archive,
<[u32; 4] as Archive>::Archived: Deserialize<[u32; 4], __D>,
Source§fn deserialize(
&self,
deserializer: &mut __D,
) -> Result<WireEnvelopeHeader, <__D as Fallible>::Error>
fn deserialize( &self, deserializer: &mut __D, ) -> Result<WireEnvelopeHeader, <__D as Fallible>::Error>
Auto Trait Implementations§
impl Freeze for WireEnvelopeHeader
impl RefUnwindSafe for WireEnvelopeHeader
impl Send for WireEnvelopeHeader
impl Sync for WireEnvelopeHeader
impl Unpin for WireEnvelopeHeader
impl UnsafeUnpin for WireEnvelopeHeader
impl UnwindSafe for WireEnvelopeHeader
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Source§impl<T> ArchiveUnsized for Twhere
T: Archive,
impl<T> ArchiveUnsized for Twhere
T: Archive,
Source§type Archived = <T as Archive>::Archived
type Archived = <T as Archive>::Archived
Archive, it may be
unsized. Read moreSource§fn archived_metadata(
&self,
) -> <<T as ArchiveUnsized>::Archived as ArchivePointee>::ArchivedMetadata
fn archived_metadata( &self, ) -> <<T as ArchiveUnsized>::Archived as ArchivePointee>::ArchivedMetadata
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,
Source§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
out indicating that a T is niched.