Skip to content

vihaco_syntax::resolve

resolve

vihaco_syntax::resolve

The `Resolve` trait — bridge between [`super::ParsedModule`] and the runtime `module::Module`. Each consumer implements this for its own instruction set, source type, and header type, holding whatever state is needed (label table, string interner, sugar expansion rules).

classResolvesource

vihaco_syntax::resolve::Resolve

Rust trait. Lower a parsed module to its resolved runtime form.

pub trait Resolve<I, Ty, H>

Associated items

NameTypeDescription
Moduletype Moduleassociated type. Resolved module type — concrete to the consumer (typically `crate::module::Module<I, Value, Type, Info>` with consumer-specific `Info`).

Implementations own application-specific conversion such as translating typed surface variants, expanding explicitly modeled sugar, or interning parsed values.

source

methodresolve_modulesource

vihaco_syntax::resolve::Resolve::resolve_module

Signature
fn resolve_module(&mut self, parsed: ParsedModule<I, Ty, H>) -> Result<<Self as >::Module>

Parameters

NameTypeDescription
parsedParsedModule&lt;I, Ty, H&gt;

Returns

Result<<Self as >::Module>

source