pub struct WorldManifest {
pub component_counts: Vec<(u8, u32)>,
pub max_blob_index: u32,
}Expand description
A verified summary of the blob’s shape, produced by cook from the final
record streams and carried alongside them in the metadata block. The runtime
trusts it (debug builds re-derive and assert it matches): the per-type
counts pre-size the ECS columns before the bulk component load, and
max_blob_index names the overflow files without scanning either stream.
Anything further (type presence, feature flags) is deliberately not
duplicated here: it is a counts lookup away.
Fields§
§component_counts: Vec<(u8, u32)>(component discriminant, record count), ascending, nonzero counts only.
max_blob_index: u32Highest blob index any payload locator references; 0 = no overflow.
Implementations§
Source§impl WorldManifest
impl WorldManifest
Sourcepub fn from_records(
defs: &[BlobAssetDef],
resources: &[ResourceRecord],
) -> WorldManifest
pub fn from_records( defs: &[BlobAssetDef], resources: &[ResourceRecord], ) -> WorldManifest
Derive the manifest from the final record streams. Cook builds the shipped manifest with this (so it is consistent by construction); the runtime re-derives it in debug builds to assert the shipped copy matches.
Trait Implementations§
Source§impl Clone for WorldManifest
impl Clone for WorldManifest
Source§fn clone(&self) -> WorldManifest
fn clone(&self) -> WorldManifest
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 WorldManifest
impl Debug for WorldManifest
Source§impl Default for WorldManifest
impl Default for WorldManifest
Source§fn default() -> WorldManifest
fn default() -> WorldManifest
Source§impl<'de> Deserialize<'de> for WorldManifest
impl<'de> Deserialize<'de> for WorldManifest
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<WorldManifest, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<WorldManifest, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Source§impl PartialEq for WorldManifest
impl PartialEq for WorldManifest
Source§impl Serialize for WorldManifest
impl Serialize for WorldManifest
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
impl StructuralPartialEq for WorldManifest
Auto Trait Implementations§
impl Freeze for WorldManifest
impl RefUnwindSafe for WorldManifest
impl Send for WorldManifest
impl Sync for WorldManifest
impl Unpin for WorldManifest
impl UnsafeUnpin for WorldManifest
impl UnwindSafe for WorldManifest
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> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
impl<S, T> Duplex<S> for Twhere
T: FromSample<S> + ToSample<S>,
Source§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
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 moreSource§impl<F, T> IntoSample<T> for Fwhere
T: FromSample<F>,
impl<F, T> IntoSample<T> for Fwhere
T: FromSample<F>,
fn into_sample(self) -> T
Source§impl<T> Pointable for T
impl<T> Pointable for T
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
Source§impl<R, P> ReadPrimitive<R> for P
impl<R, P> ReadPrimitive<R> for P
Source§fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
ReadEndian::read_from_little_endian().