void CollectSideEffectExpressions(AstExpression::Ptr node, AstExpression::List& exprs) { AstExpression_CollectSideEffectExpressions visitor(exprs); node->Accept(&visitor); }
void PrintExpression(AstExpression::Ptr expression, AstDeclaration* scope, CSharpNameResolver& resolver, ostream& o, string prefix) { CSharpExpressionCodegen codegen(resolver, o, prefix, scope); expression->Accept(&codegen); }