Expand description
Module
processing functionality.
Re-exports§
pub use index::BoundsCheckPolicies;
pub use index::BoundsCheckPolicy;
pub use index::IndexableLength;
pub use index::IndexableLengthError;
Modules§
- constant_
evaluator 🔒 - emitter 🔒
- index
- Definitions for index bounds checking.
- layouter 🔒
- namer 🔒
- overloads 🔒
- Overload resolution for builtin functions.
- terminator 🔒
- type_
methods 🔒 - Methods on
TypeInner
,Scalar
, andScalarKind
. - typifier 🔒
Structs§
- Alignment
- A newtype struct where its only valid values are powers of 2
- Constant
Evaluator - A context for evaluating constant expressions.
- Emitter
- Helper class to emit expressions
- Expression
Kind Tracker - Global
Ctx - Layout
Error - Layouter
- Helper processor that derives the sizes of all types.
- Missing
Special Type - Namer
- This processor assigns names to all the things in a module that may need identifiers in a textual backend.
- Resolve
Context - Rule
- A single type rule.
- Type
Layout - Size and alignment information for a type.
Enums§
- Conclusion
- The result type of a
Rule
. - Constant
Evaluator Error - Expression
Kind - Hashable
Literal - Layout
Error Inner - NameKey
- Resolve
Array Size Error - Resolve
Error - Type
Resolution - The result of computing an expression’s type.
- U32Eval
Error 🔒
Traits§
- Overload
Set - A trait for types representing of a set of Naga IR type rules.
Functions§
- compare_
types - Compare two types.
- ensure_
block_ returns - Ensure that the given block has return statements at the end of its control flow.
- flatten_
compose - Return an iterator over the individual components assembled by a
Compose
expression. - min_
max_ float_ representable_ by - Returns a tuple of
crate::Literal
s representing the minimum and maximum float values exactly representable by the provided float and integer types. Panics iffloat
is not one ofF16
,F32
, orF64
, orint
is not one ofI32
,U32
,I64
, orU64
.