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).
classResolve¶source
vihaco_syntax::resolve::Resolve
Rust trait. Lower a parsed module to its resolved runtime form.
pub trait Resolve<I, Ty, H>Associated items
| Name | Type | Description |
|---|---|---|
Module | type Module | associated 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.
sourcemethodresolve_module¶source
vihaco_syntax::resolve::Resolve::resolve_module
Signature
fn resolve_module(&mut self, parsed: ParsedModule<I, Ty, H>) -> Result<<Self as >::Module>Parameters
| Name | Type | Description |
|---|---|---|
parsed | ParsedModule<I, Ty, H> |
Returns
Result<<Self as >::Module>