This is an automated email from the ASF dual-hosted git repository.
zhangliang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shardingsphere.git
The following commit(s) were added to refs/heads/master by this push:
new a0ecc1366a8 Reduce Cognitive Complexity on HiveStatementVisitor
(#31878)
a0ecc1366a8 is described below
commit a0ecc1366a8aeb7e1b13bb69ff99bbd33dcf2ec0
Author: Liang Zhang <[email protected]>
AuthorDate: Thu Jun 27 07:56:48 2024 +0800
Reduce Cognitive Complexity on HiveStatementVisitor (#31878)
---
.../parser/hive/visitor/statement/HiveStatementVisitor.java | 11 ++++-------
.../parser/mysql/visitor/statement/MySQLStatementVisitor.java | 11 ++++-------
.../presto/visitor/statement/PrestoStatementVisitor.java | 11 ++++-------
3 files changed, 12 insertions(+), 21 deletions(-)
diff --git
a/parser/sql/dialect/hive/src/main/java/org/apache/shardingsphere/sql/parser/hive/visitor/statement/HiveStatementVisitor.java
b/parser/sql/dialect/hive/src/main/java/org/apache/shardingsphere/sql/parser/hive/visitor/statement/HiveStatementVisitor.java
index 7322359f392..c393455d587 100644
---
a/parser/sql/dialect/hive/src/main/java/org/apache/shardingsphere/sql/parser/hive/visitor/statement/HiveStatementVisitor.java
+++
b/parser/sql/dialect/hive/src/main/java/org/apache/shardingsphere/sql/parser/hive/visitor/statement/HiveStatementVisitor.java
@@ -449,8 +449,8 @@ public abstract class HiveStatementVisitor extends
HiveStatementBaseVisitor<ASTN
int startIndex = ctx.start.getStartIndex();
int stopIndex = ctx.stop.getStopIndex();
if (null != ctx.subquery()) {
- SubquerySegment subquerySegment = new
SubquerySegment(ctx.subquery().getStart().getStartIndex(),
ctx.subquery().getStop().getStopIndex(),
- (MySQLSelectStatement) visit(ctx.subquery()),
getOriginalText(ctx.subquery()));
+ SubquerySegment subquerySegment = new SubquerySegment(
+ ctx.subquery().getStart().getStartIndex(),
ctx.subquery().getStop().getStopIndex(), (MySQLSelectStatement)
visit(ctx.subquery()), getOriginalText(ctx.subquery()));
return null == ctx.EXISTS() ? new
SubqueryExpressionSegment(subquerySegment) : new
ExistsSubqueryExpression(startIndex, stopIndex, subquerySegment);
}
if (null != ctx.parameterMarker()) {
@@ -469,11 +469,8 @@ public abstract class HiveStatementVisitor extends
HiveStatementBaseVisitor<ASTN
return visit(ctx.functionCall());
}
if (null != ctx.collateClause()) {
- if (null != ctx.simpleExpr()) {
- ExpressionSegment expr = (ExpressionSegment)
visit(ctx.simpleExpr(0));
- return new CollateExpression(startIndex, stopIndex,
(SimpleExpressionSegment) visit(ctx.collateClause()), expr);
- }
- return new CollateExpression(startIndex, stopIndex,
(SimpleExpressionSegment) visit(ctx.collateClause()), null);
+ ExpressionSegment expr = null == ctx.simpleExpr() ? null :
(ExpressionSegment) visit(ctx.simpleExpr(0));
+ return new CollateExpression(startIndex, stopIndex,
(SimpleExpressionSegment) visit(ctx.collateClause()), expr);
}
if (null != ctx.columnRef()) {
return visit(ctx.columnRef());
diff --git
a/parser/sql/dialect/mysql/src/main/java/org/apache/shardingsphere/sql/parser/mysql/visitor/statement/MySQLStatementVisitor.java
b/parser/sql/dialect/mysql/src/main/java/org/apache/shardingsphere/sql/parser/mysql/visitor/statement/MySQLStatementVisitor.java
index d91285ca824..96edd78af5f 100644
---
a/parser/sql/dialect/mysql/src/main/java/org/apache/shardingsphere/sql/parser/mysql/visitor/statement/MySQLStatementVisitor.java
+++
b/parser/sql/dialect/mysql/src/main/java/org/apache/shardingsphere/sql/parser/mysql/visitor/statement/MySQLStatementVisitor.java
@@ -599,8 +599,8 @@ public abstract class MySQLStatementVisitor extends
MySQLStatementBaseVisitor<AS
int startIndex = ctx.start.getStartIndex();
int stopIndex = ctx.stop.getStopIndex();
if (null != ctx.subquery()) {
- SubquerySegment subquerySegment = new
SubquerySegment(ctx.subquery().getStart().getStartIndex(),
ctx.subquery().getStop().getStopIndex(), (MySQLSelectStatement)
visit(ctx.subquery()),
- getOriginalText(ctx.subquery()));
+ SubquerySegment subquerySegment = new SubquerySegment(
+ ctx.subquery().getStart().getStartIndex(),
ctx.subquery().getStop().getStopIndex(), (MySQLSelectStatement)
visit(ctx.subquery()), getOriginalText(ctx.subquery()));
if (null != ctx.EXISTS()) {
subquerySegment.setSubqueryType(SubqueryType.EXISTS_SUBQUERY);
return new ExistsSubqueryExpression(startIndex, stopIndex,
subquerySegment);
@@ -623,11 +623,8 @@ public abstract class MySQLStatementVisitor extends
MySQLStatementBaseVisitor<AS
return visit(ctx.functionCall());
}
if (null != ctx.collateClause()) {
- if (null != ctx.simpleExpr()) {
- ExpressionSegment expr = (ExpressionSegment)
visit(ctx.simpleExpr(0));
- return new CollateExpression(startIndex, stopIndex,
(SimpleExpressionSegment) visit(ctx.collateClause()), expr);
- }
- return new CollateExpression(startIndex, stopIndex,
(SimpleExpressionSegment) visit(ctx.collateClause()), null);
+ ExpressionSegment expr = null == ctx.simpleExpr() ? null :
(ExpressionSegment) visit(ctx.simpleExpr(0));
+ return new CollateExpression(startIndex, stopIndex,
(SimpleExpressionSegment) visit(ctx.collateClause()), expr);
}
if (null != ctx.columnRef()) {
return visit(ctx.columnRef());
diff --git
a/parser/sql/dialect/presto/src/main/java/org/apache/shardingsphere/sql/parser/presto/visitor/statement/PrestoStatementVisitor.java
b/parser/sql/dialect/presto/src/main/java/org/apache/shardingsphere/sql/parser/presto/visitor/statement/PrestoStatementVisitor.java
index 66a5d5afb84..cfaea60ecc9 100644
---
a/parser/sql/dialect/presto/src/main/java/org/apache/shardingsphere/sql/parser/presto/visitor/statement/PrestoStatementVisitor.java
+++
b/parser/sql/dialect/presto/src/main/java/org/apache/shardingsphere/sql/parser/presto/visitor/statement/PrestoStatementVisitor.java
@@ -465,8 +465,8 @@ public abstract class PrestoStatementVisitor extends
PrestoStatementBaseVisitor<
int startIndex = ctx.start.getStartIndex();
int stopIndex = ctx.stop.getStopIndex();
if (null != ctx.subquery()) {
- SubquerySegment subquerySegment = new
SubquerySegment(ctx.subquery().getStart().getStartIndex(),
ctx.subquery().getStop().getStopIndex(), (PrestoSelectStatement)
visit(ctx.subquery()),
- getOriginalText(ctx.subquery()));
+ SubquerySegment subquerySegment = new SubquerySegment(
+ ctx.subquery().getStart().getStartIndex(),
ctx.subquery().getStop().getStopIndex(), (PrestoSelectStatement)
visit(ctx.subquery()), getOriginalText(ctx.subquery()));
return null == ctx.EXISTS() ? new
SubqueryExpressionSegment(subquerySegment) : new
ExistsSubqueryExpression(startIndex, stopIndex, subquerySegment);
}
if (null != ctx.parameterMarker()) {
@@ -485,11 +485,8 @@ public abstract class PrestoStatementVisitor extends
PrestoStatementBaseVisitor<
return visit(ctx.functionCall());
}
if (null != ctx.collateClause()) {
- if (null != ctx.simpleExpr()) {
- ExpressionSegment expr = (ExpressionSegment)
visit(ctx.simpleExpr(0));
- return new CollateExpression(startIndex, stopIndex,
(SimpleExpressionSegment) visit(ctx.collateClause()), expr);
- }
- return new CollateExpression(startIndex, stopIndex,
(SimpleExpressionSegment) visit(ctx.collateClause()), null);
+ ExpressionSegment expr = null == ctx.simpleExpr() ? null :
(ExpressionSegment) visit(ctx.simpleExpr(0));
+ return new CollateExpression(startIndex, stopIndex,
(SimpleExpressionSegment) visit(ctx.collateClause()), expr);
}
if (null != ctx.columnRef()) {
return visit(ctx.columnRef());