pub(super) struct ExpandProgramPass<'a> {
pub(super) program: &'a Program,
}Expand description
Expand frontend modules by evaluating meta constructs.
This is the first executable compiler pass after module resolution.
It resolves meta expressions and template expansion so later passes
consume one concrete runtime-facing AST shape.
Input: parsed frontend Program.
Output: expanded frontend Program.
Pass name: meta.expand_program.
Fields§
§program: &'a ProgramParsed program to expand.
Trait Implementations§
Auto Trait Implementations§
impl<'a> Freeze for ExpandProgramPass<'a>
impl<'a> RefUnwindSafe for ExpandProgramPass<'a>
impl<'a> Send for ExpandProgramPass<'a>
impl<'a> Sync for ExpandProgramPass<'a>
impl<'a> Unpin for ExpandProgramPass<'a>
impl<'a> UnwindSafe for ExpandProgramPass<'a>
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