presto-parser/src/main/java/io/prestosql/sql/tree/ExpressionTreeRewriter.java/ExpressionTreeRewriter/visitExpression
class ExpressionTreeRewriter:        @Override
        protected Expression visitExpression(Expression node, Context<C> context)
        {
            if (!context.isDefaultRewrite()) {
                Expression result = rewriter.rewriteExpression(node, context.get(), ExpressionTreeRewriter.this);
                if (result != null) {
                    return result;
                }
            }

            throw new UnsupportedOperationException("not yet implemented: " + getClass().getSimpleName() + " for " + node.getClass().getName());
        }