Skip to content

Commit

Permalink
[hotfix][table] Refactor expression visitors to common naming scheme
Browse files Browse the repository at this point in the history
  • Loading branch information
twalthr committed Jun 19, 2019
1 parent 9bc00bf commit 93e0c68
Show file tree
Hide file tree
Showing 33 changed files with 100 additions and 100 deletions.
Expand Up @@ -27,42 +27,42 @@
@Internal @Internal
public abstract class ApiExpressionDefaultVisitor<T> extends ApiExpressionVisitor<T> { public abstract class ApiExpressionDefaultVisitor<T> extends ApiExpressionVisitor<T> {
@Override @Override
public T visitCall(CallExpression call) { public T visit(CallExpression call) {
return defaultMethod(call); return defaultMethod(call);
} }


@Override @Override
public T visitValueLiteral(ValueLiteralExpression valueLiteralExpression) { public T visit(ValueLiteralExpression valueLiteralExpression) {
return defaultMethod(valueLiteralExpression); return defaultMethod(valueLiteralExpression);
} }


@Override @Override
public T visitFieldReference(FieldReferenceExpression fieldReference) { public T visit(FieldReferenceExpression fieldReference) {
return defaultMethod(fieldReference); return defaultMethod(fieldReference);
} }


@Override @Override
public T visitUnresolvedReference(UnresolvedReferenceExpression unresolvedReference) { public T visit(UnresolvedReferenceExpression unresolvedReference) {
return defaultMethod(unresolvedReference); return defaultMethod(unresolvedReference);
} }


@Override @Override
public T visitLocalReference(LocalReferenceExpression localReference) { public T visit(LocalReferenceExpression localReference) {
return defaultMethod(localReference); return defaultMethod(localReference);
} }


@Override @Override
public T visitTypeLiteral(TypeLiteralExpression typeLiteral) { public T visit(TypeLiteralExpression typeLiteral) {
return defaultMethod(typeLiteral); return defaultMethod(typeLiteral);
} }


@Override @Override
public T visitTableReference(TableReferenceExpression tableReference) { public T visit(TableReferenceExpression tableReference) {
return defaultMethod(tableReference); return defaultMethod(tableReference);
} }


@Override @Override
public T visitLookupCall(LookupCallExpression lookupCall) { public T visit(LookupCallExpression lookupCall) {
return defaultMethod(lookupCall); return defaultMethod(lookupCall);
} }


Expand Down
Expand Up @@ -26,23 +26,23 @@
@Internal @Internal
public abstract class ApiExpressionVisitor<R> implements ExpressionVisitor<R> { public abstract class ApiExpressionVisitor<R> implements ExpressionVisitor<R> {


public abstract R visitTableReference(TableReferenceExpression tableReference); public abstract R visit(TableReferenceExpression tableReference);


public abstract R visitLocalReference(LocalReferenceExpression localReference); public abstract R visit(LocalReferenceExpression localReference);


public abstract R visitLookupCall(LookupCallExpression lookupCall); public abstract R visit(LookupCallExpression lookupCall);


public abstract R visitUnresolvedReference(UnresolvedReferenceExpression unresolvedReference); public abstract R visit(UnresolvedReferenceExpression unresolvedReference);


public final R visit(Expression other) { public final R visit(Expression other) {
if (other instanceof TableReferenceExpression) { if (other instanceof TableReferenceExpression) {
return visitTableReference((TableReferenceExpression) other); return visit((TableReferenceExpression) other);
} else if (other instanceof LocalReferenceExpression) { } else if (other instanceof LocalReferenceExpression) {
return visitLocalReference((LocalReferenceExpression) other); return visit((LocalReferenceExpression) other);
} else if (other instanceof LookupCallExpression) { } else if (other instanceof LookupCallExpression) {
return visitLookupCall((LookupCallExpression) other); return visit((LookupCallExpression) other);
} else if (other instanceof UnresolvedReferenceExpression) { } else if (other instanceof UnresolvedReferenceExpression) {
return visitUnresolvedReference((UnresolvedReferenceExpression) other); return visit((UnresolvedReferenceExpression) other);
} }
return visitNonApiExpression(other); return visitNonApiExpression(other);
} }
Expand Down
Expand Up @@ -39,14 +39,14 @@ public LookupCallResolver(FunctionLookup functionLookup) {
this.functionLookup = functionLookup; this.functionLookup = functionLookup;
} }


public Expression visitLookupCall(LookupCallExpression lookupCall) { public Expression visit(LookupCallExpression lookupCall) {
final FunctionLookup.Result result = functionLookup.lookupFunction(lookupCall.getUnresolvedName()) final FunctionLookup.Result result = functionLookup.lookupFunction(lookupCall.getUnresolvedName())
.orElseThrow(() -> new ValidationException("Undefined function: " + lookupCall.getUnresolvedName())); .orElseThrow(() -> new ValidationException("Undefined function: " + lookupCall.getUnresolvedName()));


return createResolvedCall(result.getFunctionDefinition(), lookupCall.getChildren()); return createResolvedCall(result.getFunctionDefinition(), lookupCall.getChildren());
} }


public Expression visitCall(CallExpression call) { public Expression visit(CallExpression call) {
return createResolvedCall(call.getFunctionDefinition(), call.getChildren()); return createResolvedCall(call.getFunctionDefinition(), call.getChildren());
} }


Expand Down
Expand Up @@ -151,12 +151,12 @@ private static class AggregationAndPropertiesSplitter extends ApiExpressionDefau
private final Map<Expression, String> properties = new LinkedHashMap<>(); private final Map<Expression, String> properties = new LinkedHashMap<>();


@Override @Override
public Void visitLookupCall(LookupCallExpression unresolvedCall) { public Void visit(LookupCallExpression unresolvedCall) {
throw new IllegalStateException("All calls should be resolved by now. Got: " + unresolvedCall); throw new IllegalStateException("All calls should be resolved by now. Got: " + unresolvedCall);
} }


@Override @Override
public Void visitCall(CallExpression call) { public Void visit(CallExpression call) {
FunctionDefinition functionDefinition = call.getFunctionDefinition(); FunctionDefinition functionDefinition = call.getFunctionDefinition();
if (isFunctionOfKind(call, AGGREGATE)) { if (isFunctionOfKind(call, AGGREGATE)) {
aggregates.computeIfAbsent(call, expr -> "EXPR$" + uniqueId++); aggregates.computeIfAbsent(call, expr -> "EXPR$" + uniqueId++);
Expand Down Expand Up @@ -187,12 +187,12 @@ private AggregationAndPropertiesReplacer(
} }


@Override @Override
public Expression visitLookupCall(LookupCallExpression unresolvedCall) { public Expression visit(LookupCallExpression unresolvedCall) {
throw new IllegalStateException("All calls should be resolved by now. Got: " + unresolvedCall); throw new IllegalStateException("All calls should be resolved by now. Got: " + unresolvedCall);
} }


@Override @Override
public Expression visitCall(CallExpression call) { public Expression visit(CallExpression call) {
if (aggregates.get(call) != null) { if (aggregates.get(call) != null) {
return unresolvedRef(aggregates.get(call)); return unresolvedRef(aggregates.get(call));
} else if (properties.get(call) != null) { } else if (properties.get(call) != null) {
Expand All @@ -214,7 +214,7 @@ protected Expression defaultMethod(Expression expression) {


private static class ExtractNameVisitor extends ApiExpressionDefaultVisitor<Optional<String>> { private static class ExtractNameVisitor extends ApiExpressionDefaultVisitor<Optional<String>> {
@Override @Override
public Optional<String> visitCall(CallExpression call) { public Optional<String> visit(CallExpression call) {
if (call.getFunctionDefinition().equals(AS)) { if (call.getFunctionDefinition().equals(AS)) {
return extractValue(call.getChildren().get(1), String.class); return extractValue(call.getChildren().get(1), String.class);
} else { } else {
Expand All @@ -223,17 +223,17 @@ public Optional<String> visitCall(CallExpression call) {
} }


@Override @Override
public Optional<String> visitLocalReference(LocalReferenceExpression localReference) { public Optional<String> visit(LocalReferenceExpression localReference) {
return Optional.of(localReference.getName()); return Optional.of(localReference.getName());
} }


@Override @Override
public Optional<String> visitTableReference(TableReferenceExpression tableReference) { public Optional<String> visit(TableReferenceExpression tableReference) {
return Optional.of(tableReference.getName()); return Optional.of(tableReference.getName());
} }


@Override @Override
public Optional<String> visitFieldReference(FieldReferenceExpression fieldReference) { public Optional<String> visit(FieldReferenceExpression fieldReference) {
return Optional.of(fieldReference.getName()); return Optional.of(fieldReference.getName());
} }


Expand Down
Expand Up @@ -458,13 +458,13 @@ private IndexedExprToFieldInfo(CompositeType<?> inputType, int index) {
} }


@Override @Override
public FieldInfo visitUnresolvedReference(UnresolvedReferenceExpression unresolvedReference) { public FieldInfo visit(UnresolvedReferenceExpression unresolvedReference) {
String fieldName = unresolvedReference.getName(); String fieldName = unresolvedReference.getName();
return new FieldInfo(fieldName, index, fromLegacyInfoToDataType(getTypeAt(unresolvedReference))); return new FieldInfo(fieldName, index, fromLegacyInfoToDataType(getTypeAt(unresolvedReference)));
} }


@Override @Override
public FieldInfo visitCall(CallExpression call) { public FieldInfo visit(CallExpression call) {
if (call.getFunctionDefinition() == BuiltInFunctionDefinitions.AS) { if (call.getFunctionDefinition() == BuiltInFunctionDefinitions.AS) {
return visitAlias(call); return visitAlias(call);
} else if (isRowTimeExpression(call)) { } else if (isRowTimeExpression(call)) {
Expand Down Expand Up @@ -541,12 +541,12 @@ private ValidationException fieldNotFound(String name) {
} }


@Override @Override
public FieldInfo visitUnresolvedReference(UnresolvedReferenceExpression unresolvedReference) { public FieldInfo visit(UnresolvedReferenceExpression unresolvedReference) {
return createFieldInfo(unresolvedReference, null); return createFieldInfo(unresolvedReference, null);
} }


@Override @Override
public FieldInfo visitCall(CallExpression call) { public FieldInfo visit(CallExpression call) {
if (call.getFunctionDefinition() == BuiltInFunctionDefinitions.AS) { if (call.getFunctionDefinition() == BuiltInFunctionDefinitions.AS) {
return visitAlias(call); return visitAlias(call);
} else if (isRowTimeExpression(call)) { } else if (isRowTimeExpression(call)) {
Expand Down
Expand Up @@ -56,7 +56,7 @@ public FunctionDefinition getFunctionDefinition() {


@Override @Override
public <R> R accept(ExpressionVisitor<R> visitor) { public <R> R accept(ExpressionVisitor<R> visitor) {
return visitor.visitCall(this); return visitor.visit(this);
} }


@Override @Override
Expand Down
Expand Up @@ -28,22 +28,22 @@
public abstract class ExpressionDefaultVisitor<T> implements ExpressionVisitor<T> { public abstract class ExpressionDefaultVisitor<T> implements ExpressionVisitor<T> {


@Override @Override
public T visitCall(CallExpression call) { public T visit(CallExpression call) {
return defaultMethod(call); return defaultMethod(call);
} }


@Override @Override
public T visitValueLiteral(ValueLiteralExpression valueLiteralExpression) { public T visit(ValueLiteralExpression valueLiteralExpression) {
return defaultMethod(valueLiteralExpression); return defaultMethod(valueLiteralExpression);
} }


@Override @Override
public T visitFieldReference(FieldReferenceExpression fieldReference) { public T visit(FieldReferenceExpression fieldReference) {
return defaultMethod(fieldReference); return defaultMethod(fieldReference);
} }


@Override @Override
public T visitTypeLiteral(TypeLiteralExpression typeLiteral) { public T visit(TypeLiteralExpression typeLiteral) {
return defaultMethod(typeLiteral); return defaultMethod(typeLiteral);
} }


Expand Down
Expand Up @@ -27,13 +27,13 @@
@PublicEvolving @PublicEvolving
public interface ExpressionVisitor<R> { public interface ExpressionVisitor<R> {


R visitCall(CallExpression call); R visit(CallExpression call);


R visitValueLiteral(ValueLiteralExpression valueLiteralExpression); R visit(ValueLiteralExpression valueLiteralExpression);


R visitFieldReference(FieldReferenceExpression fieldReference); R visit(FieldReferenceExpression fieldReference);


R visitTypeLiteral(TypeLiteralExpression typeLiteral); R visit(TypeLiteralExpression typeLiteral);


R visit(Expression other); R visit(Expression other);
} }
Expand Up @@ -88,7 +88,7 @@ public List<Expression> getChildren() {


@Override @Override
public <R> R accept(ExpressionVisitor<R> visitor) { public <R> R accept(ExpressionVisitor<R> visitor) {
return visitor.visitFieldReference(this); return visitor.visit(this);
} }


@Override @Override
Expand Down
Expand Up @@ -53,7 +53,7 @@ public List<Expression> getChildren() {


@Override @Override
public <R> R accept(ExpressionVisitor<R> visitor) { public <R> R accept(ExpressionVisitor<R> visitor) {
return visitor.visitTypeLiteral(this); return visitor.visit(this);
} }


@Override @Override
Expand Down
Expand Up @@ -79,7 +79,7 @@ public List<Expression> getChildren() {


@Override @Override
public <R> R accept(ExpressionVisitor<R> visitor) { public <R> R accept(ExpressionVisitor<R> visitor) {
return visitor.visitValueLiteral(this); return visitor.visit(this);
} }


@Override @Override
Expand Down
Expand Up @@ -79,7 +79,7 @@ public RexNodeConverter(RelBuilder relBuilder) {
} }


@Override @Override
public RexNode visitCall(CallExpression call) { public RexNode visit(CallExpression call) {
switch (call.getFunctionDefinition().getKind()) { switch (call.getFunctionDefinition().getKind()) {
case SCALAR: case SCALAR:
return visitScalarFunc(call); return visitScalarFunc(call);
Expand Down Expand Up @@ -174,7 +174,7 @@ && isTemporal(toLogicalType(child.get(1).getType()))) {
} }


@Override @Override
public RexNode visitValueLiteral(ValueLiteralExpression expr) { public RexNode visit(ValueLiteralExpression expr) {
LogicalType type = fromDataTypeToLogicalType(expr.getOutputDataType()); LogicalType type = fromDataTypeToLogicalType(expr.getOutputDataType());
RexBuilder rexBuilder = relBuilder.getRexBuilder(); RexBuilder rexBuilder = relBuilder.getRexBuilder();
FlinkTypeFactory typeFactory = (FlinkTypeFactory) relBuilder.getTypeFactory(); FlinkTypeFactory typeFactory = (FlinkTypeFactory) relBuilder.getTypeFactory();
Expand Down Expand Up @@ -269,12 +269,12 @@ private static Calendar valueAsCalendar(Object value) {
} }


@Override @Override
public RexNode visitFieldReference(FieldReferenceExpression fieldReference) { public RexNode visit(FieldReferenceExpression fieldReference) {
return relBuilder.field(fieldReference.getName()); return relBuilder.field(fieldReference.getName());
} }


@Override @Override
public RexNode visitTypeLiteral(TypeLiteralExpression typeLiteral) { public RexNode visit(TypeLiteralExpression typeLiteral) {
throw new UnsupportedOperationException(); throw new UnsupportedOperationException();
} }


Expand Down
Expand Up @@ -216,21 +216,21 @@ class DeclarativeAggCodeGen(
isMerge: Boolean = false, isMerge: Boolean = false,
isDistinctMerge: Boolean = false) extends ExpressionVisitor[Expression] { isDistinctMerge: Boolean = false) extends ExpressionVisitor[Expression] {


override def visitCall(call: CallExpression): Expression = { override def visit(call: CallExpression): Expression = {
ApiExpressionUtils.call( ApiExpressionUtils.call(
call.getFunctionDefinition, call.getFunctionDefinition,
call.getChildren.asScala.map(_.accept(this)): _*) call.getChildren.asScala.map(_.accept(this)): _*)
} }


override def visitValueLiteral(valueLiteralExpression: ValueLiteralExpression): Expression = { override def visit(valueLiteralExpression: ValueLiteralExpression): Expression = {
valueLiteralExpression valueLiteralExpression
} }


override def visitFieldReference(input: FieldReferenceExpression): Expression = { override def visit(input: FieldReferenceExpression): Expression = {
input input
} }


override def visitTypeLiteral(typeLiteral: TypeLiteralExpression): Expression = { override def visit(typeLiteral: TypeLiteralExpression): Expression = {
typeLiteral typeLiteral
} }


Expand Down
Expand Up @@ -256,21 +256,21 @@ object AggCodeGenHelper {
argsMapping: Array[Array[(Int, LogicalType)]], argsMapping: Array[Array[(Int, LogicalType)]],
aggBufferTypes: Array[Array[LogicalType]]) extends ExpressionVisitor[Expression] { aggBufferTypes: Array[Array[LogicalType]]) extends ExpressionVisitor[Expression] {


override def visitCall(call: CallExpression): Expression = { override def visit(call: CallExpression): Expression = {
ApiExpressionUtils.call( ApiExpressionUtils.call(
call.getFunctionDefinition, call.getFunctionDefinition,
call.getChildren.asScala.map(_.accept(this)): _*) call.getChildren.asScala.map(_.accept(this)): _*)
} }


override def visitValueLiteral(valueLiteralExpression: ValueLiteralExpression): Expression = { override def visit(valueLiteralExpression: ValueLiteralExpression): Expression = {
valueLiteralExpression valueLiteralExpression
} }


override def visitFieldReference(input: FieldReferenceExpression): Expression = { override def visit(input: FieldReferenceExpression): Expression = {
input input
} }


override def visitTypeLiteral(typeLiteral: TypeLiteralExpression): Expression = { override def visit(typeLiteral: TypeLiteralExpression): Expression = {
typeLiteral typeLiteral
} }


Expand Down
Expand Up @@ -332,21 +332,21 @@ object HashAggCodeGenHelper {
argsMapping: Array[Array[(Int, LogicalType)]], argsMapping: Array[Array[(Int, LogicalType)]],
aggBuffMapping: Array[Array[(Int, LogicalType)]]) extends ExpressionVisitor[Expression] { aggBuffMapping: Array[Array[(Int, LogicalType)]]) extends ExpressionVisitor[Expression] {


override def visitCall(call: CallExpression): Expression = { override def visit(call: CallExpression): Expression = {
ApiExpressionUtils.call( ApiExpressionUtils.call(
call.getFunctionDefinition, call.getFunctionDefinition,
call.getChildren.map(_.accept(this)): _*) call.getChildren.map(_.accept(this)): _*)
} }


override def visitValueLiteral(valueLiteralExpression: ValueLiteralExpression): Expression = { override def visit(valueLiteralExpression: ValueLiteralExpression): Expression = {
valueLiteralExpression valueLiteralExpression
} }


override def visitFieldReference(input: FieldReferenceExpression): Expression = { override def visit(input: FieldReferenceExpression): Expression = {
input input
} }


override def visitTypeLiteral(typeLiteral: TypeLiteralExpression): Expression = { override def visit(typeLiteral: TypeLiteralExpression): Expression = {
typeLiteral typeLiteral
} }


Expand Down

0 comments on commit 93e0c68

Please sign in to comment.