-
Notifications
You must be signed in to change notification settings - Fork 397
Expand file tree
/
Copy pathMariaDBVisitor.java
More file actions
65 lines (49 loc) · 2.26 KB
/
MariaDBVisitor.java
File metadata and controls
65 lines (49 loc) · 2.26 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
package sqlancer.mariadb.ast;
public abstract class MariaDBVisitor {
public abstract void visit(MariaDBConstant c);
public abstract void visit(MariaDBPostfixUnaryOperation op);
public abstract void visit(MariaDBColumnName c);
public abstract void visit(MariaDBSelectStatement s);
public abstract void visit(MariaDBText t);
public abstract void visit(MariaDBAggregate aggr);
public abstract void visit(MariaDBBinaryOperator comp);
public abstract void visit(MariaDBUnaryPrefixOperation op);
public abstract void visit(MariaDBFunction func);
public abstract void visit(MariaDBInOperation op);
public abstract void visit(MariaDBJoin join);
public abstract void visit(MariaDBTableReference join);
public void visit(MariaDBExpression expr) {
if (expr instanceof MariaDBConstant) {
visit((MariaDBConstant) expr);
} else if (expr instanceof MariaDBColumnName) {
visit((MariaDBColumnName) expr);
} else if (expr instanceof MariaDBSelectStatement) {
visit((MariaDBSelectStatement) expr);
} else if (expr instanceof MariaDBPostfixUnaryOperation) {
visit((MariaDBPostfixUnaryOperation) expr);
} else if (expr instanceof MariaDBText) {
visit((MariaDBText) expr);
} else if (expr instanceof MariaDBAggregate) {
visit((MariaDBAggregate) expr);
} else if (expr instanceof MariaDBBinaryOperator) {
visit((MariaDBBinaryOperator) expr);
} else if (expr instanceof MariaDBUnaryPrefixOperation) {
visit((MariaDBUnaryPrefixOperation) expr);
} else if (expr instanceof MariaDBFunction) {
visit((MariaDBFunction) expr);
} else if (expr instanceof MariaDBInOperation) {
visit((MariaDBInOperation) expr);
} else if (expr instanceof MariaDBJoin) {
visit((MariaDBJoin) expr);
} else if (expr instanceof MariaDBTableReference) {
visit((MariaDBTableReference) expr);
} else {
throw new AssertionError(expr.getClass());
}
}
public static String asString(MariaDBExpression expr) {
MariaDBStringVisitor v = new MariaDBStringVisitor();
v.visit(expr);
return v.getString();
}
}