1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 package org.apache.shardingsphere.sql.parser.sql.common.segment.dml.expr;
19
20 import lombok.Getter;
21 import lombok.RequiredArgsConstructor;
22 import lombok.Setter;
23
24 import java.util.Collection;
25 import java.util.LinkedList;
26
27
28
29
30 @RequiredArgsConstructor
31 @Getter
32 @Setter
33 public final class InExpression implements ExpressionSegment {
34
35 private final int startIndex;
36
37 private final int stopIndex;
38
39 private final ExpressionSegment left;
40
41 private final ExpressionSegment right;
42
43 private final boolean not;
44
45
46
47
48
49
50 public Collection<ExpressionSegment> getExpressionList() {
51 Collection<ExpressionSegment> result = new LinkedList<>();
52 if (right instanceof ListExpression) {
53 result.addAll(((ListExpression) right).getItems());
54 } else {
55 result.add(this);
56 }
57 return result;
58 }
59
60 @Override
61 public String getText() {
62 return left.getText() + right.getText();
63 }
64 }