@@ -85,8 +85,7 @@ public void setSelectVisitor(SelectVisitor<T> selectVisitor) {
85
85
86
86
@ Override
87
87
public <S > T visit (NullValue nullValue , S context ) {
88
-
89
- return null ;
88
+ return visitExpression (nullValue , context );
90
89
}
91
90
92
91
@ Override
@@ -113,42 +112,42 @@ public <S> T visit(SignedExpression signedExpression, S context) {
113
112
114
113
@ Override
115
114
public <S > T visit (JdbcParameter jdbcParameter , S context ) {
116
- return null ;
115
+ return visitExpression ( jdbcParameter , context ) ;
117
116
}
118
117
119
118
@ Override
120
119
public <S > T visit (JdbcNamedParameter jdbcNamedParameter , S context ) {
121
- return null ;
120
+ return visitExpression ( jdbcNamedParameter , context ) ;
122
121
}
123
122
124
123
@ Override
125
124
public <S > T visit (DoubleValue doubleValue , S context ) {
126
- return null ;
125
+ return visitExpression ( doubleValue , context ) ;
127
126
}
128
127
129
128
@ Override
130
129
public <S > T visit (LongValue longValue , S context ) {
131
- return null ;
130
+ return visitExpression ( longValue , context ) ;
132
131
}
133
132
134
133
@ Override
135
134
public <S > T visit (DateValue dateValue , S context ) {
136
- return null ;
135
+ return visitExpression ( dateValue , context ) ;
137
136
}
138
137
139
138
@ Override
140
139
public <S > T visit (TimeValue timeValue , S context ) {
141
- return null ;
140
+ return visitExpression ( timeValue , context ) ;
142
141
}
143
142
144
143
@ Override
145
144
public <S > T visit (TimestampValue timestampValue , S context ) {
146
- return null ;
145
+ return visitExpression ( timestampValue , context ) ;
147
146
}
148
147
149
148
@ Override
150
149
public <S > T visit (StringValue stringValue , S context ) {
151
- return null ;
150
+ return visitExpression ( stringValue , context ) ;
152
151
}
153
152
154
153
@ Override
@@ -290,7 +289,7 @@ public <S> T visit(ContainedBy containedBy, S context) {
290
289
291
290
@ Override
292
291
public <S > T visit (Column column , S context ) {
293
- return null ;
292
+ return visitExpression ( column , context ) ;
294
293
}
295
294
296
295
@ Override
@@ -334,7 +333,7 @@ public <S> T visit(MemberOfExpression memberOfExpression, S context) {
334
333
335
334
@ Override
336
335
public <S > T visit (AnyComparisonExpression anyComparisonExpression , S context ) {
337
- return null ;
336
+ return visitExpression ( anyComparisonExpression , context ) ;
338
337
}
339
338
340
339
@ Override
@@ -460,6 +459,10 @@ public <S> T visit(BitwiseLeftShift bitwiseLeftShift, S context) {
460
459
return visitBinaryExpression (bitwiseLeftShift , context );
461
460
}
462
461
462
+ protected <S > T visitExpression (Expression expression , S context ) {
463
+ return null ;
464
+ }
465
+
463
466
protected <S > T visitExpressions (Expression expression , S context ,
464
467
ExpressionList <? extends Expression > subExpressions ) {
465
468
return visitExpressions (expression , context , (Collection <Expression >) subExpressions );
@@ -497,12 +500,12 @@ public <S> T visit(JsonOperator jsonOperator, S context) {
497
500
498
501
@ Override
499
502
public <S > T visit (UserVariable userVariable , S context ) {
500
- return null ;
503
+ return visitExpression ( userVariable , context ) ;
501
504
}
502
505
503
506
@ Override
504
507
public <S > T visit (NumericBind numericBind , S context ) {
505
- return null ;
508
+ return visitExpression ( numericBind , context ) ;
506
509
}
507
510
508
511
@ Override
@@ -562,23 +565,22 @@ public <S> T visit(PivotXml pivotXml, S context) {
562
565
563
566
@ Override
564
567
public <S > T visit (UnPivot unpivot , S context ) {
565
- unpivot .accept (this , context );
566
- return null ;
568
+ return unpivot .accept (this , context );
567
569
}
568
570
569
571
@ Override
570
572
public <S > T visit (AllColumns allColumns , S context ) {
571
- return null ;
573
+ return visitExpression ( allColumns , context ) ;
572
574
}
573
575
574
576
@ Override
575
577
public <S > T visit (AllTableColumns allTableColumns , S context ) {
576
- return null ;
578
+ return visitExpression ( allTableColumns , context ) ;
577
579
}
578
580
579
581
@ Override
580
582
public <S > T visit (AllValue allValue , S context ) {
581
- return null ;
583
+ return visitExpression ( allValue , context ) ;
582
584
}
583
585
584
586
@ Override
@@ -598,27 +600,27 @@ public <S> T visit(RowGetExpression rowGetExpression, S context) {
598
600
599
601
@ Override
600
602
public <S > T visit (HexValue hexValue , S context ) {
601
- return null ;
603
+ return visitExpression ( hexValue , context ) ;
602
604
}
603
605
604
606
@ Override
605
607
public <S > T visit (OracleHint hint , S context ) {
606
- return null ;
608
+ return visitExpression ( hint , context ) ;
607
609
}
608
610
609
611
@ Override
610
612
public <S > T visit (TimeKeyExpression timeKeyExpression , S context ) {
611
- return null ;
613
+ return visitExpression ( timeKeyExpression , context ) ;
612
614
}
613
615
614
616
@ Override
615
617
public <S > T visit (DateTimeLiteralExpression dateTimeLiteralExpression , S context ) {
616
- return null ;
618
+ return visitExpression ( dateTimeLiteralExpression , context ) ;
617
619
}
618
620
619
621
@ Override
620
622
public <S > T visit (NextValExpression nextValExpression , S context ) {
621
- return null ;
623
+ return visitExpression ( nextValExpression , context ) ;
622
624
}
623
625
624
626
@ Override
0 commit comments