Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion x-pack/plugin/sql/src/main/antlr/SqlBase.g4
Original file line number Diff line number Diff line change
Expand Up @@ -210,11 +210,11 @@ valueExpression
| left=valueExpression operator=(ASTERISK | SLASH | PERCENT) right=valueExpression #arithmeticBinary
| left=valueExpression operator=(PLUS | MINUS) right=valueExpression #arithmeticBinary
| left=valueExpression comparisonOperator right=valueExpression #comparison
| valueExpression CAST_OP dataType #castOperatorExpression
;

primaryExpression
: castExpression #cast
| primaryExpression CAST_OP dataType #castOperatorExpression
| extractExpression #extract
| builtinDateTimeFunction #currentDateTimeFunction
| constant #constantDefault
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -416,7 +416,7 @@ private static DataType dataType(Source ctx, String string) {

@Override
public Object visitCastOperatorExpression(SqlBaseParser.CastOperatorExpressionContext ctx) {
return new Cast(source(ctx), expression(ctx.valueExpression()), typedParsing(ctx.dataType(), DataType.class));
return new Cast(source(ctx), expression(ctx.primaryExpression()), typedParsing(ctx.dataType(), DataType.class));
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -604,37 +604,37 @@ class SqlBaseBaseListener implements SqlBaseListener {
*
* <p>The default implementation does nothing.</p>
*/
@Override public void enterCastOperatorExpression(SqlBaseParser.CastOperatorExpressionContext ctx) { }
@Override public void enterArithmeticBinary(SqlBaseParser.ArithmeticBinaryContext ctx) { }
/**
* {@inheritDoc}
*
* <p>The default implementation does nothing.</p>
*/
@Override public void exitCastOperatorExpression(SqlBaseParser.CastOperatorExpressionContext ctx) { }
@Override public void exitArithmeticBinary(SqlBaseParser.ArithmeticBinaryContext ctx) { }
/**
* {@inheritDoc}
*
* <p>The default implementation does nothing.</p>
*/
@Override public void enterArithmeticBinary(SqlBaseParser.ArithmeticBinaryContext ctx) { }
@Override public void enterArithmeticUnary(SqlBaseParser.ArithmeticUnaryContext ctx) { }
/**
* {@inheritDoc}
*
* <p>The default implementation does nothing.</p>
*/
@Override public void exitArithmeticBinary(SqlBaseParser.ArithmeticBinaryContext ctx) { }
@Override public void exitArithmeticUnary(SqlBaseParser.ArithmeticUnaryContext ctx) { }
/**
* {@inheritDoc}
*
* <p>The default implementation does nothing.</p>
*/
@Override public void enterArithmeticUnary(SqlBaseParser.ArithmeticUnaryContext ctx) { }
@Override public void enterDereference(SqlBaseParser.DereferenceContext ctx) { }
/**
* {@inheritDoc}
*
* <p>The default implementation does nothing.</p>
*/
@Override public void exitArithmeticUnary(SqlBaseParser.ArithmeticUnaryContext ctx) { }
@Override public void exitDereference(SqlBaseParser.DereferenceContext ctx) { }
/**
* {@inheritDoc}
*
Expand All @@ -652,37 +652,37 @@ class SqlBaseBaseListener implements SqlBaseListener {
*
* <p>The default implementation does nothing.</p>
*/
@Override public void enterExtract(SqlBaseParser.ExtractContext ctx) { }
@Override public void enterConstantDefault(SqlBaseParser.ConstantDefaultContext ctx) { }
/**
* {@inheritDoc}
*
* <p>The default implementation does nothing.</p>
*/
@Override public void exitExtract(SqlBaseParser.ExtractContext ctx) { }
@Override public void exitConstantDefault(SqlBaseParser.ConstantDefaultContext ctx) { }
/**
* {@inheritDoc}
*
* <p>The default implementation does nothing.</p>
*/
@Override public void enterCurrentDateTimeFunction(SqlBaseParser.CurrentDateTimeFunctionContext ctx) { }
@Override public void enterExtract(SqlBaseParser.ExtractContext ctx) { }
/**
* {@inheritDoc}
*
* <p>The default implementation does nothing.</p>
*/
@Override public void exitCurrentDateTimeFunction(SqlBaseParser.CurrentDateTimeFunctionContext ctx) { }
@Override public void exitExtract(SqlBaseParser.ExtractContext ctx) { }
/**
* {@inheritDoc}
*
* <p>The default implementation does nothing.</p>
*/
@Override public void enterConstantDefault(SqlBaseParser.ConstantDefaultContext ctx) { }
@Override public void enterParenthesizedExpression(SqlBaseParser.ParenthesizedExpressionContext ctx) { }
/**
* {@inheritDoc}
*
* <p>The default implementation does nothing.</p>
*/
@Override public void exitConstantDefault(SqlBaseParser.ConstantDefaultContext ctx) { }
@Override public void exitParenthesizedExpression(SqlBaseParser.ParenthesizedExpressionContext ctx) { }
/**
* {@inheritDoc}
*
Expand All @@ -700,49 +700,49 @@ class SqlBaseBaseListener implements SqlBaseListener {
*
* <p>The default implementation does nothing.</p>
*/
@Override public void enterFunction(SqlBaseParser.FunctionContext ctx) { }
@Override public void enterCastOperatorExpression(SqlBaseParser.CastOperatorExpressionContext ctx) { }
/**
* {@inheritDoc}
*
* <p>The default implementation does nothing.</p>
*/
@Override public void exitFunction(SqlBaseParser.FunctionContext ctx) { }
@Override public void exitCastOperatorExpression(SqlBaseParser.CastOperatorExpressionContext ctx) { }
/**
* {@inheritDoc}
*
* <p>The default implementation does nothing.</p>
*/
@Override public void enterSubqueryExpression(SqlBaseParser.SubqueryExpressionContext ctx) { }
@Override public void enterFunction(SqlBaseParser.FunctionContext ctx) { }
/**
* {@inheritDoc}
*
* <p>The default implementation does nothing.</p>
*/
@Override public void exitSubqueryExpression(SqlBaseParser.SubqueryExpressionContext ctx) { }
@Override public void exitFunction(SqlBaseParser.FunctionContext ctx) { }
/**
* {@inheritDoc}
*
* <p>The default implementation does nothing.</p>
*/
@Override public void enterDereference(SqlBaseParser.DereferenceContext ctx) { }
@Override public void enterCurrentDateTimeFunction(SqlBaseParser.CurrentDateTimeFunctionContext ctx) { }
/**
* {@inheritDoc}
*
* <p>The default implementation does nothing.</p>
*/
@Override public void exitDereference(SqlBaseParser.DereferenceContext ctx) { }
@Override public void exitCurrentDateTimeFunction(SqlBaseParser.CurrentDateTimeFunctionContext ctx) { }
/**
* {@inheritDoc}
*
* <p>The default implementation does nothing.</p>
*/
@Override public void enterParenthesizedExpression(SqlBaseParser.ParenthesizedExpressionContext ctx) { }
@Override public void enterSubqueryExpression(SqlBaseParser.SubqueryExpressionContext ctx) { }
/**
* {@inheritDoc}
*
* <p>The default implementation does nothing.</p>
*/
@Override public void exitParenthesizedExpression(SqlBaseParser.ParenthesizedExpressionContext ctx) { }
@Override public void exitSubqueryExpression(SqlBaseParser.SubqueryExpressionContext ctx) { }
/**
* {@inheritDoc}
*
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -360,21 +360,21 @@ class SqlBaseBaseVisitor<T> extends AbstractParseTreeVisitor<T> implements SqlBa
* <p>The default implementation returns the result of calling
* {@link #visitChildren} on {@code ctx}.</p>
*/
@Override public T visitCastOperatorExpression(SqlBaseParser.CastOperatorExpressionContext ctx) { return visitChildren(ctx); }
@Override public T visitArithmeticBinary(SqlBaseParser.ArithmeticBinaryContext ctx) { return visitChildren(ctx); }
/**
* {@inheritDoc}
*
* <p>The default implementation returns the result of calling
* {@link #visitChildren} on {@code ctx}.</p>
*/
@Override public T visitArithmeticBinary(SqlBaseParser.ArithmeticBinaryContext ctx) { return visitChildren(ctx); }
@Override public T visitArithmeticUnary(SqlBaseParser.ArithmeticUnaryContext ctx) { return visitChildren(ctx); }
/**
* {@inheritDoc}
*
* <p>The default implementation returns the result of calling
* {@link #visitChildren} on {@code ctx}.</p>
*/
@Override public T visitArithmeticUnary(SqlBaseParser.ArithmeticUnaryContext ctx) { return visitChildren(ctx); }
@Override public T visitDereference(SqlBaseParser.DereferenceContext ctx) { return visitChildren(ctx); }
/**
* {@inheritDoc}
*
Expand All @@ -388,21 +388,21 @@ class SqlBaseBaseVisitor<T> extends AbstractParseTreeVisitor<T> implements SqlBa
* <p>The default implementation returns the result of calling
* {@link #visitChildren} on {@code ctx}.</p>
*/
@Override public T visitExtract(SqlBaseParser.ExtractContext ctx) { return visitChildren(ctx); }
@Override public T visitConstantDefault(SqlBaseParser.ConstantDefaultContext ctx) { return visitChildren(ctx); }
/**
* {@inheritDoc}
*
* <p>The default implementation returns the result of calling
* {@link #visitChildren} on {@code ctx}.</p>
*/
@Override public T visitCurrentDateTimeFunction(SqlBaseParser.CurrentDateTimeFunctionContext ctx) { return visitChildren(ctx); }
@Override public T visitExtract(SqlBaseParser.ExtractContext ctx) { return visitChildren(ctx); }
/**
* {@inheritDoc}
*
* <p>The default implementation returns the result of calling
* {@link #visitChildren} on {@code ctx}.</p>
*/
@Override public T visitConstantDefault(SqlBaseParser.ConstantDefaultContext ctx) { return visitChildren(ctx); }
@Override public T visitParenthesizedExpression(SqlBaseParser.ParenthesizedExpressionContext ctx) { return visitChildren(ctx); }
/**
* {@inheritDoc}
*
Expand All @@ -416,28 +416,28 @@ class SqlBaseBaseVisitor<T> extends AbstractParseTreeVisitor<T> implements SqlBa
* <p>The default implementation returns the result of calling
* {@link #visitChildren} on {@code ctx}.</p>
*/
@Override public T visitFunction(SqlBaseParser.FunctionContext ctx) { return visitChildren(ctx); }
@Override public T visitCastOperatorExpression(SqlBaseParser.CastOperatorExpressionContext ctx) { return visitChildren(ctx); }
/**
* {@inheritDoc}
*
* <p>The default implementation returns the result of calling
* {@link #visitChildren} on {@code ctx}.</p>
*/
@Override public T visitSubqueryExpression(SqlBaseParser.SubqueryExpressionContext ctx) { return visitChildren(ctx); }
@Override public T visitFunction(SqlBaseParser.FunctionContext ctx) { return visitChildren(ctx); }
/**
* {@inheritDoc}
*
* <p>The default implementation returns the result of calling
* {@link #visitChildren} on {@code ctx}.</p>
*/
@Override public T visitDereference(SqlBaseParser.DereferenceContext ctx) { return visitChildren(ctx); }
@Override public T visitCurrentDateTimeFunction(SqlBaseParser.CurrentDateTimeFunctionContext ctx) { return visitChildren(ctx); }
/**
* {@inheritDoc}
*
* <p>The default implementation returns the result of calling
* {@link #visitChildren} on {@code ctx}.</p>
*/
@Override public T visitParenthesizedExpression(SqlBaseParser.ParenthesizedExpressionContext ctx) { return visitChildren(ctx); }
@Override public T visitSubqueryExpression(SqlBaseParser.SubqueryExpressionContext ctx) { return visitChildren(ctx); }
/**
* {@inheritDoc}
*
Expand Down
Loading