pub enum StartupError {
MissingData {
blob: PathBuf,
},
UnreadableData {
blob: PathBuf,
cause: CnResult,
},
OverflowUnsupported {
blob: PathBuf,
needed: u32,
},
NoStateRoot,
}Expand description
Why the runtime could not reach a playable state.
Variants§
MissingData
No compiled world data where the runtime expected it. The usual causes are a build that never ran and an installation missing its data folder.
UnreadableData
The data is present but did not load: a truncated file, a schema the binary no longer understands, or a failed read.
OverflowUnsupported
The world was packaged as one self-contained blob file, but it needs overflow payload blobs, which only the directory layout can hold. Their siblings would land beside the executable, so this is refused rather than half-loaded.
Fields
NoStateRoot
Nothing anchored the state tree, so there is nowhere to look for data.
Implementations§
Source§impl StartupError
impl StartupError
Sourcepub fn from_blob_failure(blob: PathBuf, cause: CnResult) -> Self
pub fn from_blob_failure(blob: PathBuf, cause: CnResult) -> Self
Classify a blob-load failure, distinguishing absent data from data that
is present but unusable, since only the first is the user’s to fix.
blob is the primary blob’s path, passed in rather than resolved here
so the classification stays a pure function of its inputs.
Trait Implementations§
Source§impl Clone for StartupError
impl Clone for StartupError
Source§fn clone(&self) -> StartupError
fn clone(&self) -> StartupError
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 StartupError
impl Debug for StartupError
impl Eq for StartupError
Source§impl PartialEq for StartupError
impl PartialEq for StartupError
impl StructuralPartialEq for StartupError
Auto Trait Implementations§
impl Freeze for StartupError
impl RefUnwindSafe for StartupError
impl Send for StartupError
impl Sync for StartupError
impl Unpin for StartupError
impl UnsafeUnpin for StartupError
impl UnwindSafe for StartupError
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<S, T> Duplex<S> for Twhere
T: FromSample<S> + ToSample<S>,
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
key and return true if they are equal.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 more