sun::parsing::LoweringPass
class · Source (opens in a new tab)
class sun::parsing::LoweringPassRewrites higher-level syntax into the simpler forms used by later passes.
Public Functions
run
public · function · Source (opens in a new tab)
void sun::parsing::LoweringPass::run(sun::ast::BlockExprAST &program)Lower the program in place (recursive, bottom-up).
Related: sun::ast::BlockExprAST
usedInterpolation
public · function · Source (opens in a new tab)
bool sun::parsing::LoweringPass::usedInterpolation() constTrue if any string interpolation was desugared by this pass.
Private Functions
lowerSlot
private · function · Source (opens in a new tab)
void sun::parsing::LoweringPass::lowerSlot(std::unique_ptr< sun::ast::ExprAST > &slot)Recurse into the slot's children, then rewrite the slot itself if it holds a node the core pipeline doesn't understand.
Related: sun::ast::ExprAST
Private Fields
usedInterpolation_
private · variable · Source (opens in a new tab)
bool sun::parsing::LoweringPass::usedInterpolation_ = falseNo documentation comment.