|
39 | 39 | public class ExpressionDeParser implements ExpressionVisitor, ItemsListVisitor {
|
40 | 40 |
|
41 | 41 | private static final String NOT = "NOT ";
|
42 |
| - private StringBuilder buffer; |
| 42 | + private StringBuilder buffer = new StringBuilder(); |
43 | 43 | private SelectVisitor selectVisitor;
|
44 | 44 | private boolean useBracketsInExprList = true;
|
45 | 45 |
|
@@ -111,12 +111,12 @@ public void visit(Division division) {
|
111 | 111 | @Override
|
112 | 112 | public void visit(DoubleValue doubleValue) {
|
113 | 113 | buffer.append(doubleValue.toString());
|
114 |
| - } |
| 114 | + } |
115 | 115 |
|
116 |
| - @Override |
117 |
| - public void visit(HexValue hexValue) { |
118 |
| - buffer.append(hexValue.toString()); |
119 |
| - } |
| 116 | + @Override |
| 117 | + public void visit(HexValue hexValue) { |
| 118 | + buffer.append(hexValue.toString()); |
| 119 | + } |
120 | 120 |
|
121 | 121 | public void visitOldOracleJoinBinaryExpression(OldOracleJoinBinaryExpression expression, String operator) {
|
122 | 122 | if (expression.isNot()) {
|
@@ -285,7 +285,9 @@ private void visitBinaryExpression(BinaryExpression binaryExpression, String ope
|
285 | 285 | @Override
|
286 | 286 | public void visit(SubSelect subSelect) {
|
287 | 287 | buffer.append("(");
|
288 |
| - subSelect.getSelectBody().accept(selectVisitor); |
| 288 | + if (selectVisitor != null) { |
| 289 | + subSelect.getSelectBody().accept(selectVisitor); |
| 290 | + } |
289 | 291 | buffer.append(")");
|
290 | 292 | }
|
291 | 293 |
|
@@ -570,7 +572,7 @@ public void visit(RowConstructor rowConstructor) {
|
570 | 572 | }
|
571 | 573 | buffer.append(")");
|
572 | 574 | }
|
573 |
| - |
| 575 | + |
574 | 576 | @Override
|
575 | 577 | public void visit(OracleHint hint) {
|
576 | 578 | buffer.append(hint.toString());
|
|
0 commit comments