public R process(Node node) { return process(node, null); }
@SuppressWarnings("unchecked") public <T extends Expression> T rewrite(T node, C context) { return (T) visitor.process(node, new Context<>(context, false)); }
@Override public PlanNodeStatsEstimate process(Node node, @Nullable Void context) { return normalizer.normalize(super.process(node, context), types); }
@Override public Boolean process(Node node, @Nullable Void context) { if (expressions.stream().anyMatch(node::equals) && (!orderByScope.isPresent() || !hasOrderByReferencesToOutputColumns(node)) && !hasFreeReferencesToLambdaArgument(node, analysis)) { return true; } return super.process(node, context); } }
/** * Invoke the default rewrite logic explicitly. Specifically, it skips the invocation of the expression rewriter for the provided node. */ @SuppressWarnings("unchecked") public <T extends Expression> T defaultRewrite(T node, C context) { return (T) visitor.process(node, new Context<>(context, true)); }
printer.process(root, 0);
public R process(Node node) { return process(node, null); }
@Override public Boolean process(Node node, @Nullable Void context) { if (expressions.stream().anyMatch(node::equals)) { return true; } return super.process(node, context); } }
/** * Invoke the default rewrite logic explicitly. Specifically, it skips the invocation of the expression rewriter for the provided node. */ @SuppressWarnings("unchecked") public <T extends Expression> T defaultRewrite(T node, C context) { return (T) visitor.process(node, new Context<>(context, true)); }
@SuppressWarnings("unchecked") public <T extends Expression> T rewrite(T node, C context) { return (T) visitor.process(node, new Context<>(context, false)); }
@SuppressWarnings("unchecked") public <T extends Expression> T rewrite(T node, C context) { return (T) visitor.process(node, new Context<>(context, false)); }
/** * Invoke the default rewrite logic explicitly. Specifically, it skips the invocation of the expression rewriter for the provided node. */ @SuppressWarnings("unchecked") public <T extends Expression> T defaultRewrite(T node, C context) { return (T) visitor.process(node, new Context<>(context, true)); }
printer.process(root, 0);
printer.process(root, 0);
translator.process(query, true); return translation;