pub enum ZombieError {
ContextNotFound {
tock: Tock,
location: &'static str,
},
NoReplayer {
context_start: Tock,
context_end: Tock,
},
ReplayFailed {
target: Tock,
reason: Box<str>,
},
TypeMismatch {
expected: &'static str,
tock: Tock,
},
NotInitialized,
InvalidRecordState {
from: &'static str,
to: &'static str,
},
EvictionFailed {
reason: Box<str>,
},
IndexOutOfBounds {
tock: Tock,
context_start: Tock,
context_end: Tock,
index: usize,
len: usize,
},
ReplayLoopExceeded {
target: Tock,
max_iterations: usize,
},
}Expand description
Main error type for zombie operations.
Each variant includes enough context to diagnose the issue.
Uses Box<str> instead of String for reasons to reduce size of error variants.
Variants§
ContextNotFound
No context found for a given tock during replay. This can happen if a context was incorrectly evicted while still needed.
NoReplayer
Context exists but has no replayer (should not happen in normal operation).
ReplayFailed
Replay did not produce the expected result.
TypeMismatch
Type mismatch during downcast (user stored wrong type or corruption).
NotInitialized
Runtime not initialized - must call Runtime::init() first.
InvalidRecordState
Invalid record state transition (internal logic error).
EvictionFailed
Eviction operation failed.
IndexOutOfBounds
Index out of bounds in context value array.
ReplayLoopExceeded
Replay loop exceeded maximum iterations (possible infinite loop).
Implementations§
Source§impl ZombieError
impl ZombieError
Sourcepub fn context_not_found(tock: Tock, location: &'static str) -> Self
pub fn context_not_found(tock: Tock, location: &'static str) -> Self
Create a ContextNotFound error with location context.
Sourcepub fn type_mismatch<T>(tock: Tock) -> Self
pub fn type_mismatch<T>(tock: Tock) -> Self
Create a TypeMismatch error.