Function process_overrides

Source
pub fn process_overrides<'a>(
    module: &'a Module,
    module_info: &'a ModuleInfo,
    entry_point: Option<(ShaderStage, &str)>,
    pipeline_constants: &PipelineConstants,
) -> Result<(Cow<'a, Module>, Cow<'a, ModuleInfo>), PipelineConstantError>
Expand description

Compact module and replace all overrides with constants.

If no changes are needed, this just returns Cow::Borrowed references to module and module_info. Otherwise, it clones module, retains only the selected entry point, compacts the module, edits its global_expressions arena to contain only fully-evaluated expressions, and returns the simplified module and its validation results.

The module returned has an empty overrides arena, and the global_expressions arena contains only fully-evaluated expressions.