#[non_exhaustive]pub enum IrError {
InlineCycle {
op_id: String,
},
InlineUnknownOp {
op_id: String,
},
InlineNonInlinable {
op_id: String,
},
InlineArgCountMismatch {
op_id: String,
expected: usize,
got: usize,
},
InlineNoOutput {
op_id: String,
},
InlineOutputCountMismatch {
op_id: String,
got: usize,
},
Validation {
issues: Vec<ValidationError>,
},
WireFormatValidation {
message: String,
},
Lowering {
message: String,
},
VersionMismatch {
expected: u32,
found: u32,
},
UnknownDialect {
name: String,
requested: String,
},
UnknownOp {
dialect: String,
op: String,
},
}Expand description
Failure produced by foundation-owned IR transformation or Program wire boundaries.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
InlineCycle
A recursive composition cycle was found during operation inlining.
InlineUnknownOp
Operation inlining could not resolve an operation id.
InlineNonInlinable
Operation inlining rejected an operation that must dispatch separately.
InlineArgCountMismatch
The number of arguments passed to an inlined operation did not match.
Fields
InlineNoOutput
The inlined operation never wrote to its declared output buffer.
InlineOutputCountMismatch
The inlined operation declared an invalid number of output buffers.
Fields
Validation
Structural validation rejected the Program with typed issues.
Fields
issues: Vec<ValidationError>Foundation-owned validation issues in deterministic emission order.
WireFormatValidation
Wire-format payload failed validation checks.
Lowering
target-text lowering failed before a shader could be emitted.
VersionMismatch
Wire-format schema version mismatch.
Fields
UnknownDialect
Unknown dialect on the wire.
Fields
UnknownOp
Unknown op inside a known dialect.
Implementations§
Trait Implementations§
impl Eq for IrError
Source§impl Error for IrError
impl Error for IrError
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()
impl StructuralPartialEq for IrError
Auto Trait Implementations§
impl Freeze for IrError
impl RefUnwindSafe for IrError
impl Send for IrError
impl Sync for IrError
impl Unpin for IrError
impl UnsafeUnpin for IrError
impl UnwindSafe for IrError
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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.