Struct naga::valid::ModuleInfo
source · pub struct ModuleInfo {
type_flags: Vec<TypeFlags>,
functions: Vec<FunctionInfo>,
entry_points: Vec<FunctionInfo>,
const_expression_types: Box<[TypeResolution]>,
}
Fields§
§type_flags: Vec<TypeFlags>
§functions: Vec<FunctionInfo>
§entry_points: Vec<FunctionInfo>
§const_expression_types: Box<[TypeResolution]>
Implementations§
source§impl ModuleInfo
impl ModuleInfo
sourcepub(super) fn process_const_expression(
&mut self,
handle: Handle<Expression>,
resolve_context: &ResolveContext<'_>,
gctx: GlobalCtx<'_>
) -> Result<(), ConstExpressionError>
pub(super) fn process_const_expression( &mut self, handle: Handle<Expression>, resolve_context: &ResolveContext<'_>, gctx: GlobalCtx<'_> ) -> Result<(), ConstExpressionError>
Populates self.const_expression_types
sourcepub(super) fn process_function(
&self,
fun: &Function,
module: &Module,
flags: ValidationFlags,
capabilities: Capabilities
) -> Result<FunctionInfo, WithSpan<FunctionError>>
pub(super) fn process_function( &self, fun: &Function, module: &Module, flags: ValidationFlags, capabilities: Capabilities ) -> Result<FunctionInfo, WithSpan<FunctionError>>
Builds the FunctionInfo
based on the function, and validates the
uniform control flow if required by the expressions of this function.
pub fn get_entry_point(&self, index: usize) -> &FunctionInfo
Trait Implementations§
source§impl Debug for ModuleInfo
impl Debug for ModuleInfo
source§impl<'de> Deserialize<'de> for ModuleInfo
impl<'de> Deserialize<'de> for ModuleInfo
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
source§impl Index<Handle<Expression>> for ModuleInfo
impl Index<Handle<Expression>> for ModuleInfo
§type Output = TypeResolution
type Output = TypeResolution
The returned type after indexing.
Auto Trait Implementations§
impl RefUnwindSafe for ModuleInfo
impl Send for ModuleInfo
impl Sync for ModuleInfo
impl Unpin for ModuleInfo
impl UnwindSafe for ModuleInfo
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