Factor ASTVisitor pattern out of ExprToSql