1 /*
2  * Copyright 2015-2018 HuntLabs.cn
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 module hunt.sql.dialect.postgresql.visitor.PGASTVisitor;
17 
18 import hunt.sql.dialect.postgresql.ast.expr;
19 import hunt.sql.dialect.postgresql.ast.stmt;
20 import hunt.sql.visitor.SQLASTVisitor;
21 
22 public interface PGASTVisitor : SQLASTVisitor {
23 
24     void endVisit(PGSelectQueryBlock x);
25 
26     bool visit(PGSelectQueryBlock x);
27 
28     void endVisit(PGSelectQueryBlock.WindowClause x);
29 
30     bool visit(PGSelectQueryBlock.WindowClause x);
31 
32     void endVisit(PGSelectQueryBlock.FetchClause x);
33 
34     bool visit(PGSelectQueryBlock.FetchClause x);
35 
36     void endVisit(PGSelectQueryBlock.ForClause x);
37 
38     bool visit(PGSelectQueryBlock.ForClause x);
39 
40     void endVisit(PGDeleteStatement x);
41 
42     bool visit(PGDeleteStatement x);
43 
44     void endVisit(PGInsertStatement x);
45 
46     bool visit(PGInsertStatement x);
47 
48     void endVisit(PGSelectStatement x);
49 
50     bool visit(PGSelectStatement x);
51 
52     void endVisit(PGUpdateStatement x);
53 
54     bool visit(PGUpdateStatement x);
55 
56     void endVisit(PGFunctionTableSource x);
57 
58     bool visit(PGFunctionTableSource x);
59     
60     void endVisit(PGTypeCastExpr x);
61     
62     bool visit(PGTypeCastExpr x);
63     
64     void endVisit(PGValuesQuery x);
65     
66     bool visit(PGValuesQuery x);
67     
68     void endVisit(PGExtractExpr x);
69     
70     bool visit(PGExtractExpr x);
71     
72     void endVisit(PGBoxExpr x);
73     
74     bool visit(PGBoxExpr x);
75     
76     void endVisit(PGPointExpr x);
77     
78     bool visit(PGPointExpr x);
79     
80     void endVisit(PGMacAddrExpr x);
81     
82     bool visit(PGMacAddrExpr x);
83     
84     void endVisit(PGInetExpr x);
85     
86     bool visit(PGInetExpr x);
87     
88     void endVisit(PGCidrExpr x);
89     
90     bool visit(PGCidrExpr x);
91     
92     void endVisit(PGPolygonExpr x);
93     
94     bool visit(PGPolygonExpr x);
95     
96     void endVisit(PGCircleExpr x);
97     
98     bool visit(PGCircleExpr x);
99     
100     void endVisit(PGLineSegmentsExpr x);
101     
102     bool visit(PGLineSegmentsExpr x);
103 
104     void endVisit(PGShowStatement x);
105     
106     bool visit(PGShowStatement x);
107 
108     void endVisit(PGStartTransactionStatement x);
109     bool visit(PGStartTransactionStatement x);
110 
111     void endVisit(PGConnectToStatement x);
112     bool visit(PGConnectToStatement x);
113 
114 }