pub enum DecodeScanFuseError {
HandoffBufferMissing {
handoff: String,
},
ZeroHandoff {
handoff: String,
},
Fusion(FusionError),
}Expand description
Error states surfaced by fuse_decode_scan.
Variants§
HandoffBufferMissing
The caller supplied &decoder and &scanner but neither
declares the named handoff buffer. Fusing would produce a
Program with no shared byte-flow path - the caller’s intent
cannot be honoured.
ZeroHandoff
The caller passed handoff_byte_count = 0. Workgroup
allocations must be strictly positive or the fused Program
declares a zero-sized shared buffer that every driver
rejects. Returning an error instead of asserting (per
PHASE2_DECODE HIGH / LAW 5) keeps adversarial callers from
crashing the driver process.
Fusion(FusionError)
fuse_programs rejected the pair (self-aliasing or
workgroup-size mismatch). The inner error is the original.
Trait Implementations§
Source§impl Debug for DecodeScanFuseError
impl Debug for DecodeScanFuseError
Source§impl Display for DecodeScanFuseError
impl Display for DecodeScanFuseError
Source§impl Error for DecodeScanFuseError
impl Error for DecodeScanFuseError
Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0:
use the Display impl or to_string()
Source§impl From<FusionError> for DecodeScanFuseError
impl From<FusionError> for DecodeScanFuseError
Source§fn from(source: FusionError) -> Self
fn from(source: FusionError) -> Self
Converts to this type from the input type.
Auto Trait Implementations§
impl Freeze for DecodeScanFuseError
impl RefUnwindSafe for DecodeScanFuseError
impl Send for DecodeScanFuseError
impl Sync for DecodeScanFuseError
impl Unpin for DecodeScanFuseError
impl UnsafeUnpin for DecodeScanFuseError
impl UnwindSafe for DecodeScanFuseError
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
Mutably borrows from an owned value. Read more
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>
Converts
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>
Converts
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