fix: 将 libsql-client-go 作为普通目录提交,而非 gitlink
This commit is contained in:
18
go_modules/libsql-client-go/sqliteparser/README.md
Normal file
18
go_modules/libsql-client-go/sqliteparser/README.md
Normal file
@@ -0,0 +1,18 @@
|
||||
# ANTLR SQLite Parser
|
||||
|
||||
This project is just a generation of a [ANTLR4](https://www.antlr.org/) go parser using [SQLite grammar](https://github.com/antlr/grammars-v4/tree/master/sql/sqlite) from [antlr/grammars-v4](https://github.com/antlr/grammars-v4/tree/master) project. Its only reason to exist is to avoid forcing everyone that want a simple parser to install JAVA.
|
||||
|
||||
You can find the grammar inside `./grammar` and the generated parser inside `./sqliteparser`
|
||||
|
||||
## Generate parser
|
||||
|
||||
### Requirements
|
||||
- JAVA 11+ installed
|
||||
- ANTLR4 compelte java binaries. Link [here](https://www.antlr.org/download.html)
|
||||
- Put the binary inside `/usr/local/lib`
|
||||
|
||||
Important: The parser inside `./sqliteparser` was generated using OpenJDK 11 and ANTLR 4.12.0
|
||||
|
||||
### Steps
|
||||
- Just run `./generate-parser.sh`
|
||||
|
||||
598
go_modules/libsql-client-go/sqliteparser/SQLiteLexer.interp
Normal file
598
go_modules/libsql-client-go/sqliteparser/SQLiteLexer.interp
Normal file
File diff suppressed because one or more lines are too long
377
go_modules/libsql-client-go/sqliteparser/SQLiteLexer.tokens
Normal file
377
go_modules/libsql-client-go/sqliteparser/SQLiteLexer.tokens
Normal file
@@ -0,0 +1,377 @@
|
||||
SCOL=1
|
||||
DOT=2
|
||||
OPEN_PAR=3
|
||||
CLOSE_PAR=4
|
||||
COMMA=5
|
||||
ASSIGN=6
|
||||
STAR=7
|
||||
PLUS=8
|
||||
MINUS=9
|
||||
TILDE=10
|
||||
PIPE2=11
|
||||
DIV=12
|
||||
MOD=13
|
||||
LT2=14
|
||||
GT2=15
|
||||
AMP=16
|
||||
PIPE=17
|
||||
LT=18
|
||||
LT_EQ=19
|
||||
GT=20
|
||||
GT_EQ=21
|
||||
EQ=22
|
||||
NOT_EQ1=23
|
||||
NOT_EQ2=24
|
||||
ABORT_=25
|
||||
ACTION_=26
|
||||
ADD_=27
|
||||
AFTER_=28
|
||||
ALL_=29
|
||||
ALTER_=30
|
||||
ANALYZE_=31
|
||||
AND_=32
|
||||
AS_=33
|
||||
ASC_=34
|
||||
ATTACH_=35
|
||||
AUTOINCREMENT_=36
|
||||
BEFORE_=37
|
||||
BEGIN_=38
|
||||
BETWEEN_=39
|
||||
BY_=40
|
||||
CASCADE_=41
|
||||
CASE_=42
|
||||
CAST_=43
|
||||
CHECK_=44
|
||||
COLLATE_=45
|
||||
COLUMN_=46
|
||||
COMMIT_=47
|
||||
CONFLICT_=48
|
||||
CONSTRAINT_=49
|
||||
CREATE_=50
|
||||
CROSS_=51
|
||||
CURRENT_DATE_=52
|
||||
CURRENT_TIME_=53
|
||||
CURRENT_TIMESTAMP_=54
|
||||
DATABASE_=55
|
||||
DEFAULT_=56
|
||||
DEFERRABLE_=57
|
||||
DEFERRED_=58
|
||||
DELETE_=59
|
||||
DESC_=60
|
||||
DETACH_=61
|
||||
DISTINCT_=62
|
||||
DROP_=63
|
||||
EACH_=64
|
||||
ELSE_=65
|
||||
END_=66
|
||||
ESCAPE_=67
|
||||
EXCEPT_=68
|
||||
EXCLUSIVE_=69
|
||||
EXISTS_=70
|
||||
EXPLAIN_=71
|
||||
FAIL_=72
|
||||
FOR_=73
|
||||
FOREIGN_=74
|
||||
FROM_=75
|
||||
FULL_=76
|
||||
GLOB_=77
|
||||
GROUP_=78
|
||||
HAVING_=79
|
||||
IF_=80
|
||||
IGNORE_=81
|
||||
IMMEDIATE_=82
|
||||
IN_=83
|
||||
INDEX_=84
|
||||
INDEXED_=85
|
||||
INITIALLY_=86
|
||||
INNER_=87
|
||||
INSERT_=88
|
||||
INSTEAD_=89
|
||||
INTERSECT_=90
|
||||
INTO_=91
|
||||
IS_=92
|
||||
ISNULL_=93
|
||||
JOIN_=94
|
||||
KEY_=95
|
||||
LEFT_=96
|
||||
LIKE_=97
|
||||
LIMIT_=98
|
||||
MATCH_=99
|
||||
NATURAL_=100
|
||||
NO_=101
|
||||
NOT_=102
|
||||
NOTNULL_=103
|
||||
NULL_=104
|
||||
OF_=105
|
||||
OFFSET_=106
|
||||
ON_=107
|
||||
OR_=108
|
||||
ORDER_=109
|
||||
OUTER_=110
|
||||
PLAN_=111
|
||||
PRAGMA_=112
|
||||
PRIMARY_=113
|
||||
QUERY_=114
|
||||
RAISE_=115
|
||||
RECURSIVE_=116
|
||||
REFERENCES_=117
|
||||
REGEXP_=118
|
||||
REINDEX_=119
|
||||
RELEASE_=120
|
||||
RENAME_=121
|
||||
REPLACE_=122
|
||||
RESTRICT_=123
|
||||
RETURNING_=124
|
||||
RIGHT_=125
|
||||
ROLLBACK_=126
|
||||
ROW_=127
|
||||
ROWS_=128
|
||||
SAVEPOINT_=129
|
||||
SELECT_=130
|
||||
SET_=131
|
||||
TABLE_=132
|
||||
TEMP_=133
|
||||
TEMPORARY_=134
|
||||
THEN_=135
|
||||
TO_=136
|
||||
TRANSACTION_=137
|
||||
TRIGGER_=138
|
||||
UNION_=139
|
||||
UNIQUE_=140
|
||||
UPDATE_=141
|
||||
USING_=142
|
||||
VACUUM_=143
|
||||
VALUES_=144
|
||||
VIEW_=145
|
||||
VIRTUAL_=146
|
||||
WHEN_=147
|
||||
WHERE_=148
|
||||
WITH_=149
|
||||
WITHOUT_=150
|
||||
FIRST_VALUE_=151
|
||||
OVER_=152
|
||||
PARTITION_=153
|
||||
RANGE_=154
|
||||
PRECEDING_=155
|
||||
UNBOUNDED_=156
|
||||
CURRENT_=157
|
||||
FOLLOWING_=158
|
||||
CUME_DIST_=159
|
||||
DENSE_RANK_=160
|
||||
LAG_=161
|
||||
LAST_VALUE_=162
|
||||
LEAD_=163
|
||||
NTH_VALUE_=164
|
||||
NTILE_=165
|
||||
PERCENT_RANK_=166
|
||||
RANK_=167
|
||||
ROW_NUMBER_=168
|
||||
GENERATED_=169
|
||||
ALWAYS_=170
|
||||
STORED_=171
|
||||
TRUE_=172
|
||||
FALSE_=173
|
||||
WINDOW_=174
|
||||
NULLS_=175
|
||||
FIRST_=176
|
||||
LAST_=177
|
||||
FILTER_=178
|
||||
GROUPS_=179
|
||||
EXCLUDE_=180
|
||||
TIES_=181
|
||||
OTHERS_=182
|
||||
DO_=183
|
||||
NOTHING_=184
|
||||
IDENTIFIER=185
|
||||
NUMERIC_LITERAL=186
|
||||
BIND_PARAMETER=187
|
||||
STRING_LITERAL=188
|
||||
BLOB_LITERAL=189
|
||||
SINGLE_LINE_COMMENT=190
|
||||
MULTILINE_COMMENT=191
|
||||
SPACES=192
|
||||
UNEXPECTED_CHAR=193
|
||||
';'=1
|
||||
'.'=2
|
||||
'('=3
|
||||
')'=4
|
||||
','=5
|
||||
'='=6
|
||||
'*'=7
|
||||
'+'=8
|
||||
'-'=9
|
||||
'~'=10
|
||||
'||'=11
|
||||
'/'=12
|
||||
'%'=13
|
||||
'<<'=14
|
||||
'>>'=15
|
||||
'&'=16
|
||||
'|'=17
|
||||
'<'=18
|
||||
'<='=19
|
||||
'>'=20
|
||||
'>='=21
|
||||
'=='=22
|
||||
'!='=23
|
||||
'<>'=24
|
||||
'ABORT'=25
|
||||
'ACTION'=26
|
||||
'ADD'=27
|
||||
'AFTER'=28
|
||||
'ALL'=29
|
||||
'ALTER'=30
|
||||
'ANALYZE'=31
|
||||
'AND'=32
|
||||
'AS'=33
|
||||
'ASC'=34
|
||||
'ATTACH'=35
|
||||
'AUTOINCREMENT'=36
|
||||
'BEFORE'=37
|
||||
'BEGIN'=38
|
||||
'BETWEEN'=39
|
||||
'BY'=40
|
||||
'CASCADE'=41
|
||||
'CASE'=42
|
||||
'CAST'=43
|
||||
'CHECK'=44
|
||||
'COLLATE'=45
|
||||
'COLUMN'=46
|
||||
'COMMIT'=47
|
||||
'CONFLICT'=48
|
||||
'CONSTRAINT'=49
|
||||
'CREATE'=50
|
||||
'CROSS'=51
|
||||
'CURRENT_DATE'=52
|
||||
'CURRENT_TIME'=53
|
||||
'CURRENT_TIMESTAMP'=54
|
||||
'DATABASE'=55
|
||||
'DEFAULT'=56
|
||||
'DEFERRABLE'=57
|
||||
'DEFERRED'=58
|
||||
'DELETE'=59
|
||||
'DESC'=60
|
||||
'DETACH'=61
|
||||
'DISTINCT'=62
|
||||
'DROP'=63
|
||||
'EACH'=64
|
||||
'ELSE'=65
|
||||
'END'=66
|
||||
'ESCAPE'=67
|
||||
'EXCEPT'=68
|
||||
'EXCLUSIVE'=69
|
||||
'EXISTS'=70
|
||||
'EXPLAIN'=71
|
||||
'FAIL'=72
|
||||
'FOR'=73
|
||||
'FOREIGN'=74
|
||||
'FROM'=75
|
||||
'FULL'=76
|
||||
'GLOB'=77
|
||||
'GROUP'=78
|
||||
'HAVING'=79
|
||||
'IF'=80
|
||||
'IGNORE'=81
|
||||
'IMMEDIATE'=82
|
||||
'IN'=83
|
||||
'INDEX'=84
|
||||
'INDEXED'=85
|
||||
'INITIALLY'=86
|
||||
'INNER'=87
|
||||
'INSERT'=88
|
||||
'INSTEAD'=89
|
||||
'INTERSECT'=90
|
||||
'INTO'=91
|
||||
'IS'=92
|
||||
'ISNULL'=93
|
||||
'JOIN'=94
|
||||
'KEY'=95
|
||||
'LEFT'=96
|
||||
'LIKE'=97
|
||||
'LIMIT'=98
|
||||
'MATCH'=99
|
||||
'NATURAL'=100
|
||||
'NO'=101
|
||||
'NOT'=102
|
||||
'NOTNULL'=103
|
||||
'NULL'=104
|
||||
'OF'=105
|
||||
'OFFSET'=106
|
||||
'ON'=107
|
||||
'OR'=108
|
||||
'ORDER'=109
|
||||
'OUTER'=110
|
||||
'PLAN'=111
|
||||
'PRAGMA'=112
|
||||
'PRIMARY'=113
|
||||
'QUERY'=114
|
||||
'RAISE'=115
|
||||
'RECURSIVE'=116
|
||||
'REFERENCES'=117
|
||||
'REGEXP'=118
|
||||
'REINDEX'=119
|
||||
'RELEASE'=120
|
||||
'RENAME'=121
|
||||
'REPLACE'=122
|
||||
'RESTRICT'=123
|
||||
'RETURNING'=124
|
||||
'RIGHT'=125
|
||||
'ROLLBACK'=126
|
||||
'ROW'=127
|
||||
'ROWS'=128
|
||||
'SAVEPOINT'=129
|
||||
'SELECT'=130
|
||||
'SET'=131
|
||||
'TABLE'=132
|
||||
'TEMP'=133
|
||||
'TEMPORARY'=134
|
||||
'THEN'=135
|
||||
'TO'=136
|
||||
'TRANSACTION'=137
|
||||
'TRIGGER'=138
|
||||
'UNION'=139
|
||||
'UNIQUE'=140
|
||||
'UPDATE'=141
|
||||
'USING'=142
|
||||
'VACUUM'=143
|
||||
'VALUES'=144
|
||||
'VIEW'=145
|
||||
'VIRTUAL'=146
|
||||
'WHEN'=147
|
||||
'WHERE'=148
|
||||
'WITH'=149
|
||||
'WITHOUT'=150
|
||||
'FIRST_VALUE'=151
|
||||
'OVER'=152
|
||||
'PARTITION'=153
|
||||
'RANGE'=154
|
||||
'PRECEDING'=155
|
||||
'UNBOUNDED'=156
|
||||
'CURRENT'=157
|
||||
'FOLLOWING'=158
|
||||
'CUME_DIST'=159
|
||||
'DENSE_RANK'=160
|
||||
'LAG'=161
|
||||
'LAST_VALUE'=162
|
||||
'LEAD'=163
|
||||
'NTH_VALUE'=164
|
||||
'NTILE'=165
|
||||
'PERCENT_RANK'=166
|
||||
'RANK'=167
|
||||
'ROW_NUMBER'=168
|
||||
'GENERATED'=169
|
||||
'ALWAYS'=170
|
||||
'STORED'=171
|
||||
'TRUE'=172
|
||||
'FALSE'=173
|
||||
'WINDOW'=174
|
||||
'NULLS'=175
|
||||
'FIRST'=176
|
||||
'LAST'=177
|
||||
'FILTER'=178
|
||||
'GROUPS'=179
|
||||
'EXCLUDE'=180
|
||||
'TIES'=181
|
||||
'OTHERS'=182
|
||||
'DO'=183
|
||||
'NOTHING'=184
|
||||
510
go_modules/libsql-client-go/sqliteparser/SQLiteParser.interp
Normal file
510
go_modules/libsql-client-go/sqliteparser/SQLiteParser.interp
Normal file
File diff suppressed because one or more lines are too long
377
go_modules/libsql-client-go/sqliteparser/SQLiteParser.tokens
Normal file
377
go_modules/libsql-client-go/sqliteparser/SQLiteParser.tokens
Normal file
@@ -0,0 +1,377 @@
|
||||
SCOL=1
|
||||
DOT=2
|
||||
OPEN_PAR=3
|
||||
CLOSE_PAR=4
|
||||
COMMA=5
|
||||
ASSIGN=6
|
||||
STAR=7
|
||||
PLUS=8
|
||||
MINUS=9
|
||||
TILDE=10
|
||||
PIPE2=11
|
||||
DIV=12
|
||||
MOD=13
|
||||
LT2=14
|
||||
GT2=15
|
||||
AMP=16
|
||||
PIPE=17
|
||||
LT=18
|
||||
LT_EQ=19
|
||||
GT=20
|
||||
GT_EQ=21
|
||||
EQ=22
|
||||
NOT_EQ1=23
|
||||
NOT_EQ2=24
|
||||
ABORT_=25
|
||||
ACTION_=26
|
||||
ADD_=27
|
||||
AFTER_=28
|
||||
ALL_=29
|
||||
ALTER_=30
|
||||
ANALYZE_=31
|
||||
AND_=32
|
||||
AS_=33
|
||||
ASC_=34
|
||||
ATTACH_=35
|
||||
AUTOINCREMENT_=36
|
||||
BEFORE_=37
|
||||
BEGIN_=38
|
||||
BETWEEN_=39
|
||||
BY_=40
|
||||
CASCADE_=41
|
||||
CASE_=42
|
||||
CAST_=43
|
||||
CHECK_=44
|
||||
COLLATE_=45
|
||||
COLUMN_=46
|
||||
COMMIT_=47
|
||||
CONFLICT_=48
|
||||
CONSTRAINT_=49
|
||||
CREATE_=50
|
||||
CROSS_=51
|
||||
CURRENT_DATE_=52
|
||||
CURRENT_TIME_=53
|
||||
CURRENT_TIMESTAMP_=54
|
||||
DATABASE_=55
|
||||
DEFAULT_=56
|
||||
DEFERRABLE_=57
|
||||
DEFERRED_=58
|
||||
DELETE_=59
|
||||
DESC_=60
|
||||
DETACH_=61
|
||||
DISTINCT_=62
|
||||
DROP_=63
|
||||
EACH_=64
|
||||
ELSE_=65
|
||||
END_=66
|
||||
ESCAPE_=67
|
||||
EXCEPT_=68
|
||||
EXCLUSIVE_=69
|
||||
EXISTS_=70
|
||||
EXPLAIN_=71
|
||||
FAIL_=72
|
||||
FOR_=73
|
||||
FOREIGN_=74
|
||||
FROM_=75
|
||||
FULL_=76
|
||||
GLOB_=77
|
||||
GROUP_=78
|
||||
HAVING_=79
|
||||
IF_=80
|
||||
IGNORE_=81
|
||||
IMMEDIATE_=82
|
||||
IN_=83
|
||||
INDEX_=84
|
||||
INDEXED_=85
|
||||
INITIALLY_=86
|
||||
INNER_=87
|
||||
INSERT_=88
|
||||
INSTEAD_=89
|
||||
INTERSECT_=90
|
||||
INTO_=91
|
||||
IS_=92
|
||||
ISNULL_=93
|
||||
JOIN_=94
|
||||
KEY_=95
|
||||
LEFT_=96
|
||||
LIKE_=97
|
||||
LIMIT_=98
|
||||
MATCH_=99
|
||||
NATURAL_=100
|
||||
NO_=101
|
||||
NOT_=102
|
||||
NOTNULL_=103
|
||||
NULL_=104
|
||||
OF_=105
|
||||
OFFSET_=106
|
||||
ON_=107
|
||||
OR_=108
|
||||
ORDER_=109
|
||||
OUTER_=110
|
||||
PLAN_=111
|
||||
PRAGMA_=112
|
||||
PRIMARY_=113
|
||||
QUERY_=114
|
||||
RAISE_=115
|
||||
RECURSIVE_=116
|
||||
REFERENCES_=117
|
||||
REGEXP_=118
|
||||
REINDEX_=119
|
||||
RELEASE_=120
|
||||
RENAME_=121
|
||||
REPLACE_=122
|
||||
RESTRICT_=123
|
||||
RETURNING_=124
|
||||
RIGHT_=125
|
||||
ROLLBACK_=126
|
||||
ROW_=127
|
||||
ROWS_=128
|
||||
SAVEPOINT_=129
|
||||
SELECT_=130
|
||||
SET_=131
|
||||
TABLE_=132
|
||||
TEMP_=133
|
||||
TEMPORARY_=134
|
||||
THEN_=135
|
||||
TO_=136
|
||||
TRANSACTION_=137
|
||||
TRIGGER_=138
|
||||
UNION_=139
|
||||
UNIQUE_=140
|
||||
UPDATE_=141
|
||||
USING_=142
|
||||
VACUUM_=143
|
||||
VALUES_=144
|
||||
VIEW_=145
|
||||
VIRTUAL_=146
|
||||
WHEN_=147
|
||||
WHERE_=148
|
||||
WITH_=149
|
||||
WITHOUT_=150
|
||||
FIRST_VALUE_=151
|
||||
OVER_=152
|
||||
PARTITION_=153
|
||||
RANGE_=154
|
||||
PRECEDING_=155
|
||||
UNBOUNDED_=156
|
||||
CURRENT_=157
|
||||
FOLLOWING_=158
|
||||
CUME_DIST_=159
|
||||
DENSE_RANK_=160
|
||||
LAG_=161
|
||||
LAST_VALUE_=162
|
||||
LEAD_=163
|
||||
NTH_VALUE_=164
|
||||
NTILE_=165
|
||||
PERCENT_RANK_=166
|
||||
RANK_=167
|
||||
ROW_NUMBER_=168
|
||||
GENERATED_=169
|
||||
ALWAYS_=170
|
||||
STORED_=171
|
||||
TRUE_=172
|
||||
FALSE_=173
|
||||
WINDOW_=174
|
||||
NULLS_=175
|
||||
FIRST_=176
|
||||
LAST_=177
|
||||
FILTER_=178
|
||||
GROUPS_=179
|
||||
EXCLUDE_=180
|
||||
TIES_=181
|
||||
OTHERS_=182
|
||||
DO_=183
|
||||
NOTHING_=184
|
||||
IDENTIFIER=185
|
||||
NUMERIC_LITERAL=186
|
||||
BIND_PARAMETER=187
|
||||
STRING_LITERAL=188
|
||||
BLOB_LITERAL=189
|
||||
SINGLE_LINE_COMMENT=190
|
||||
MULTILINE_COMMENT=191
|
||||
SPACES=192
|
||||
UNEXPECTED_CHAR=193
|
||||
';'=1
|
||||
'.'=2
|
||||
'('=3
|
||||
')'=4
|
||||
','=5
|
||||
'='=6
|
||||
'*'=7
|
||||
'+'=8
|
||||
'-'=9
|
||||
'~'=10
|
||||
'||'=11
|
||||
'/'=12
|
||||
'%'=13
|
||||
'<<'=14
|
||||
'>>'=15
|
||||
'&'=16
|
||||
'|'=17
|
||||
'<'=18
|
||||
'<='=19
|
||||
'>'=20
|
||||
'>='=21
|
||||
'=='=22
|
||||
'!='=23
|
||||
'<>'=24
|
||||
'ABORT'=25
|
||||
'ACTION'=26
|
||||
'ADD'=27
|
||||
'AFTER'=28
|
||||
'ALL'=29
|
||||
'ALTER'=30
|
||||
'ANALYZE'=31
|
||||
'AND'=32
|
||||
'AS'=33
|
||||
'ASC'=34
|
||||
'ATTACH'=35
|
||||
'AUTOINCREMENT'=36
|
||||
'BEFORE'=37
|
||||
'BEGIN'=38
|
||||
'BETWEEN'=39
|
||||
'BY'=40
|
||||
'CASCADE'=41
|
||||
'CASE'=42
|
||||
'CAST'=43
|
||||
'CHECK'=44
|
||||
'COLLATE'=45
|
||||
'COLUMN'=46
|
||||
'COMMIT'=47
|
||||
'CONFLICT'=48
|
||||
'CONSTRAINT'=49
|
||||
'CREATE'=50
|
||||
'CROSS'=51
|
||||
'CURRENT_DATE'=52
|
||||
'CURRENT_TIME'=53
|
||||
'CURRENT_TIMESTAMP'=54
|
||||
'DATABASE'=55
|
||||
'DEFAULT'=56
|
||||
'DEFERRABLE'=57
|
||||
'DEFERRED'=58
|
||||
'DELETE'=59
|
||||
'DESC'=60
|
||||
'DETACH'=61
|
||||
'DISTINCT'=62
|
||||
'DROP'=63
|
||||
'EACH'=64
|
||||
'ELSE'=65
|
||||
'END'=66
|
||||
'ESCAPE'=67
|
||||
'EXCEPT'=68
|
||||
'EXCLUSIVE'=69
|
||||
'EXISTS'=70
|
||||
'EXPLAIN'=71
|
||||
'FAIL'=72
|
||||
'FOR'=73
|
||||
'FOREIGN'=74
|
||||
'FROM'=75
|
||||
'FULL'=76
|
||||
'GLOB'=77
|
||||
'GROUP'=78
|
||||
'HAVING'=79
|
||||
'IF'=80
|
||||
'IGNORE'=81
|
||||
'IMMEDIATE'=82
|
||||
'IN'=83
|
||||
'INDEX'=84
|
||||
'INDEXED'=85
|
||||
'INITIALLY'=86
|
||||
'INNER'=87
|
||||
'INSERT'=88
|
||||
'INSTEAD'=89
|
||||
'INTERSECT'=90
|
||||
'INTO'=91
|
||||
'IS'=92
|
||||
'ISNULL'=93
|
||||
'JOIN'=94
|
||||
'KEY'=95
|
||||
'LEFT'=96
|
||||
'LIKE'=97
|
||||
'LIMIT'=98
|
||||
'MATCH'=99
|
||||
'NATURAL'=100
|
||||
'NO'=101
|
||||
'NOT'=102
|
||||
'NOTNULL'=103
|
||||
'NULL'=104
|
||||
'OF'=105
|
||||
'OFFSET'=106
|
||||
'ON'=107
|
||||
'OR'=108
|
||||
'ORDER'=109
|
||||
'OUTER'=110
|
||||
'PLAN'=111
|
||||
'PRAGMA'=112
|
||||
'PRIMARY'=113
|
||||
'QUERY'=114
|
||||
'RAISE'=115
|
||||
'RECURSIVE'=116
|
||||
'REFERENCES'=117
|
||||
'REGEXP'=118
|
||||
'REINDEX'=119
|
||||
'RELEASE'=120
|
||||
'RENAME'=121
|
||||
'REPLACE'=122
|
||||
'RESTRICT'=123
|
||||
'RETURNING'=124
|
||||
'RIGHT'=125
|
||||
'ROLLBACK'=126
|
||||
'ROW'=127
|
||||
'ROWS'=128
|
||||
'SAVEPOINT'=129
|
||||
'SELECT'=130
|
||||
'SET'=131
|
||||
'TABLE'=132
|
||||
'TEMP'=133
|
||||
'TEMPORARY'=134
|
||||
'THEN'=135
|
||||
'TO'=136
|
||||
'TRANSACTION'=137
|
||||
'TRIGGER'=138
|
||||
'UNION'=139
|
||||
'UNIQUE'=140
|
||||
'UPDATE'=141
|
||||
'USING'=142
|
||||
'VACUUM'=143
|
||||
'VALUES'=144
|
||||
'VIEW'=145
|
||||
'VIRTUAL'=146
|
||||
'WHEN'=147
|
||||
'WHERE'=148
|
||||
'WITH'=149
|
||||
'WITHOUT'=150
|
||||
'FIRST_VALUE'=151
|
||||
'OVER'=152
|
||||
'PARTITION'=153
|
||||
'RANGE'=154
|
||||
'PRECEDING'=155
|
||||
'UNBOUNDED'=156
|
||||
'CURRENT'=157
|
||||
'FOLLOWING'=158
|
||||
'CUME_DIST'=159
|
||||
'DENSE_RANK'=160
|
||||
'LAG'=161
|
||||
'LAST_VALUE'=162
|
||||
'LEAD'=163
|
||||
'NTH_VALUE'=164
|
||||
'NTILE'=165
|
||||
'PERCENT_RANK'=166
|
||||
'RANK'=167
|
||||
'ROW_NUMBER'=168
|
||||
'GENERATED'=169
|
||||
'ALWAYS'=170
|
||||
'STORED'=171
|
||||
'TRUE'=172
|
||||
'FALSE'=173
|
||||
'WINDOW'=174
|
||||
'NULLS'=175
|
||||
'FIRST'=176
|
||||
'LAST'=177
|
||||
'FILTER'=178
|
||||
'GROUPS'=179
|
||||
'EXCLUDE'=180
|
||||
'TIES'=181
|
||||
'OTHERS'=182
|
||||
'DO'=183
|
||||
'NOTHING'=184
|
||||
10
go_modules/libsql-client-go/sqliteparser/generate-parser.sh
Executable file
10
go_modules/libsql-client-go/sqliteparser/generate-parser.sh
Executable file
@@ -0,0 +1,10 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Requirements:
|
||||
# - Have Java 11+ installed
|
||||
# - Be at root directory
|
||||
|
||||
rm -rf *.go *.interp *.tokens
|
||||
cd grammar/
|
||||
java -Xmx500M -cp "$(printf %s: /usr/local/lib/antlr-*-complete.jar):$CLASSPATH" org.antlr.v4.Tool -Dlanguage=Go -package sqliteparser -o .. SQLiteLexer.g4 SQLiteParser.g4
|
||||
cd ../
|
||||
243
go_modules/libsql-client-go/sqliteparser/grammar/SQLiteLexer.g4
Normal file
243
go_modules/libsql-client-go/sqliteparser/grammar/SQLiteLexer.g4
Normal file
@@ -0,0 +1,243 @@
|
||||
/*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2020 by Martin Mirchev
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy of this software and
|
||||
* associated documentation files (the "Software"), to deal in the Software without restriction,
|
||||
* including without limitation the rights to use, copy, modify, merge, publish, distribute,
|
||||
* sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in all copies or
|
||||
* substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT
|
||||
* NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
|
||||
* DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*
|
||||
* Project : sqlite-parser; an ANTLR4 grammar for SQLite https://github.com/bkiers/sqlite-parser
|
||||
* Developed by : Bart Kiers, bart@big-o.nl
|
||||
*/
|
||||
|
||||
// $antlr-format alignTrailingComments on, columnLimit 150, maxEmptyLinesToKeep 1, reflowComments off, useTab off
|
||||
// $antlr-format allowShortRulesOnASingleLine on, alignSemicolons ownLine
|
||||
|
||||
lexer grammar SQLiteLexer;
|
||||
|
||||
options { caseInsensitive = true; }
|
||||
|
||||
SCOL: ';';
|
||||
DOT: '.';
|
||||
OPEN_PAR: '(';
|
||||
CLOSE_PAR: ')';
|
||||
COMMA: ',';
|
||||
ASSIGN: '=';
|
||||
STAR: '*';
|
||||
PLUS: '+';
|
||||
MINUS: '-';
|
||||
TILDE: '~';
|
||||
PIPE2: '||';
|
||||
DIV: '/';
|
||||
MOD: '%';
|
||||
LT2: '<<';
|
||||
GT2: '>>';
|
||||
AMP: '&';
|
||||
PIPE: '|';
|
||||
LT: '<';
|
||||
LT_EQ: '<=';
|
||||
GT: '>';
|
||||
GT_EQ: '>=';
|
||||
EQ: '==';
|
||||
NOT_EQ1: '!=';
|
||||
NOT_EQ2: '<>';
|
||||
|
||||
// http://www.sqlite.org/lang_keywords.html
|
||||
ABORT_: 'ABORT';
|
||||
ACTION_: 'ACTION';
|
||||
ADD_: 'ADD';
|
||||
AFTER_: 'AFTER';
|
||||
ALL_: 'ALL';
|
||||
ALTER_: 'ALTER';
|
||||
ANALYZE_: 'ANALYZE';
|
||||
AND_: 'AND';
|
||||
AS_: 'AS';
|
||||
ASC_: 'ASC';
|
||||
ATTACH_: 'ATTACH';
|
||||
AUTOINCREMENT_: 'AUTOINCREMENT';
|
||||
BEFORE_: 'BEFORE';
|
||||
BEGIN_: 'BEGIN';
|
||||
BETWEEN_: 'BETWEEN';
|
||||
BY_: 'BY';
|
||||
CASCADE_: 'CASCADE';
|
||||
CASE_: 'CASE';
|
||||
CAST_: 'CAST';
|
||||
CHECK_: 'CHECK';
|
||||
COLLATE_: 'COLLATE';
|
||||
COLUMN_: 'COLUMN';
|
||||
COMMIT_: 'COMMIT';
|
||||
CONFLICT_: 'CONFLICT';
|
||||
CONSTRAINT_: 'CONSTRAINT';
|
||||
CREATE_: 'CREATE';
|
||||
CROSS_: 'CROSS';
|
||||
CURRENT_DATE_: 'CURRENT_DATE';
|
||||
CURRENT_TIME_: 'CURRENT_TIME';
|
||||
CURRENT_TIMESTAMP_: 'CURRENT_TIMESTAMP';
|
||||
DATABASE_: 'DATABASE';
|
||||
DEFAULT_: 'DEFAULT';
|
||||
DEFERRABLE_: 'DEFERRABLE';
|
||||
DEFERRED_: 'DEFERRED';
|
||||
DELETE_: 'DELETE';
|
||||
DESC_: 'DESC';
|
||||
DETACH_: 'DETACH';
|
||||
DISTINCT_: 'DISTINCT';
|
||||
DROP_: 'DROP';
|
||||
EACH_: 'EACH';
|
||||
ELSE_: 'ELSE';
|
||||
END_: 'END';
|
||||
ESCAPE_: 'ESCAPE';
|
||||
EXCEPT_: 'EXCEPT';
|
||||
EXCLUSIVE_: 'EXCLUSIVE';
|
||||
EXISTS_: 'EXISTS';
|
||||
EXPLAIN_: 'EXPLAIN';
|
||||
FAIL_: 'FAIL';
|
||||
FOR_: 'FOR';
|
||||
FOREIGN_: 'FOREIGN';
|
||||
FROM_: 'FROM';
|
||||
FULL_: 'FULL';
|
||||
GLOB_: 'GLOB';
|
||||
GROUP_: 'GROUP';
|
||||
HAVING_: 'HAVING';
|
||||
IF_: 'IF';
|
||||
IGNORE_: 'IGNORE';
|
||||
IMMEDIATE_: 'IMMEDIATE';
|
||||
IN_: 'IN';
|
||||
INDEX_: 'INDEX';
|
||||
INDEXED_: 'INDEXED';
|
||||
INITIALLY_: 'INITIALLY';
|
||||
INNER_: 'INNER';
|
||||
INSERT_: 'INSERT';
|
||||
INSTEAD_: 'INSTEAD';
|
||||
INTERSECT_: 'INTERSECT';
|
||||
INTO_: 'INTO';
|
||||
IS_: 'IS';
|
||||
ISNULL_: 'ISNULL';
|
||||
JOIN_: 'JOIN';
|
||||
KEY_: 'KEY';
|
||||
LEFT_: 'LEFT';
|
||||
LIKE_: 'LIKE';
|
||||
LIMIT_: 'LIMIT';
|
||||
MATCH_: 'MATCH';
|
||||
NATURAL_: 'NATURAL';
|
||||
NO_: 'NO';
|
||||
NOT_: 'NOT';
|
||||
NOTNULL_: 'NOTNULL';
|
||||
NULL_: 'NULL';
|
||||
OF_: 'OF';
|
||||
OFFSET_: 'OFFSET';
|
||||
ON_: 'ON';
|
||||
OR_: 'OR';
|
||||
ORDER_: 'ORDER';
|
||||
OUTER_: 'OUTER';
|
||||
PLAN_: 'PLAN';
|
||||
PRAGMA_: 'PRAGMA';
|
||||
PRIMARY_: 'PRIMARY';
|
||||
QUERY_: 'QUERY';
|
||||
RAISE_: 'RAISE';
|
||||
RECURSIVE_: 'RECURSIVE';
|
||||
REFERENCES_: 'REFERENCES';
|
||||
REGEXP_: 'REGEXP';
|
||||
REINDEX_: 'REINDEX';
|
||||
RELEASE_: 'RELEASE';
|
||||
RENAME_: 'RENAME';
|
||||
REPLACE_: 'REPLACE';
|
||||
RESTRICT_: 'RESTRICT';
|
||||
RETURNING_: 'RETURNING';
|
||||
RIGHT_: 'RIGHT';
|
||||
ROLLBACK_: 'ROLLBACK';
|
||||
ROW_: 'ROW';
|
||||
ROWS_: 'ROWS';
|
||||
SAVEPOINT_: 'SAVEPOINT';
|
||||
SELECT_: 'SELECT';
|
||||
SET_: 'SET';
|
||||
TABLE_: 'TABLE';
|
||||
TEMP_: 'TEMP';
|
||||
TEMPORARY_: 'TEMPORARY';
|
||||
THEN_: 'THEN';
|
||||
TO_: 'TO';
|
||||
TRANSACTION_: 'TRANSACTION';
|
||||
TRIGGER_: 'TRIGGER';
|
||||
UNION_: 'UNION';
|
||||
UNIQUE_: 'UNIQUE';
|
||||
UPDATE_: 'UPDATE';
|
||||
USING_: 'USING';
|
||||
VACUUM_: 'VACUUM';
|
||||
VALUES_: 'VALUES';
|
||||
VIEW_: 'VIEW';
|
||||
VIRTUAL_: 'VIRTUAL';
|
||||
WHEN_: 'WHEN';
|
||||
WHERE_: 'WHERE';
|
||||
WITH_: 'WITH';
|
||||
WITHOUT_: 'WITHOUT';
|
||||
FIRST_VALUE_: 'FIRST_VALUE';
|
||||
OVER_: 'OVER';
|
||||
PARTITION_: 'PARTITION';
|
||||
RANGE_: 'RANGE';
|
||||
PRECEDING_: 'PRECEDING';
|
||||
UNBOUNDED_: 'UNBOUNDED';
|
||||
CURRENT_: 'CURRENT';
|
||||
FOLLOWING_: 'FOLLOWING';
|
||||
CUME_DIST_: 'CUME_DIST';
|
||||
DENSE_RANK_: 'DENSE_RANK';
|
||||
LAG_: 'LAG';
|
||||
LAST_VALUE_: 'LAST_VALUE';
|
||||
LEAD_: 'LEAD';
|
||||
NTH_VALUE_: 'NTH_VALUE';
|
||||
NTILE_: 'NTILE';
|
||||
PERCENT_RANK_: 'PERCENT_RANK';
|
||||
RANK_: 'RANK';
|
||||
ROW_NUMBER_: 'ROW_NUMBER';
|
||||
GENERATED_: 'GENERATED';
|
||||
ALWAYS_: 'ALWAYS';
|
||||
STORED_: 'STORED';
|
||||
TRUE_: 'TRUE';
|
||||
FALSE_: 'FALSE';
|
||||
WINDOW_: 'WINDOW';
|
||||
NULLS_: 'NULLS';
|
||||
FIRST_: 'FIRST';
|
||||
LAST_: 'LAST';
|
||||
FILTER_: 'FILTER';
|
||||
GROUPS_: 'GROUPS';
|
||||
EXCLUDE_: 'EXCLUDE';
|
||||
TIES_: 'TIES';
|
||||
OTHERS_: 'OTHERS';
|
||||
DO_: 'DO';
|
||||
NOTHING_: 'NOTHING';
|
||||
|
||||
IDENTIFIER:
|
||||
'"' (~'"' | '""')* '"'
|
||||
| '`' (~'`' | '``')* '`'
|
||||
| '[' ~']'* ']'
|
||||
| [A-Z_] [A-Z_0-9]*
|
||||
; // TODO check: needs more chars in set
|
||||
|
||||
NUMERIC_LITERAL: ((DIGIT+ ('.' DIGIT*)?) | ('.' DIGIT+)) ('E' [-+]? DIGIT+)? | '0x' HEX_DIGIT+;
|
||||
|
||||
BIND_PARAMETER: '?' DIGIT* | [:@$] IDENTIFIER;
|
||||
|
||||
STRING_LITERAL: '\'' ( ~'\'' | '\'\'')* '\'';
|
||||
|
||||
BLOB_LITERAL: 'X' STRING_LITERAL;
|
||||
|
||||
SINGLE_LINE_COMMENT: '--' ~[\r\n]* (('\r'? '\n') | EOF) -> channel(HIDDEN);
|
||||
|
||||
MULTILINE_COMMENT: '/*' .*? '*/' -> channel(HIDDEN);
|
||||
|
||||
SPACES: [ \u000B\t\r\n] -> channel(HIDDEN);
|
||||
|
||||
UNEXPECTED_CHAR: .;
|
||||
|
||||
fragment HEX_DIGIT: [0-9A-F];
|
||||
fragment DIGIT: [0-9];
|
||||
@@ -0,0 +1,377 @@
|
||||
SCOL=1
|
||||
DOT=2
|
||||
OPEN_PAR=3
|
||||
CLOSE_PAR=4
|
||||
COMMA=5
|
||||
ASSIGN=6
|
||||
STAR=7
|
||||
PLUS=8
|
||||
MINUS=9
|
||||
TILDE=10
|
||||
PIPE2=11
|
||||
DIV=12
|
||||
MOD=13
|
||||
LT2=14
|
||||
GT2=15
|
||||
AMP=16
|
||||
PIPE=17
|
||||
LT=18
|
||||
LT_EQ=19
|
||||
GT=20
|
||||
GT_EQ=21
|
||||
EQ=22
|
||||
NOT_EQ1=23
|
||||
NOT_EQ2=24
|
||||
ABORT_=25
|
||||
ACTION_=26
|
||||
ADD_=27
|
||||
AFTER_=28
|
||||
ALL_=29
|
||||
ALTER_=30
|
||||
ANALYZE_=31
|
||||
AND_=32
|
||||
AS_=33
|
||||
ASC_=34
|
||||
ATTACH_=35
|
||||
AUTOINCREMENT_=36
|
||||
BEFORE_=37
|
||||
BEGIN_=38
|
||||
BETWEEN_=39
|
||||
BY_=40
|
||||
CASCADE_=41
|
||||
CASE_=42
|
||||
CAST_=43
|
||||
CHECK_=44
|
||||
COLLATE_=45
|
||||
COLUMN_=46
|
||||
COMMIT_=47
|
||||
CONFLICT_=48
|
||||
CONSTRAINT_=49
|
||||
CREATE_=50
|
||||
CROSS_=51
|
||||
CURRENT_DATE_=52
|
||||
CURRENT_TIME_=53
|
||||
CURRENT_TIMESTAMP_=54
|
||||
DATABASE_=55
|
||||
DEFAULT_=56
|
||||
DEFERRABLE_=57
|
||||
DEFERRED_=58
|
||||
DELETE_=59
|
||||
DESC_=60
|
||||
DETACH_=61
|
||||
DISTINCT_=62
|
||||
DROP_=63
|
||||
EACH_=64
|
||||
ELSE_=65
|
||||
END_=66
|
||||
ESCAPE_=67
|
||||
EXCEPT_=68
|
||||
EXCLUSIVE_=69
|
||||
EXISTS_=70
|
||||
EXPLAIN_=71
|
||||
FAIL_=72
|
||||
FOR_=73
|
||||
FOREIGN_=74
|
||||
FROM_=75
|
||||
FULL_=76
|
||||
GLOB_=77
|
||||
GROUP_=78
|
||||
HAVING_=79
|
||||
IF_=80
|
||||
IGNORE_=81
|
||||
IMMEDIATE_=82
|
||||
IN_=83
|
||||
INDEX_=84
|
||||
INDEXED_=85
|
||||
INITIALLY_=86
|
||||
INNER_=87
|
||||
INSERT_=88
|
||||
INSTEAD_=89
|
||||
INTERSECT_=90
|
||||
INTO_=91
|
||||
IS_=92
|
||||
ISNULL_=93
|
||||
JOIN_=94
|
||||
KEY_=95
|
||||
LEFT_=96
|
||||
LIKE_=97
|
||||
LIMIT_=98
|
||||
MATCH_=99
|
||||
NATURAL_=100
|
||||
NO_=101
|
||||
NOT_=102
|
||||
NOTNULL_=103
|
||||
NULL_=104
|
||||
OF_=105
|
||||
OFFSET_=106
|
||||
ON_=107
|
||||
OR_=108
|
||||
ORDER_=109
|
||||
OUTER_=110
|
||||
PLAN_=111
|
||||
PRAGMA_=112
|
||||
PRIMARY_=113
|
||||
QUERY_=114
|
||||
RAISE_=115
|
||||
RECURSIVE_=116
|
||||
REFERENCES_=117
|
||||
REGEXP_=118
|
||||
REINDEX_=119
|
||||
RELEASE_=120
|
||||
RENAME_=121
|
||||
REPLACE_=122
|
||||
RESTRICT_=123
|
||||
RETURNING_=124
|
||||
RIGHT_=125
|
||||
ROLLBACK_=126
|
||||
ROW_=127
|
||||
ROWS_=128
|
||||
SAVEPOINT_=129
|
||||
SELECT_=130
|
||||
SET_=131
|
||||
TABLE_=132
|
||||
TEMP_=133
|
||||
TEMPORARY_=134
|
||||
THEN_=135
|
||||
TO_=136
|
||||
TRANSACTION_=137
|
||||
TRIGGER_=138
|
||||
UNION_=139
|
||||
UNIQUE_=140
|
||||
UPDATE_=141
|
||||
USING_=142
|
||||
VACUUM_=143
|
||||
VALUES_=144
|
||||
VIEW_=145
|
||||
VIRTUAL_=146
|
||||
WHEN_=147
|
||||
WHERE_=148
|
||||
WITH_=149
|
||||
WITHOUT_=150
|
||||
FIRST_VALUE_=151
|
||||
OVER_=152
|
||||
PARTITION_=153
|
||||
RANGE_=154
|
||||
PRECEDING_=155
|
||||
UNBOUNDED_=156
|
||||
CURRENT_=157
|
||||
FOLLOWING_=158
|
||||
CUME_DIST_=159
|
||||
DENSE_RANK_=160
|
||||
LAG_=161
|
||||
LAST_VALUE_=162
|
||||
LEAD_=163
|
||||
NTH_VALUE_=164
|
||||
NTILE_=165
|
||||
PERCENT_RANK_=166
|
||||
RANK_=167
|
||||
ROW_NUMBER_=168
|
||||
GENERATED_=169
|
||||
ALWAYS_=170
|
||||
STORED_=171
|
||||
TRUE_=172
|
||||
FALSE_=173
|
||||
WINDOW_=174
|
||||
NULLS_=175
|
||||
FIRST_=176
|
||||
LAST_=177
|
||||
FILTER_=178
|
||||
GROUPS_=179
|
||||
EXCLUDE_=180
|
||||
TIES_=181
|
||||
OTHERS_=182
|
||||
DO_=183
|
||||
NOTHING_=184
|
||||
IDENTIFIER=185
|
||||
NUMERIC_LITERAL=186
|
||||
BIND_PARAMETER=187
|
||||
STRING_LITERAL=188
|
||||
BLOB_LITERAL=189
|
||||
SINGLE_LINE_COMMENT=190
|
||||
MULTILINE_COMMENT=191
|
||||
SPACES=192
|
||||
UNEXPECTED_CHAR=193
|
||||
';'=1
|
||||
'.'=2
|
||||
'('=3
|
||||
')'=4
|
||||
','=5
|
||||
'='=6
|
||||
'*'=7
|
||||
'+'=8
|
||||
'-'=9
|
||||
'~'=10
|
||||
'||'=11
|
||||
'/'=12
|
||||
'%'=13
|
||||
'<<'=14
|
||||
'>>'=15
|
||||
'&'=16
|
||||
'|'=17
|
||||
'<'=18
|
||||
'<='=19
|
||||
'>'=20
|
||||
'>='=21
|
||||
'=='=22
|
||||
'!='=23
|
||||
'<>'=24
|
||||
'ABORT'=25
|
||||
'ACTION'=26
|
||||
'ADD'=27
|
||||
'AFTER'=28
|
||||
'ALL'=29
|
||||
'ALTER'=30
|
||||
'ANALYZE'=31
|
||||
'AND'=32
|
||||
'AS'=33
|
||||
'ASC'=34
|
||||
'ATTACH'=35
|
||||
'AUTOINCREMENT'=36
|
||||
'BEFORE'=37
|
||||
'BEGIN'=38
|
||||
'BETWEEN'=39
|
||||
'BY'=40
|
||||
'CASCADE'=41
|
||||
'CASE'=42
|
||||
'CAST'=43
|
||||
'CHECK'=44
|
||||
'COLLATE'=45
|
||||
'COLUMN'=46
|
||||
'COMMIT'=47
|
||||
'CONFLICT'=48
|
||||
'CONSTRAINT'=49
|
||||
'CREATE'=50
|
||||
'CROSS'=51
|
||||
'CURRENT_DATE'=52
|
||||
'CURRENT_TIME'=53
|
||||
'CURRENT_TIMESTAMP'=54
|
||||
'DATABASE'=55
|
||||
'DEFAULT'=56
|
||||
'DEFERRABLE'=57
|
||||
'DEFERRED'=58
|
||||
'DELETE'=59
|
||||
'DESC'=60
|
||||
'DETACH'=61
|
||||
'DISTINCT'=62
|
||||
'DROP'=63
|
||||
'EACH'=64
|
||||
'ELSE'=65
|
||||
'END'=66
|
||||
'ESCAPE'=67
|
||||
'EXCEPT'=68
|
||||
'EXCLUSIVE'=69
|
||||
'EXISTS'=70
|
||||
'EXPLAIN'=71
|
||||
'FAIL'=72
|
||||
'FOR'=73
|
||||
'FOREIGN'=74
|
||||
'FROM'=75
|
||||
'FULL'=76
|
||||
'GLOB'=77
|
||||
'GROUP'=78
|
||||
'HAVING'=79
|
||||
'IF'=80
|
||||
'IGNORE'=81
|
||||
'IMMEDIATE'=82
|
||||
'IN'=83
|
||||
'INDEX'=84
|
||||
'INDEXED'=85
|
||||
'INITIALLY'=86
|
||||
'INNER'=87
|
||||
'INSERT'=88
|
||||
'INSTEAD'=89
|
||||
'INTERSECT'=90
|
||||
'INTO'=91
|
||||
'IS'=92
|
||||
'ISNULL'=93
|
||||
'JOIN'=94
|
||||
'KEY'=95
|
||||
'LEFT'=96
|
||||
'LIKE'=97
|
||||
'LIMIT'=98
|
||||
'MATCH'=99
|
||||
'NATURAL'=100
|
||||
'NO'=101
|
||||
'NOT'=102
|
||||
'NOTNULL'=103
|
||||
'NULL'=104
|
||||
'OF'=105
|
||||
'OFFSET'=106
|
||||
'ON'=107
|
||||
'OR'=108
|
||||
'ORDER'=109
|
||||
'OUTER'=110
|
||||
'PLAN'=111
|
||||
'PRAGMA'=112
|
||||
'PRIMARY'=113
|
||||
'QUERY'=114
|
||||
'RAISE'=115
|
||||
'RECURSIVE'=116
|
||||
'REFERENCES'=117
|
||||
'REGEXP'=118
|
||||
'REINDEX'=119
|
||||
'RELEASE'=120
|
||||
'RENAME'=121
|
||||
'REPLACE'=122
|
||||
'RESTRICT'=123
|
||||
'RETURNING'=124
|
||||
'RIGHT'=125
|
||||
'ROLLBACK'=126
|
||||
'ROW'=127
|
||||
'ROWS'=128
|
||||
'SAVEPOINT'=129
|
||||
'SELECT'=130
|
||||
'SET'=131
|
||||
'TABLE'=132
|
||||
'TEMP'=133
|
||||
'TEMPORARY'=134
|
||||
'THEN'=135
|
||||
'TO'=136
|
||||
'TRANSACTION'=137
|
||||
'TRIGGER'=138
|
||||
'UNION'=139
|
||||
'UNIQUE'=140
|
||||
'UPDATE'=141
|
||||
'USING'=142
|
||||
'VACUUM'=143
|
||||
'VALUES'=144
|
||||
'VIEW'=145
|
||||
'VIRTUAL'=146
|
||||
'WHEN'=147
|
||||
'WHERE'=148
|
||||
'WITH'=149
|
||||
'WITHOUT'=150
|
||||
'FIRST_VALUE'=151
|
||||
'OVER'=152
|
||||
'PARTITION'=153
|
||||
'RANGE'=154
|
||||
'PRECEDING'=155
|
||||
'UNBOUNDED'=156
|
||||
'CURRENT'=157
|
||||
'FOLLOWING'=158
|
||||
'CUME_DIST'=159
|
||||
'DENSE_RANK'=160
|
||||
'LAG'=161
|
||||
'LAST_VALUE'=162
|
||||
'LEAD'=163
|
||||
'NTH_VALUE'=164
|
||||
'NTILE'=165
|
||||
'PERCENT_RANK'=166
|
||||
'RANK'=167
|
||||
'ROW_NUMBER'=168
|
||||
'GENERATED'=169
|
||||
'ALWAYS'=170
|
||||
'STORED'=171
|
||||
'TRUE'=172
|
||||
'FALSE'=173
|
||||
'WINDOW'=174
|
||||
'NULLS'=175
|
||||
'FIRST'=176
|
||||
'LAST'=177
|
||||
'FILTER'=178
|
||||
'GROUPS'=179
|
||||
'EXCLUDE'=180
|
||||
'TIES'=181
|
||||
'OTHERS'=182
|
||||
'DO'=183
|
||||
'NOTHING'=184
|
||||
915
go_modules/libsql-client-go/sqliteparser/grammar/SQLiteParser.g4
Normal file
915
go_modules/libsql-client-go/sqliteparser/grammar/SQLiteParser.g4
Normal file
@@ -0,0 +1,915 @@
|
||||
/*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2014 by Bart Kiers
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy of this software and
|
||||
* associated documentation files (the "Software"), to deal in the Software without restriction,
|
||||
* including without limitation the rights to use, copy, modify, merge, publish, distribute,
|
||||
* sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in all copies or
|
||||
* substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT
|
||||
* NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
|
||||
* DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*
|
||||
* Project : sqlite-parser; an ANTLR4 grammar for SQLite https://github.com/bkiers/sqlite-parser
|
||||
* Developed by:
|
||||
* Bart Kiers, bart@big-o.nl
|
||||
* Martin Mirchev, marti_2203@abv.bg
|
||||
* Mike Lische, mike@lischke-online.de
|
||||
*/
|
||||
|
||||
// $antlr-format alignTrailingComments on, columnLimit 130, minEmptyLines 1, maxEmptyLinesToKeep 1, reflowComments off
|
||||
// $antlr-format useTab off, allowShortRulesOnASingleLine off, allowShortBlocksOnASingleLine on, alignSemicolons ownLine
|
||||
|
||||
parser grammar SQLiteParser;
|
||||
|
||||
options {
|
||||
tokenVocab = SQLiteLexer;
|
||||
}
|
||||
|
||||
parse: (sql_stmt_list)* EOF
|
||||
;
|
||||
|
||||
sql_stmt_list:
|
||||
SCOL* sql_stmt (SCOL+ sql_stmt)* SCOL*
|
||||
;
|
||||
|
||||
sql_stmt: (EXPLAIN_ (QUERY_ PLAN_)?)? (
|
||||
alter_table_stmt
|
||||
| analyze_stmt
|
||||
| attach_stmt
|
||||
| begin_stmt
|
||||
| commit_stmt
|
||||
| create_index_stmt
|
||||
| create_table_stmt
|
||||
| create_trigger_stmt
|
||||
| create_view_stmt
|
||||
| create_virtual_table_stmt
|
||||
| delete_stmt
|
||||
| delete_stmt_limited
|
||||
| detach_stmt
|
||||
| drop_stmt
|
||||
| insert_stmt
|
||||
| pragma_stmt
|
||||
| reindex_stmt
|
||||
| release_stmt
|
||||
| rollback_stmt
|
||||
| savepoint_stmt
|
||||
| select_stmt
|
||||
| update_stmt
|
||||
| update_stmt_limited
|
||||
| vacuum_stmt
|
||||
)
|
||||
;
|
||||
|
||||
alter_table_stmt:
|
||||
ALTER_ TABLE_ (schema_name DOT)? table_name (
|
||||
RENAME_ (
|
||||
TO_ new_table_name = table_name
|
||||
| COLUMN_? old_column_name = column_name TO_ new_column_name = column_name
|
||||
)
|
||||
| ADD_ COLUMN_? column_def
|
||||
| DROP_ COLUMN_? column_name
|
||||
)
|
||||
;
|
||||
|
||||
analyze_stmt:
|
||||
ANALYZE_ (schema_name | (schema_name DOT)? table_or_index_name)?
|
||||
;
|
||||
|
||||
attach_stmt:
|
||||
ATTACH_ DATABASE_? expr AS_ schema_name
|
||||
;
|
||||
|
||||
begin_stmt:
|
||||
BEGIN_ (DEFERRED_ | IMMEDIATE_ | EXCLUSIVE_)? (
|
||||
TRANSACTION_ transaction_name?
|
||||
)?
|
||||
;
|
||||
|
||||
commit_stmt: (COMMIT_ | END_) TRANSACTION_?
|
||||
;
|
||||
|
||||
rollback_stmt:
|
||||
ROLLBACK_ TRANSACTION_? (TO_ SAVEPOINT_? savepoint_name)?
|
||||
;
|
||||
|
||||
savepoint_stmt:
|
||||
SAVEPOINT_ savepoint_name
|
||||
;
|
||||
|
||||
release_stmt:
|
||||
RELEASE_ SAVEPOINT_? savepoint_name
|
||||
;
|
||||
|
||||
create_index_stmt:
|
||||
CREATE_ UNIQUE_? INDEX_ (IF_ NOT_ EXISTS_)? (schema_name DOT)? index_name ON_ table_name OPEN_PAR
|
||||
indexed_column (COMMA indexed_column)* CLOSE_PAR (WHERE_ expr)?
|
||||
;
|
||||
|
||||
indexed_column: (column_name | expr) (COLLATE_ collation_name)? asc_desc?
|
||||
;
|
||||
|
||||
create_table_stmt:
|
||||
CREATE_ (TEMP_ | TEMPORARY_)? TABLE_ (IF_ NOT_ EXISTS_)? (
|
||||
schema_name DOT
|
||||
)? table_name (
|
||||
OPEN_PAR column_def (COMMA column_def)*? (COMMA table_constraint)* CLOSE_PAR (
|
||||
WITHOUT_ row_ROW_ID = IDENTIFIER
|
||||
)?
|
||||
| AS_ select_stmt
|
||||
)
|
||||
;
|
||||
|
||||
column_def:
|
||||
column_name type_name? column_constraint*
|
||||
;
|
||||
|
||||
type_name:
|
||||
name+? (
|
||||
OPEN_PAR signed_number CLOSE_PAR
|
||||
| OPEN_PAR signed_number COMMA signed_number CLOSE_PAR
|
||||
)?
|
||||
;
|
||||
|
||||
column_constraint: (CONSTRAINT_ name)? (
|
||||
(PRIMARY_ KEY_ asc_desc? conflict_clause? AUTOINCREMENT_?)
|
||||
| (NOT_? NULL_ | UNIQUE_) conflict_clause?
|
||||
| CHECK_ OPEN_PAR expr CLOSE_PAR
|
||||
| DEFAULT_ (signed_number | literal_value | OPEN_PAR expr CLOSE_PAR)
|
||||
| COLLATE_ collation_name
|
||||
| foreign_key_clause
|
||||
| (GENERATED_ ALWAYS_)? AS_ OPEN_PAR expr CLOSE_PAR (
|
||||
STORED_
|
||||
| VIRTUAL_
|
||||
)?
|
||||
)
|
||||
;
|
||||
|
||||
signed_number: (PLUS | MINUS)? NUMERIC_LITERAL
|
||||
;
|
||||
|
||||
table_constraint: (CONSTRAINT_ name)? (
|
||||
(PRIMARY_ KEY_ | UNIQUE_) OPEN_PAR indexed_column (
|
||||
COMMA indexed_column
|
||||
)* CLOSE_PAR conflict_clause?
|
||||
| CHECK_ OPEN_PAR expr CLOSE_PAR
|
||||
| FOREIGN_ KEY_ OPEN_PAR column_name (COMMA column_name)* CLOSE_PAR foreign_key_clause
|
||||
)
|
||||
;
|
||||
|
||||
foreign_key_clause:
|
||||
REFERENCES_ foreign_table (
|
||||
OPEN_PAR column_name (COMMA column_name)* CLOSE_PAR
|
||||
)? (
|
||||
ON_ (DELETE_ | UPDATE_) (
|
||||
SET_ (NULL_ | DEFAULT_)
|
||||
| CASCADE_
|
||||
| RESTRICT_
|
||||
| NO_ ACTION_
|
||||
)
|
||||
| MATCH_ name
|
||||
)* (NOT_? DEFERRABLE_ (INITIALLY_ (DEFERRED_ | IMMEDIATE_))?)?
|
||||
;
|
||||
|
||||
conflict_clause:
|
||||
ON_ CONFLICT_ (
|
||||
ROLLBACK_
|
||||
| ABORT_
|
||||
| FAIL_
|
||||
| IGNORE_
|
||||
| REPLACE_
|
||||
)
|
||||
;
|
||||
|
||||
create_trigger_stmt:
|
||||
CREATE_ (TEMP_ | TEMPORARY_)? TRIGGER_ (IF_ NOT_ EXISTS_)? (
|
||||
schema_name DOT
|
||||
)? trigger_name (BEFORE_ | AFTER_ | INSTEAD_ OF_)? (
|
||||
DELETE_
|
||||
| INSERT_
|
||||
| UPDATE_ (OF_ column_name ( COMMA column_name)*)?
|
||||
) ON_ table_name (FOR_ EACH_ ROW_)? (WHEN_ expr)? BEGIN_ (
|
||||
(update_stmt | insert_stmt | delete_stmt | select_stmt) SCOL
|
||||
)+ END_
|
||||
;
|
||||
|
||||
create_view_stmt:
|
||||
CREATE_ (TEMP_ | TEMPORARY_)? VIEW_ (IF_ NOT_ EXISTS_)? (
|
||||
schema_name DOT
|
||||
)? view_name (OPEN_PAR column_name (COMMA column_name)* CLOSE_PAR)? AS_ select_stmt
|
||||
;
|
||||
|
||||
create_virtual_table_stmt:
|
||||
CREATE_ VIRTUAL_ TABLE_ (IF_ NOT_ EXISTS_)? (schema_name DOT)? table_name USING_ module_name (
|
||||
OPEN_PAR module_argument (COMMA module_argument)* CLOSE_PAR
|
||||
)?
|
||||
;
|
||||
|
||||
with_clause:
|
||||
WITH_ RECURSIVE_? cte_table_name AS_ OPEN_PAR select_stmt CLOSE_PAR (
|
||||
COMMA cte_table_name AS_ OPEN_PAR select_stmt CLOSE_PAR
|
||||
)*
|
||||
;
|
||||
|
||||
cte_table_name:
|
||||
table_name (OPEN_PAR column_name ( COMMA column_name)* CLOSE_PAR)?
|
||||
;
|
||||
|
||||
recursive_cte:
|
||||
cte_table_name AS_ OPEN_PAR initial_select UNION_ ALL_? recursive_select CLOSE_PAR
|
||||
;
|
||||
|
||||
common_table_expression:
|
||||
table_name (OPEN_PAR column_name ( COMMA column_name)* CLOSE_PAR)? AS_ OPEN_PAR select_stmt CLOSE_PAR
|
||||
;
|
||||
|
||||
delete_stmt:
|
||||
with_clause? DELETE_ FROM_ qualified_table_name (WHERE_ expr)? returning_clause?
|
||||
;
|
||||
|
||||
delete_stmt_limited:
|
||||
with_clause? DELETE_ FROM_ qualified_table_name (WHERE_ expr)? returning_clause? (
|
||||
order_by_stmt? limit_stmt
|
||||
)?
|
||||
;
|
||||
|
||||
detach_stmt:
|
||||
DETACH_ DATABASE_? schema_name
|
||||
;
|
||||
|
||||
drop_stmt:
|
||||
DROP_ object = (INDEX_ | TABLE_ | TRIGGER_ | VIEW_) (
|
||||
IF_ EXISTS_
|
||||
)? (schema_name DOT)? any_name
|
||||
;
|
||||
|
||||
/*
|
||||
SQLite understands the following binary operators, in order from highest to lowest precedence:
|
||||
||
|
||||
* / %
|
||||
+ -
|
||||
<< >> & |
|
||||
< <= > >=
|
||||
= == != <> IS IS NOT IN LIKE GLOB MATCH REGEXP
|
||||
AND
|
||||
OR
|
||||
*/
|
||||
expr:
|
||||
literal_value
|
||||
| BIND_PARAMETER
|
||||
| ((schema_name DOT)? table_name DOT)? column_name
|
||||
| unary_operator expr
|
||||
| expr PIPE2 expr
|
||||
| expr ( STAR | DIV | MOD) expr
|
||||
| expr ( PLUS | MINUS) expr
|
||||
| expr ( LT2 | GT2 | AMP | PIPE) expr
|
||||
| expr ( LT | LT_EQ | GT | GT_EQ) expr
|
||||
| expr (
|
||||
ASSIGN
|
||||
| EQ
|
||||
| NOT_EQ1
|
||||
| NOT_EQ2
|
||||
| IS_
|
||||
| IS_ NOT_
|
||||
| IN_
|
||||
| LIKE_
|
||||
| GLOB_
|
||||
| MATCH_
|
||||
| REGEXP_
|
||||
) expr
|
||||
| expr AND_ expr
|
||||
| expr OR_ expr
|
||||
| function_name OPEN_PAR ((DISTINCT_? expr ( COMMA expr)*) | STAR)? CLOSE_PAR filter_clause? over_clause?
|
||||
| OPEN_PAR expr (COMMA expr)* CLOSE_PAR
|
||||
| CAST_ OPEN_PAR expr AS_ type_name CLOSE_PAR
|
||||
| expr COLLATE_ collation_name
|
||||
| expr NOT_? (LIKE_ | GLOB_ | REGEXP_ | MATCH_) expr (
|
||||
ESCAPE_ expr
|
||||
)?
|
||||
| expr ( ISNULL_ | NOTNULL_ | NOT_ NULL_)
|
||||
| expr IS_ NOT_? expr
|
||||
| expr NOT_? BETWEEN_ expr AND_ expr
|
||||
| expr NOT_? IN_ (
|
||||
OPEN_PAR (select_stmt | expr ( COMMA expr)*)? CLOSE_PAR
|
||||
| ( schema_name DOT)? table_name
|
||||
| (schema_name DOT)? table_function_name OPEN_PAR (expr (COMMA expr)*)? CLOSE_PAR
|
||||
)
|
||||
| ((NOT_)? EXISTS_)? OPEN_PAR select_stmt CLOSE_PAR
|
||||
| CASE_ expr? (WHEN_ expr THEN_ expr)+ (ELSE_ expr)? END_
|
||||
| raise_function
|
||||
;
|
||||
|
||||
raise_function:
|
||||
RAISE_ OPEN_PAR (
|
||||
IGNORE_
|
||||
| (ROLLBACK_ | ABORT_ | FAIL_) COMMA error_message
|
||||
) CLOSE_PAR
|
||||
;
|
||||
|
||||
literal_value:
|
||||
NUMERIC_LITERAL
|
||||
| STRING_LITERAL
|
||||
| BLOB_LITERAL
|
||||
| NULL_
|
||||
| TRUE_
|
||||
| FALSE_
|
||||
| CURRENT_TIME_
|
||||
| CURRENT_DATE_
|
||||
| CURRENT_TIMESTAMP_
|
||||
;
|
||||
|
||||
value_row:
|
||||
OPEN_PAR expr (COMMA expr)* CLOSE_PAR
|
||||
;
|
||||
|
||||
values_clause:
|
||||
VALUES_ value_row (COMMA value_row)*
|
||||
;
|
||||
|
||||
insert_stmt:
|
||||
with_clause? (
|
||||
INSERT_
|
||||
| REPLACE_
|
||||
| INSERT_ OR_ (
|
||||
REPLACE_
|
||||
| ROLLBACK_
|
||||
| ABORT_
|
||||
| FAIL_
|
||||
| IGNORE_
|
||||
)
|
||||
) INTO_ (schema_name DOT)? table_name (AS_ table_alias)? (
|
||||
OPEN_PAR column_name ( COMMA column_name)* CLOSE_PAR
|
||||
)? (
|
||||
(
|
||||
( values_clause | select_stmt ) upsert_clause?
|
||||
)
|
||||
| DEFAULT_ VALUES_
|
||||
) returning_clause?
|
||||
;
|
||||
|
||||
returning_clause:
|
||||
RETURNING_ result_column (COMMA result_column)*
|
||||
;
|
||||
|
||||
upsert_clause:
|
||||
ON_ CONFLICT_ (
|
||||
OPEN_PAR indexed_column (COMMA indexed_column)* CLOSE_PAR (WHERE_ expr)?
|
||||
)? DO_ (
|
||||
NOTHING_
|
||||
| UPDATE_ SET_ (
|
||||
(column_name | column_name_list) ASSIGN expr (
|
||||
COMMA (column_name | column_name_list) ASSIGN expr
|
||||
)* (WHERE_ expr)?
|
||||
)
|
||||
)
|
||||
;
|
||||
|
||||
pragma_stmt:
|
||||
PRAGMA_ (schema_name DOT)? pragma_name (
|
||||
ASSIGN pragma_value
|
||||
| OPEN_PAR pragma_value CLOSE_PAR
|
||||
)?
|
||||
;
|
||||
|
||||
pragma_value:
|
||||
signed_number
|
||||
| name
|
||||
| STRING_LITERAL
|
||||
;
|
||||
|
||||
reindex_stmt:
|
||||
REINDEX_ (collation_name | (schema_name DOT)? (table_name | index_name))?
|
||||
;
|
||||
|
||||
select_stmt:
|
||||
common_table_stmt? select_core (compound_operator select_core)* order_by_stmt? limit_stmt?
|
||||
;
|
||||
|
||||
join_clause:
|
||||
table_or_subquery (join_operator table_or_subquery join_constraint?)*
|
||||
;
|
||||
|
||||
select_core:
|
||||
(
|
||||
SELECT_ (DISTINCT_ | ALL_)? result_column (COMMA result_column)* (
|
||||
FROM_ (table_or_subquery (COMMA table_or_subquery)* | join_clause)
|
||||
)? (WHERE_ whereExpr=expr)? (
|
||||
GROUP_ BY_ groupByExpr+=expr (COMMA groupByExpr+=expr)* (
|
||||
HAVING_ havingExpr=expr
|
||||
)?)? (
|
||||
WINDOW_ window_name AS_ window_defn (
|
||||
COMMA window_name AS_ window_defn
|
||||
)*
|
||||
)?
|
||||
)
|
||||
| values_clause
|
||||
;
|
||||
|
||||
factored_select_stmt:
|
||||
select_stmt
|
||||
;
|
||||
|
||||
simple_select_stmt:
|
||||
common_table_stmt? select_core order_by_stmt? limit_stmt?
|
||||
;
|
||||
|
||||
compound_select_stmt:
|
||||
common_table_stmt? select_core (
|
||||
(UNION_ ALL_? | INTERSECT_ | EXCEPT_) select_core
|
||||
)+ order_by_stmt? limit_stmt?
|
||||
;
|
||||
|
||||
table_or_subquery: (
|
||||
(schema_name DOT)? table_name (AS_? table_alias)? (
|
||||
INDEXED_ BY_ index_name
|
||||
| NOT_ INDEXED_
|
||||
)?
|
||||
)
|
||||
| (schema_name DOT)? table_function_name OPEN_PAR expr (COMMA expr)* CLOSE_PAR (
|
||||
AS_? table_alias
|
||||
)?
|
||||
| OPEN_PAR (table_or_subquery (COMMA table_or_subquery)* | join_clause) CLOSE_PAR
|
||||
| OPEN_PAR select_stmt CLOSE_PAR (AS_? table_alias)?
|
||||
;
|
||||
|
||||
result_column:
|
||||
STAR
|
||||
| table_name DOT STAR
|
||||
| expr ( AS_? column_alias)?
|
||||
;
|
||||
|
||||
join_operator:
|
||||
COMMA
|
||||
| NATURAL_? (LEFT_ OUTER_? | INNER_ | CROSS_)? JOIN_
|
||||
;
|
||||
|
||||
join_constraint:
|
||||
ON_ expr
|
||||
| USING_ OPEN_PAR column_name ( COMMA column_name)* CLOSE_PAR
|
||||
;
|
||||
|
||||
compound_operator:
|
||||
UNION_ ALL_?
|
||||
| INTERSECT_
|
||||
| EXCEPT_
|
||||
;
|
||||
|
||||
update_stmt:
|
||||
with_clause? UPDATE_ (
|
||||
OR_ (ROLLBACK_ | ABORT_ | REPLACE_ | FAIL_ | IGNORE_)
|
||||
)? qualified_table_name SET_ (column_name | column_name_list) ASSIGN expr (
|
||||
COMMA (column_name | column_name_list) ASSIGN expr
|
||||
)* (
|
||||
FROM_ (table_or_subquery (COMMA table_or_subquery)* | join_clause)
|
||||
)? (WHERE_ expr)? returning_clause?
|
||||
;
|
||||
|
||||
column_name_list:
|
||||
OPEN_PAR column_name (COMMA column_name)* CLOSE_PAR
|
||||
;
|
||||
|
||||
update_stmt_limited:
|
||||
with_clause? UPDATE_ (
|
||||
OR_ (ROLLBACK_ | ABORT_ | REPLACE_ | FAIL_ | IGNORE_)
|
||||
)? qualified_table_name SET_ (column_name | column_name_list) ASSIGN expr (
|
||||
COMMA (column_name | column_name_list) ASSIGN expr
|
||||
)* (WHERE_ expr)? returning_clause? (order_by_stmt? limit_stmt)?
|
||||
;
|
||||
|
||||
qualified_table_name: (schema_name DOT)? table_name (AS_ alias)? (
|
||||
INDEXED_ BY_ index_name
|
||||
| NOT_ INDEXED_
|
||||
)?
|
||||
;
|
||||
|
||||
vacuum_stmt:
|
||||
VACUUM_ schema_name? (INTO_ filename)?
|
||||
;
|
||||
|
||||
filter_clause:
|
||||
FILTER_ OPEN_PAR WHERE_ expr CLOSE_PAR
|
||||
;
|
||||
|
||||
window_defn:
|
||||
OPEN_PAR base_window_name? (PARTITION_ BY_ expr (COMMA expr)*)? (
|
||||
ORDER_ BY_ ordering_term (COMMA ordering_term)*
|
||||
) frame_spec? CLOSE_PAR
|
||||
;
|
||||
|
||||
over_clause:
|
||||
OVER_ (
|
||||
window_name
|
||||
| OPEN_PAR base_window_name? (PARTITION_ BY_ expr (COMMA expr)*)? (
|
||||
ORDER_ BY_ ordering_term (COMMA ordering_term)*
|
||||
)? frame_spec? CLOSE_PAR
|
||||
)
|
||||
;
|
||||
|
||||
frame_spec:
|
||||
frame_clause (
|
||||
EXCLUDE_ (
|
||||
NO_ OTHERS_
|
||||
| CURRENT_ ROW_
|
||||
| GROUP_
|
||||
| TIES_
|
||||
)
|
||||
)?
|
||||
;
|
||||
|
||||
frame_clause: (RANGE_ | ROWS_ | GROUPS_) (
|
||||
frame_single
|
||||
| BETWEEN_ frame_left AND_ frame_right
|
||||
)
|
||||
;
|
||||
|
||||
simple_function_invocation:
|
||||
simple_func OPEN_PAR (expr (COMMA expr)* | STAR) CLOSE_PAR
|
||||
;
|
||||
|
||||
aggregate_function_invocation:
|
||||
aggregate_func OPEN_PAR (DISTINCT_? expr (COMMA expr)* | STAR)? CLOSE_PAR filter_clause?
|
||||
;
|
||||
|
||||
window_function_invocation:
|
||||
window_function OPEN_PAR (expr (COMMA expr)* | STAR)? CLOSE_PAR filter_clause? OVER_ (
|
||||
window_defn
|
||||
| window_name
|
||||
)
|
||||
;
|
||||
|
||||
common_table_stmt: //additional structures
|
||||
WITH_ RECURSIVE_? common_table_expression (COMMA common_table_expression)*
|
||||
;
|
||||
|
||||
order_by_stmt:
|
||||
ORDER_ BY_ ordering_term (COMMA ordering_term)*
|
||||
;
|
||||
|
||||
limit_stmt:
|
||||
LIMIT_ expr ((OFFSET_ | COMMA) expr)?
|
||||
;
|
||||
|
||||
ordering_term:
|
||||
expr (COLLATE_ collation_name)? asc_desc? (NULLS_ (FIRST_ | LAST_))?
|
||||
;
|
||||
|
||||
asc_desc:
|
||||
ASC_
|
||||
| DESC_
|
||||
;
|
||||
|
||||
frame_left:
|
||||
expr PRECEDING_
|
||||
| expr FOLLOWING_
|
||||
| CURRENT_ ROW_
|
||||
| UNBOUNDED_ PRECEDING_
|
||||
;
|
||||
|
||||
frame_right:
|
||||
expr PRECEDING_
|
||||
| expr FOLLOWING_
|
||||
| CURRENT_ ROW_
|
||||
| UNBOUNDED_ FOLLOWING_
|
||||
;
|
||||
|
||||
frame_single:
|
||||
expr PRECEDING_
|
||||
| UNBOUNDED_ PRECEDING_
|
||||
| CURRENT_ ROW_
|
||||
;
|
||||
|
||||
// unknown
|
||||
|
||||
window_function:
|
||||
(FIRST_VALUE_ | LAST_VALUE_) OPEN_PAR expr CLOSE_PAR OVER_ OPEN_PAR partition_by? order_by_expr_asc_desc frame_clause
|
||||
? CLOSE_PAR
|
||||
| (CUME_DIST_ | PERCENT_RANK_) OPEN_PAR CLOSE_PAR OVER_ OPEN_PAR partition_by? order_by_expr? CLOSE_PAR
|
||||
| (DENSE_RANK_ | RANK_ | ROW_NUMBER_) OPEN_PAR CLOSE_PAR OVER_ OPEN_PAR partition_by? order_by_expr_asc_desc
|
||||
CLOSE_PAR
|
||||
| (LAG_ | LEAD_) OPEN_PAR expr offset? default_value? CLOSE_PAR OVER_ OPEN_PAR partition_by?
|
||||
order_by_expr_asc_desc CLOSE_PAR
|
||||
| NTH_VALUE_ OPEN_PAR expr COMMA signed_number CLOSE_PAR OVER_ OPEN_PAR partition_by? order_by_expr_asc_desc
|
||||
frame_clause? CLOSE_PAR
|
||||
| NTILE_ OPEN_PAR expr CLOSE_PAR OVER_ OPEN_PAR partition_by? order_by_expr_asc_desc CLOSE_PAR
|
||||
;
|
||||
|
||||
offset:
|
||||
COMMA signed_number
|
||||
;
|
||||
|
||||
default_value:
|
||||
COMMA signed_number
|
||||
;
|
||||
|
||||
partition_by:
|
||||
PARTITION_ BY_ expr+
|
||||
;
|
||||
|
||||
order_by_expr:
|
||||
ORDER_ BY_ expr+
|
||||
;
|
||||
|
||||
order_by_expr_asc_desc:
|
||||
ORDER_ BY_ expr_asc_desc
|
||||
;
|
||||
|
||||
expr_asc_desc:
|
||||
expr asc_desc? (COMMA expr asc_desc?)*
|
||||
;
|
||||
|
||||
//TODO BOTH OF THESE HAVE TO BE REWORKED TO FOLLOW THE SPEC
|
||||
initial_select:
|
||||
select_stmt
|
||||
;
|
||||
|
||||
recursive_select:
|
||||
select_stmt
|
||||
;
|
||||
|
||||
unary_operator:
|
||||
MINUS
|
||||
| PLUS
|
||||
| TILDE
|
||||
| NOT_
|
||||
;
|
||||
|
||||
error_message:
|
||||
STRING_LITERAL
|
||||
;
|
||||
|
||||
module_argument: // TODO check what exactly is permitted here
|
||||
expr
|
||||
| column_def
|
||||
;
|
||||
|
||||
column_alias:
|
||||
IDENTIFIER
|
||||
| STRING_LITERAL
|
||||
;
|
||||
|
||||
keyword:
|
||||
ABORT_
|
||||
| ACTION_
|
||||
| ADD_
|
||||
| AFTER_
|
||||
| ALL_
|
||||
| ALTER_
|
||||
| ANALYZE_
|
||||
| AND_
|
||||
| AS_
|
||||
| ASC_
|
||||
| ATTACH_
|
||||
| AUTOINCREMENT_
|
||||
| BEFORE_
|
||||
| BEGIN_
|
||||
| BETWEEN_
|
||||
| BY_
|
||||
| CASCADE_
|
||||
| CASE_
|
||||
| CAST_
|
||||
| CHECK_
|
||||
| COLLATE_
|
||||
| COLUMN_
|
||||
| COMMIT_
|
||||
| CONFLICT_
|
||||
| CONSTRAINT_
|
||||
| CREATE_
|
||||
| CROSS_
|
||||
| CURRENT_DATE_
|
||||
| CURRENT_TIME_
|
||||
| CURRENT_TIMESTAMP_
|
||||
| DATABASE_
|
||||
| DEFAULT_
|
||||
| DEFERRABLE_
|
||||
| DEFERRED_
|
||||
| DELETE_
|
||||
| DESC_
|
||||
| DETACH_
|
||||
| DISTINCT_
|
||||
| DROP_
|
||||
| EACH_
|
||||
| ELSE_
|
||||
| END_
|
||||
| ESCAPE_
|
||||
| EXCEPT_
|
||||
| EXCLUSIVE_
|
||||
| EXISTS_
|
||||
| EXPLAIN_
|
||||
| FAIL_
|
||||
| FOR_
|
||||
| FOREIGN_
|
||||
| FROM_
|
||||
| FULL_
|
||||
| GLOB_
|
||||
| GROUP_
|
||||
| HAVING_
|
||||
| IF_
|
||||
| IGNORE_
|
||||
| IMMEDIATE_
|
||||
| IN_
|
||||
| INDEX_
|
||||
| INDEXED_
|
||||
| INITIALLY_
|
||||
| INNER_
|
||||
| INSERT_
|
||||
| INSTEAD_
|
||||
| INTERSECT_
|
||||
| INTO_
|
||||
| IS_
|
||||
| ISNULL_
|
||||
| JOIN_
|
||||
| KEY_
|
||||
| LEFT_
|
||||
| LIKE_
|
||||
| LIMIT_
|
||||
| MATCH_
|
||||
| NATURAL_
|
||||
| NO_
|
||||
| NOT_
|
||||
| NOTNULL_
|
||||
| NULL_
|
||||
| OF_
|
||||
| OFFSET_
|
||||
| ON_
|
||||
| OR_
|
||||
| ORDER_
|
||||
| OUTER_
|
||||
| PLAN_
|
||||
| PRAGMA_
|
||||
| PRIMARY_
|
||||
| QUERY_
|
||||
| RAISE_
|
||||
| RECURSIVE_
|
||||
| REFERENCES_
|
||||
| REGEXP_
|
||||
| REINDEX_
|
||||
| RELEASE_
|
||||
| RENAME_
|
||||
| REPLACE_
|
||||
| RESTRICT_
|
||||
| RIGHT_
|
||||
| ROLLBACK_
|
||||
| ROW_
|
||||
| ROWS_
|
||||
| SAVEPOINT_
|
||||
| SELECT_
|
||||
| SET_
|
||||
| TABLE_
|
||||
| TEMP_
|
||||
| TEMPORARY_
|
||||
| THEN_
|
||||
| TO_
|
||||
| TRANSACTION_
|
||||
| TRIGGER_
|
||||
| UNION_
|
||||
| UNIQUE_
|
||||
| UPDATE_
|
||||
| USING_
|
||||
| VACUUM_
|
||||
| VALUES_
|
||||
| VIEW_
|
||||
| VIRTUAL_
|
||||
| WHEN_
|
||||
| WHERE_
|
||||
| WITH_
|
||||
| WITHOUT_
|
||||
| FIRST_VALUE_
|
||||
| OVER_
|
||||
| PARTITION_
|
||||
| RANGE_
|
||||
| PRECEDING_
|
||||
| UNBOUNDED_
|
||||
| CURRENT_
|
||||
| FOLLOWING_
|
||||
| CUME_DIST_
|
||||
| DENSE_RANK_
|
||||
| LAG_
|
||||
| LAST_VALUE_
|
||||
| LEAD_
|
||||
| NTH_VALUE_
|
||||
| NTILE_
|
||||
| PERCENT_RANK_
|
||||
| RANK_
|
||||
| ROW_NUMBER_
|
||||
| GENERATED_
|
||||
| ALWAYS_
|
||||
| STORED_
|
||||
| TRUE_
|
||||
| FALSE_
|
||||
| WINDOW_
|
||||
| NULLS_
|
||||
| FIRST_
|
||||
| LAST_
|
||||
| FILTER_
|
||||
| GROUPS_
|
||||
| EXCLUDE_
|
||||
;
|
||||
|
||||
// TODO: check all names below
|
||||
|
||||
name:
|
||||
any_name
|
||||
;
|
||||
|
||||
function_name:
|
||||
any_name
|
||||
;
|
||||
|
||||
schema_name:
|
||||
any_name
|
||||
;
|
||||
|
||||
table_name:
|
||||
any_name
|
||||
;
|
||||
|
||||
table_or_index_name:
|
||||
any_name
|
||||
;
|
||||
|
||||
column_name:
|
||||
any_name
|
||||
;
|
||||
|
||||
collation_name:
|
||||
any_name
|
||||
;
|
||||
|
||||
foreign_table:
|
||||
any_name
|
||||
;
|
||||
|
||||
index_name:
|
||||
any_name
|
||||
;
|
||||
|
||||
trigger_name:
|
||||
any_name
|
||||
;
|
||||
|
||||
view_name:
|
||||
any_name
|
||||
;
|
||||
|
||||
module_name:
|
||||
any_name
|
||||
;
|
||||
|
||||
pragma_name:
|
||||
any_name
|
||||
;
|
||||
|
||||
savepoint_name:
|
||||
any_name
|
||||
;
|
||||
|
||||
table_alias:
|
||||
any_name
|
||||
;
|
||||
|
||||
transaction_name:
|
||||
any_name
|
||||
;
|
||||
|
||||
window_name:
|
||||
any_name
|
||||
;
|
||||
|
||||
alias:
|
||||
any_name
|
||||
;
|
||||
|
||||
filename:
|
||||
any_name
|
||||
;
|
||||
|
||||
base_window_name:
|
||||
any_name
|
||||
;
|
||||
|
||||
simple_func:
|
||||
any_name
|
||||
;
|
||||
|
||||
aggregate_func:
|
||||
any_name
|
||||
;
|
||||
|
||||
table_function_name:
|
||||
any_name
|
||||
;
|
||||
|
||||
any_name:
|
||||
IDENTIFIER
|
||||
| keyword
|
||||
| STRING_LITERAL
|
||||
| OPEN_PAR any_name CLOSE_PAR
|
||||
;
|
||||
@@ -0,0 +1,377 @@
|
||||
SCOL=1
|
||||
DOT=2
|
||||
OPEN_PAR=3
|
||||
CLOSE_PAR=4
|
||||
COMMA=5
|
||||
ASSIGN=6
|
||||
STAR=7
|
||||
PLUS=8
|
||||
MINUS=9
|
||||
TILDE=10
|
||||
PIPE2=11
|
||||
DIV=12
|
||||
MOD=13
|
||||
LT2=14
|
||||
GT2=15
|
||||
AMP=16
|
||||
PIPE=17
|
||||
LT=18
|
||||
LT_EQ=19
|
||||
GT=20
|
||||
GT_EQ=21
|
||||
EQ=22
|
||||
NOT_EQ1=23
|
||||
NOT_EQ2=24
|
||||
ABORT_=25
|
||||
ACTION_=26
|
||||
ADD_=27
|
||||
AFTER_=28
|
||||
ALL_=29
|
||||
ALTER_=30
|
||||
ANALYZE_=31
|
||||
AND_=32
|
||||
AS_=33
|
||||
ASC_=34
|
||||
ATTACH_=35
|
||||
AUTOINCREMENT_=36
|
||||
BEFORE_=37
|
||||
BEGIN_=38
|
||||
BETWEEN_=39
|
||||
BY_=40
|
||||
CASCADE_=41
|
||||
CASE_=42
|
||||
CAST_=43
|
||||
CHECK_=44
|
||||
COLLATE_=45
|
||||
COLUMN_=46
|
||||
COMMIT_=47
|
||||
CONFLICT_=48
|
||||
CONSTRAINT_=49
|
||||
CREATE_=50
|
||||
CROSS_=51
|
||||
CURRENT_DATE_=52
|
||||
CURRENT_TIME_=53
|
||||
CURRENT_TIMESTAMP_=54
|
||||
DATABASE_=55
|
||||
DEFAULT_=56
|
||||
DEFERRABLE_=57
|
||||
DEFERRED_=58
|
||||
DELETE_=59
|
||||
DESC_=60
|
||||
DETACH_=61
|
||||
DISTINCT_=62
|
||||
DROP_=63
|
||||
EACH_=64
|
||||
ELSE_=65
|
||||
END_=66
|
||||
ESCAPE_=67
|
||||
EXCEPT_=68
|
||||
EXCLUSIVE_=69
|
||||
EXISTS_=70
|
||||
EXPLAIN_=71
|
||||
FAIL_=72
|
||||
FOR_=73
|
||||
FOREIGN_=74
|
||||
FROM_=75
|
||||
FULL_=76
|
||||
GLOB_=77
|
||||
GROUP_=78
|
||||
HAVING_=79
|
||||
IF_=80
|
||||
IGNORE_=81
|
||||
IMMEDIATE_=82
|
||||
IN_=83
|
||||
INDEX_=84
|
||||
INDEXED_=85
|
||||
INITIALLY_=86
|
||||
INNER_=87
|
||||
INSERT_=88
|
||||
INSTEAD_=89
|
||||
INTERSECT_=90
|
||||
INTO_=91
|
||||
IS_=92
|
||||
ISNULL_=93
|
||||
JOIN_=94
|
||||
KEY_=95
|
||||
LEFT_=96
|
||||
LIKE_=97
|
||||
LIMIT_=98
|
||||
MATCH_=99
|
||||
NATURAL_=100
|
||||
NO_=101
|
||||
NOT_=102
|
||||
NOTNULL_=103
|
||||
NULL_=104
|
||||
OF_=105
|
||||
OFFSET_=106
|
||||
ON_=107
|
||||
OR_=108
|
||||
ORDER_=109
|
||||
OUTER_=110
|
||||
PLAN_=111
|
||||
PRAGMA_=112
|
||||
PRIMARY_=113
|
||||
QUERY_=114
|
||||
RAISE_=115
|
||||
RECURSIVE_=116
|
||||
REFERENCES_=117
|
||||
REGEXP_=118
|
||||
REINDEX_=119
|
||||
RELEASE_=120
|
||||
RENAME_=121
|
||||
REPLACE_=122
|
||||
RESTRICT_=123
|
||||
RETURNING_=124
|
||||
RIGHT_=125
|
||||
ROLLBACK_=126
|
||||
ROW_=127
|
||||
ROWS_=128
|
||||
SAVEPOINT_=129
|
||||
SELECT_=130
|
||||
SET_=131
|
||||
TABLE_=132
|
||||
TEMP_=133
|
||||
TEMPORARY_=134
|
||||
THEN_=135
|
||||
TO_=136
|
||||
TRANSACTION_=137
|
||||
TRIGGER_=138
|
||||
UNION_=139
|
||||
UNIQUE_=140
|
||||
UPDATE_=141
|
||||
USING_=142
|
||||
VACUUM_=143
|
||||
VALUES_=144
|
||||
VIEW_=145
|
||||
VIRTUAL_=146
|
||||
WHEN_=147
|
||||
WHERE_=148
|
||||
WITH_=149
|
||||
WITHOUT_=150
|
||||
FIRST_VALUE_=151
|
||||
OVER_=152
|
||||
PARTITION_=153
|
||||
RANGE_=154
|
||||
PRECEDING_=155
|
||||
UNBOUNDED_=156
|
||||
CURRENT_=157
|
||||
FOLLOWING_=158
|
||||
CUME_DIST_=159
|
||||
DENSE_RANK_=160
|
||||
LAG_=161
|
||||
LAST_VALUE_=162
|
||||
LEAD_=163
|
||||
NTH_VALUE_=164
|
||||
NTILE_=165
|
||||
PERCENT_RANK_=166
|
||||
RANK_=167
|
||||
ROW_NUMBER_=168
|
||||
GENERATED_=169
|
||||
ALWAYS_=170
|
||||
STORED_=171
|
||||
TRUE_=172
|
||||
FALSE_=173
|
||||
WINDOW_=174
|
||||
NULLS_=175
|
||||
FIRST_=176
|
||||
LAST_=177
|
||||
FILTER_=178
|
||||
GROUPS_=179
|
||||
EXCLUDE_=180
|
||||
TIES_=181
|
||||
OTHERS_=182
|
||||
DO_=183
|
||||
NOTHING_=184
|
||||
IDENTIFIER=185
|
||||
NUMERIC_LITERAL=186
|
||||
BIND_PARAMETER=187
|
||||
STRING_LITERAL=188
|
||||
BLOB_LITERAL=189
|
||||
SINGLE_LINE_COMMENT=190
|
||||
MULTILINE_COMMENT=191
|
||||
SPACES=192
|
||||
UNEXPECTED_CHAR=193
|
||||
';'=1
|
||||
'.'=2
|
||||
'('=3
|
||||
')'=4
|
||||
','=5
|
||||
'='=6
|
||||
'*'=7
|
||||
'+'=8
|
||||
'-'=9
|
||||
'~'=10
|
||||
'||'=11
|
||||
'/'=12
|
||||
'%'=13
|
||||
'<<'=14
|
||||
'>>'=15
|
||||
'&'=16
|
||||
'|'=17
|
||||
'<'=18
|
||||
'<='=19
|
||||
'>'=20
|
||||
'>='=21
|
||||
'=='=22
|
||||
'!='=23
|
||||
'<>'=24
|
||||
'ABORT'=25
|
||||
'ACTION'=26
|
||||
'ADD'=27
|
||||
'AFTER'=28
|
||||
'ALL'=29
|
||||
'ALTER'=30
|
||||
'ANALYZE'=31
|
||||
'AND'=32
|
||||
'AS'=33
|
||||
'ASC'=34
|
||||
'ATTACH'=35
|
||||
'AUTOINCREMENT'=36
|
||||
'BEFORE'=37
|
||||
'BEGIN'=38
|
||||
'BETWEEN'=39
|
||||
'BY'=40
|
||||
'CASCADE'=41
|
||||
'CASE'=42
|
||||
'CAST'=43
|
||||
'CHECK'=44
|
||||
'COLLATE'=45
|
||||
'COLUMN'=46
|
||||
'COMMIT'=47
|
||||
'CONFLICT'=48
|
||||
'CONSTRAINT'=49
|
||||
'CREATE'=50
|
||||
'CROSS'=51
|
||||
'CURRENT_DATE'=52
|
||||
'CURRENT_TIME'=53
|
||||
'CURRENT_TIMESTAMP'=54
|
||||
'DATABASE'=55
|
||||
'DEFAULT'=56
|
||||
'DEFERRABLE'=57
|
||||
'DEFERRED'=58
|
||||
'DELETE'=59
|
||||
'DESC'=60
|
||||
'DETACH'=61
|
||||
'DISTINCT'=62
|
||||
'DROP'=63
|
||||
'EACH'=64
|
||||
'ELSE'=65
|
||||
'END'=66
|
||||
'ESCAPE'=67
|
||||
'EXCEPT'=68
|
||||
'EXCLUSIVE'=69
|
||||
'EXISTS'=70
|
||||
'EXPLAIN'=71
|
||||
'FAIL'=72
|
||||
'FOR'=73
|
||||
'FOREIGN'=74
|
||||
'FROM'=75
|
||||
'FULL'=76
|
||||
'GLOB'=77
|
||||
'GROUP'=78
|
||||
'HAVING'=79
|
||||
'IF'=80
|
||||
'IGNORE'=81
|
||||
'IMMEDIATE'=82
|
||||
'IN'=83
|
||||
'INDEX'=84
|
||||
'INDEXED'=85
|
||||
'INITIALLY'=86
|
||||
'INNER'=87
|
||||
'INSERT'=88
|
||||
'INSTEAD'=89
|
||||
'INTERSECT'=90
|
||||
'INTO'=91
|
||||
'IS'=92
|
||||
'ISNULL'=93
|
||||
'JOIN'=94
|
||||
'KEY'=95
|
||||
'LEFT'=96
|
||||
'LIKE'=97
|
||||
'LIMIT'=98
|
||||
'MATCH'=99
|
||||
'NATURAL'=100
|
||||
'NO'=101
|
||||
'NOT'=102
|
||||
'NOTNULL'=103
|
||||
'NULL'=104
|
||||
'OF'=105
|
||||
'OFFSET'=106
|
||||
'ON'=107
|
||||
'OR'=108
|
||||
'ORDER'=109
|
||||
'OUTER'=110
|
||||
'PLAN'=111
|
||||
'PRAGMA'=112
|
||||
'PRIMARY'=113
|
||||
'QUERY'=114
|
||||
'RAISE'=115
|
||||
'RECURSIVE'=116
|
||||
'REFERENCES'=117
|
||||
'REGEXP'=118
|
||||
'REINDEX'=119
|
||||
'RELEASE'=120
|
||||
'RENAME'=121
|
||||
'REPLACE'=122
|
||||
'RESTRICT'=123
|
||||
'RETURNING'=124
|
||||
'RIGHT'=125
|
||||
'ROLLBACK'=126
|
||||
'ROW'=127
|
||||
'ROWS'=128
|
||||
'SAVEPOINT'=129
|
||||
'SELECT'=130
|
||||
'SET'=131
|
||||
'TABLE'=132
|
||||
'TEMP'=133
|
||||
'TEMPORARY'=134
|
||||
'THEN'=135
|
||||
'TO'=136
|
||||
'TRANSACTION'=137
|
||||
'TRIGGER'=138
|
||||
'UNION'=139
|
||||
'UNIQUE'=140
|
||||
'UPDATE'=141
|
||||
'USING'=142
|
||||
'VACUUM'=143
|
||||
'VALUES'=144
|
||||
'VIEW'=145
|
||||
'VIRTUAL'=146
|
||||
'WHEN'=147
|
||||
'WHERE'=148
|
||||
'WITH'=149
|
||||
'WITHOUT'=150
|
||||
'FIRST_VALUE'=151
|
||||
'OVER'=152
|
||||
'PARTITION'=153
|
||||
'RANGE'=154
|
||||
'PRECEDING'=155
|
||||
'UNBOUNDED'=156
|
||||
'CURRENT'=157
|
||||
'FOLLOWING'=158
|
||||
'CUME_DIST'=159
|
||||
'DENSE_RANK'=160
|
||||
'LAG'=161
|
||||
'LAST_VALUE'=162
|
||||
'LEAD'=163
|
||||
'NTH_VALUE'=164
|
||||
'NTILE'=165
|
||||
'PERCENT_RANK'=166
|
||||
'RANK'=167
|
||||
'ROW_NUMBER'=168
|
||||
'GENERATED'=169
|
||||
'ALWAYS'=170
|
||||
'STORED'=171
|
||||
'TRUE'=172
|
||||
'FALSE'=173
|
||||
'WINDOW'=174
|
||||
'NULLS'=175
|
||||
'FIRST'=176
|
||||
'LAST'=177
|
||||
'FILTER'=178
|
||||
'GROUPS'=179
|
||||
'EXCLUDE'=180
|
||||
'TIES'=181
|
||||
'OTHERS'=182
|
||||
'DO'=183
|
||||
'NOTHING'=184
|
||||
@@ -0,0 +1,4 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<desc xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../_scripts/desc.xsd">
|
||||
<targets>CSharp;Cpp;Dart;Go;Java;JavaScript;PHP;Python3</targets>
|
||||
</desc>
|
||||
56
go_modules/libsql-client-go/sqliteparser/grammar/pom.xml
Normal file
56
go_modules/libsql-client-go/sqliteparser/grammar/pom.xml
Normal file
@@ -0,0 +1,56 @@
|
||||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<artifactId>sqlite</artifactId>
|
||||
<packaging>jar</packaging>
|
||||
<name>SQLite grammar</name>
|
||||
<parent>
|
||||
<groupId>org.antlr.grammars</groupId>
|
||||
<artifactId>sqlparent</artifactId>
|
||||
<version>1.0-SNAPSHOT</version>
|
||||
</parent>
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.antlr</groupId>
|
||||
<artifactId>antlr4-maven-plugin</artifactId>
|
||||
<version>${antlr.version}</version>
|
||||
<configuration>
|
||||
<sourceDirectory>${basedir}</sourceDirectory>
|
||||
<includes>
|
||||
<include>SQLiteLexer.g4</include>
|
||||
<include>SQLiteParser.g4</include>
|
||||
</includes>
|
||||
<visitor>true</visitor>
|
||||
<listener>true</listener>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<goals>
|
||||
<goal>antlr4</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>com.khubla.antlr</groupId>
|
||||
<artifactId>antlr4test-maven-plugin</artifactId>
|
||||
<version>${antlr4test-maven-plugin.version}</version>
|
||||
<configuration>
|
||||
<verbose>false</verbose>
|
||||
<showTree>false</showTree>
|
||||
<entryPoint>parse</entryPoint>
|
||||
<grammarName>SQLite</grammarName>
|
||||
<packageName></packageName>
|
||||
<exampleFiles>examples/</exampleFiles>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<goals>
|
||||
<goal>test</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</project>
|
||||
1137
go_modules/libsql-client-go/sqliteparser/sqlite_lexer.go
Normal file
1137
go_modules/libsql-client-go/sqliteparser/sqlite_lexer.go
Normal file
File diff suppressed because it is too large
Load Diff
31394
go_modules/libsql-client-go/sqliteparser/sqlite_parser.go
Normal file
31394
go_modules/libsql-client-go/sqliteparser/sqlite_parser.go
Normal file
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,708 @@
|
||||
// Code generated from SQLiteParser.g4 by ANTLR 4.13.1. DO NOT EDIT.
|
||||
|
||||
package sqliteparser // SQLiteParser
|
||||
import "github.com/antlr4-go/antlr/v4"
|
||||
|
||||
// BaseSQLiteParserListener is a complete listener for a parse tree produced by SQLiteParser.
|
||||
type BaseSQLiteParserListener struct{}
|
||||
|
||||
var _ SQLiteParserListener = &BaseSQLiteParserListener{}
|
||||
|
||||
// VisitTerminal is called when a terminal node is visited.
|
||||
func (s *BaseSQLiteParserListener) VisitTerminal(node antlr.TerminalNode) {}
|
||||
|
||||
// VisitErrorNode is called when an error node is visited.
|
||||
func (s *BaseSQLiteParserListener) VisitErrorNode(node antlr.ErrorNode) {}
|
||||
|
||||
// EnterEveryRule is called when any rule is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterEveryRule(ctx antlr.ParserRuleContext) {}
|
||||
|
||||
// ExitEveryRule is called when any rule is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitEveryRule(ctx antlr.ParserRuleContext) {}
|
||||
|
||||
// EnterParse is called when production parse is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterParse(ctx *ParseContext) {}
|
||||
|
||||
// ExitParse is called when production parse is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitParse(ctx *ParseContext) {}
|
||||
|
||||
// EnterSql_stmt_list is called when production sql_stmt_list is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterSql_stmt_list(ctx *Sql_stmt_listContext) {}
|
||||
|
||||
// ExitSql_stmt_list is called when production sql_stmt_list is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitSql_stmt_list(ctx *Sql_stmt_listContext) {}
|
||||
|
||||
// EnterSql_stmt is called when production sql_stmt is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterSql_stmt(ctx *Sql_stmtContext) {}
|
||||
|
||||
// ExitSql_stmt is called when production sql_stmt is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitSql_stmt(ctx *Sql_stmtContext) {}
|
||||
|
||||
// EnterAlter_table_stmt is called when production alter_table_stmt is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterAlter_table_stmt(ctx *Alter_table_stmtContext) {}
|
||||
|
||||
// ExitAlter_table_stmt is called when production alter_table_stmt is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitAlter_table_stmt(ctx *Alter_table_stmtContext) {}
|
||||
|
||||
// EnterAnalyze_stmt is called when production analyze_stmt is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterAnalyze_stmt(ctx *Analyze_stmtContext) {}
|
||||
|
||||
// ExitAnalyze_stmt is called when production analyze_stmt is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitAnalyze_stmt(ctx *Analyze_stmtContext) {}
|
||||
|
||||
// EnterAttach_stmt is called when production attach_stmt is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterAttach_stmt(ctx *Attach_stmtContext) {}
|
||||
|
||||
// ExitAttach_stmt is called when production attach_stmt is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitAttach_stmt(ctx *Attach_stmtContext) {}
|
||||
|
||||
// EnterBegin_stmt is called when production begin_stmt is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterBegin_stmt(ctx *Begin_stmtContext) {}
|
||||
|
||||
// ExitBegin_stmt is called when production begin_stmt is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitBegin_stmt(ctx *Begin_stmtContext) {}
|
||||
|
||||
// EnterCommit_stmt is called when production commit_stmt is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterCommit_stmt(ctx *Commit_stmtContext) {}
|
||||
|
||||
// ExitCommit_stmt is called when production commit_stmt is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitCommit_stmt(ctx *Commit_stmtContext) {}
|
||||
|
||||
// EnterRollback_stmt is called when production rollback_stmt is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterRollback_stmt(ctx *Rollback_stmtContext) {}
|
||||
|
||||
// ExitRollback_stmt is called when production rollback_stmt is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitRollback_stmt(ctx *Rollback_stmtContext) {}
|
||||
|
||||
// EnterSavepoint_stmt is called when production savepoint_stmt is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterSavepoint_stmt(ctx *Savepoint_stmtContext) {}
|
||||
|
||||
// ExitSavepoint_stmt is called when production savepoint_stmt is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitSavepoint_stmt(ctx *Savepoint_stmtContext) {}
|
||||
|
||||
// EnterRelease_stmt is called when production release_stmt is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterRelease_stmt(ctx *Release_stmtContext) {}
|
||||
|
||||
// ExitRelease_stmt is called when production release_stmt is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitRelease_stmt(ctx *Release_stmtContext) {}
|
||||
|
||||
// EnterCreate_index_stmt is called when production create_index_stmt is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterCreate_index_stmt(ctx *Create_index_stmtContext) {}
|
||||
|
||||
// ExitCreate_index_stmt is called when production create_index_stmt is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitCreate_index_stmt(ctx *Create_index_stmtContext) {}
|
||||
|
||||
// EnterIndexed_column is called when production indexed_column is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterIndexed_column(ctx *Indexed_columnContext) {}
|
||||
|
||||
// ExitIndexed_column is called when production indexed_column is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitIndexed_column(ctx *Indexed_columnContext) {}
|
||||
|
||||
// EnterCreate_table_stmt is called when production create_table_stmt is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterCreate_table_stmt(ctx *Create_table_stmtContext) {}
|
||||
|
||||
// ExitCreate_table_stmt is called when production create_table_stmt is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitCreate_table_stmt(ctx *Create_table_stmtContext) {}
|
||||
|
||||
// EnterColumn_def is called when production column_def is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterColumn_def(ctx *Column_defContext) {}
|
||||
|
||||
// ExitColumn_def is called when production column_def is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitColumn_def(ctx *Column_defContext) {}
|
||||
|
||||
// EnterType_name is called when production type_name is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterType_name(ctx *Type_nameContext) {}
|
||||
|
||||
// ExitType_name is called when production type_name is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitType_name(ctx *Type_nameContext) {}
|
||||
|
||||
// EnterColumn_constraint is called when production column_constraint is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterColumn_constraint(ctx *Column_constraintContext) {}
|
||||
|
||||
// ExitColumn_constraint is called when production column_constraint is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitColumn_constraint(ctx *Column_constraintContext) {}
|
||||
|
||||
// EnterSigned_number is called when production signed_number is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterSigned_number(ctx *Signed_numberContext) {}
|
||||
|
||||
// ExitSigned_number is called when production signed_number is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitSigned_number(ctx *Signed_numberContext) {}
|
||||
|
||||
// EnterTable_constraint is called when production table_constraint is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterTable_constraint(ctx *Table_constraintContext) {}
|
||||
|
||||
// ExitTable_constraint is called when production table_constraint is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitTable_constraint(ctx *Table_constraintContext) {}
|
||||
|
||||
// EnterForeign_key_clause is called when production foreign_key_clause is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterForeign_key_clause(ctx *Foreign_key_clauseContext) {}
|
||||
|
||||
// ExitForeign_key_clause is called when production foreign_key_clause is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitForeign_key_clause(ctx *Foreign_key_clauseContext) {}
|
||||
|
||||
// EnterConflict_clause is called when production conflict_clause is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterConflict_clause(ctx *Conflict_clauseContext) {}
|
||||
|
||||
// ExitConflict_clause is called when production conflict_clause is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitConflict_clause(ctx *Conflict_clauseContext) {}
|
||||
|
||||
// EnterCreate_trigger_stmt is called when production create_trigger_stmt is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterCreate_trigger_stmt(ctx *Create_trigger_stmtContext) {}
|
||||
|
||||
// ExitCreate_trigger_stmt is called when production create_trigger_stmt is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitCreate_trigger_stmt(ctx *Create_trigger_stmtContext) {}
|
||||
|
||||
// EnterCreate_view_stmt is called when production create_view_stmt is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterCreate_view_stmt(ctx *Create_view_stmtContext) {}
|
||||
|
||||
// ExitCreate_view_stmt is called when production create_view_stmt is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitCreate_view_stmt(ctx *Create_view_stmtContext) {}
|
||||
|
||||
// EnterCreate_virtual_table_stmt is called when production create_virtual_table_stmt is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterCreate_virtual_table_stmt(ctx *Create_virtual_table_stmtContext) {
|
||||
}
|
||||
|
||||
// ExitCreate_virtual_table_stmt is called when production create_virtual_table_stmt is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitCreate_virtual_table_stmt(ctx *Create_virtual_table_stmtContext) {
|
||||
}
|
||||
|
||||
// EnterWith_clause is called when production with_clause is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterWith_clause(ctx *With_clauseContext) {}
|
||||
|
||||
// ExitWith_clause is called when production with_clause is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitWith_clause(ctx *With_clauseContext) {}
|
||||
|
||||
// EnterCte_table_name is called when production cte_table_name is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterCte_table_name(ctx *Cte_table_nameContext) {}
|
||||
|
||||
// ExitCte_table_name is called when production cte_table_name is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitCte_table_name(ctx *Cte_table_nameContext) {}
|
||||
|
||||
// EnterRecursive_cte is called when production recursive_cte is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterRecursive_cte(ctx *Recursive_cteContext) {}
|
||||
|
||||
// ExitRecursive_cte is called when production recursive_cte is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitRecursive_cte(ctx *Recursive_cteContext) {}
|
||||
|
||||
// EnterCommon_table_expression is called when production common_table_expression is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterCommon_table_expression(ctx *Common_table_expressionContext) {
|
||||
}
|
||||
|
||||
// ExitCommon_table_expression is called when production common_table_expression is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitCommon_table_expression(ctx *Common_table_expressionContext) {}
|
||||
|
||||
// EnterDelete_stmt is called when production delete_stmt is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterDelete_stmt(ctx *Delete_stmtContext) {}
|
||||
|
||||
// ExitDelete_stmt is called when production delete_stmt is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitDelete_stmt(ctx *Delete_stmtContext) {}
|
||||
|
||||
// EnterDelete_stmt_limited is called when production delete_stmt_limited is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterDelete_stmt_limited(ctx *Delete_stmt_limitedContext) {}
|
||||
|
||||
// ExitDelete_stmt_limited is called when production delete_stmt_limited is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitDelete_stmt_limited(ctx *Delete_stmt_limitedContext) {}
|
||||
|
||||
// EnterDetach_stmt is called when production detach_stmt is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterDetach_stmt(ctx *Detach_stmtContext) {}
|
||||
|
||||
// ExitDetach_stmt is called when production detach_stmt is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitDetach_stmt(ctx *Detach_stmtContext) {}
|
||||
|
||||
// EnterDrop_stmt is called when production drop_stmt is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterDrop_stmt(ctx *Drop_stmtContext) {}
|
||||
|
||||
// ExitDrop_stmt is called when production drop_stmt is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitDrop_stmt(ctx *Drop_stmtContext) {}
|
||||
|
||||
// EnterExpr is called when production expr is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterExpr(ctx *ExprContext) {}
|
||||
|
||||
// ExitExpr is called when production expr is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitExpr(ctx *ExprContext) {}
|
||||
|
||||
// EnterRaise_function is called when production raise_function is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterRaise_function(ctx *Raise_functionContext) {}
|
||||
|
||||
// ExitRaise_function is called when production raise_function is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitRaise_function(ctx *Raise_functionContext) {}
|
||||
|
||||
// EnterLiteral_value is called when production literal_value is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterLiteral_value(ctx *Literal_valueContext) {}
|
||||
|
||||
// ExitLiteral_value is called when production literal_value is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitLiteral_value(ctx *Literal_valueContext) {}
|
||||
|
||||
// EnterValue_row is called when production value_row is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterValue_row(ctx *Value_rowContext) {}
|
||||
|
||||
// ExitValue_row is called when production value_row is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitValue_row(ctx *Value_rowContext) {}
|
||||
|
||||
// EnterValues_clause is called when production values_clause is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterValues_clause(ctx *Values_clauseContext) {}
|
||||
|
||||
// ExitValues_clause is called when production values_clause is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitValues_clause(ctx *Values_clauseContext) {}
|
||||
|
||||
// EnterInsert_stmt is called when production insert_stmt is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterInsert_stmt(ctx *Insert_stmtContext) {}
|
||||
|
||||
// ExitInsert_stmt is called when production insert_stmt is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitInsert_stmt(ctx *Insert_stmtContext) {}
|
||||
|
||||
// EnterReturning_clause is called when production returning_clause is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterReturning_clause(ctx *Returning_clauseContext) {}
|
||||
|
||||
// ExitReturning_clause is called when production returning_clause is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitReturning_clause(ctx *Returning_clauseContext) {}
|
||||
|
||||
// EnterUpsert_clause is called when production upsert_clause is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterUpsert_clause(ctx *Upsert_clauseContext) {}
|
||||
|
||||
// ExitUpsert_clause is called when production upsert_clause is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitUpsert_clause(ctx *Upsert_clauseContext) {}
|
||||
|
||||
// EnterPragma_stmt is called when production pragma_stmt is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterPragma_stmt(ctx *Pragma_stmtContext) {}
|
||||
|
||||
// ExitPragma_stmt is called when production pragma_stmt is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitPragma_stmt(ctx *Pragma_stmtContext) {}
|
||||
|
||||
// EnterPragma_value is called when production pragma_value is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterPragma_value(ctx *Pragma_valueContext) {}
|
||||
|
||||
// ExitPragma_value is called when production pragma_value is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitPragma_value(ctx *Pragma_valueContext) {}
|
||||
|
||||
// EnterReindex_stmt is called when production reindex_stmt is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterReindex_stmt(ctx *Reindex_stmtContext) {}
|
||||
|
||||
// ExitReindex_stmt is called when production reindex_stmt is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitReindex_stmt(ctx *Reindex_stmtContext) {}
|
||||
|
||||
// EnterSelect_stmt is called when production select_stmt is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterSelect_stmt(ctx *Select_stmtContext) {}
|
||||
|
||||
// ExitSelect_stmt is called when production select_stmt is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitSelect_stmt(ctx *Select_stmtContext) {}
|
||||
|
||||
// EnterJoin_clause is called when production join_clause is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterJoin_clause(ctx *Join_clauseContext) {}
|
||||
|
||||
// ExitJoin_clause is called when production join_clause is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitJoin_clause(ctx *Join_clauseContext) {}
|
||||
|
||||
// EnterSelect_core is called when production select_core is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterSelect_core(ctx *Select_coreContext) {}
|
||||
|
||||
// ExitSelect_core is called when production select_core is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitSelect_core(ctx *Select_coreContext) {}
|
||||
|
||||
// EnterFactored_select_stmt is called when production factored_select_stmt is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterFactored_select_stmt(ctx *Factored_select_stmtContext) {}
|
||||
|
||||
// ExitFactored_select_stmt is called when production factored_select_stmt is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitFactored_select_stmt(ctx *Factored_select_stmtContext) {}
|
||||
|
||||
// EnterSimple_select_stmt is called when production simple_select_stmt is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterSimple_select_stmt(ctx *Simple_select_stmtContext) {}
|
||||
|
||||
// ExitSimple_select_stmt is called when production simple_select_stmt is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitSimple_select_stmt(ctx *Simple_select_stmtContext) {}
|
||||
|
||||
// EnterCompound_select_stmt is called when production compound_select_stmt is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterCompound_select_stmt(ctx *Compound_select_stmtContext) {}
|
||||
|
||||
// ExitCompound_select_stmt is called when production compound_select_stmt is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitCompound_select_stmt(ctx *Compound_select_stmtContext) {}
|
||||
|
||||
// EnterTable_or_subquery is called when production table_or_subquery is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterTable_or_subquery(ctx *Table_or_subqueryContext) {}
|
||||
|
||||
// ExitTable_or_subquery is called when production table_or_subquery is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitTable_or_subquery(ctx *Table_or_subqueryContext) {}
|
||||
|
||||
// EnterResult_column is called when production result_column is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterResult_column(ctx *Result_columnContext) {}
|
||||
|
||||
// ExitResult_column is called when production result_column is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitResult_column(ctx *Result_columnContext) {}
|
||||
|
||||
// EnterJoin_operator is called when production join_operator is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterJoin_operator(ctx *Join_operatorContext) {}
|
||||
|
||||
// ExitJoin_operator is called when production join_operator is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitJoin_operator(ctx *Join_operatorContext) {}
|
||||
|
||||
// EnterJoin_constraint is called when production join_constraint is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterJoin_constraint(ctx *Join_constraintContext) {}
|
||||
|
||||
// ExitJoin_constraint is called when production join_constraint is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitJoin_constraint(ctx *Join_constraintContext) {}
|
||||
|
||||
// EnterCompound_operator is called when production compound_operator is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterCompound_operator(ctx *Compound_operatorContext) {}
|
||||
|
||||
// ExitCompound_operator is called when production compound_operator is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitCompound_operator(ctx *Compound_operatorContext) {}
|
||||
|
||||
// EnterUpdate_stmt is called when production update_stmt is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterUpdate_stmt(ctx *Update_stmtContext) {}
|
||||
|
||||
// ExitUpdate_stmt is called when production update_stmt is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitUpdate_stmt(ctx *Update_stmtContext) {}
|
||||
|
||||
// EnterColumn_name_list is called when production column_name_list is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterColumn_name_list(ctx *Column_name_listContext) {}
|
||||
|
||||
// ExitColumn_name_list is called when production column_name_list is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitColumn_name_list(ctx *Column_name_listContext) {}
|
||||
|
||||
// EnterUpdate_stmt_limited is called when production update_stmt_limited is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterUpdate_stmt_limited(ctx *Update_stmt_limitedContext) {}
|
||||
|
||||
// ExitUpdate_stmt_limited is called when production update_stmt_limited is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitUpdate_stmt_limited(ctx *Update_stmt_limitedContext) {}
|
||||
|
||||
// EnterQualified_table_name is called when production qualified_table_name is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterQualified_table_name(ctx *Qualified_table_nameContext) {}
|
||||
|
||||
// ExitQualified_table_name is called when production qualified_table_name is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitQualified_table_name(ctx *Qualified_table_nameContext) {}
|
||||
|
||||
// EnterVacuum_stmt is called when production vacuum_stmt is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterVacuum_stmt(ctx *Vacuum_stmtContext) {}
|
||||
|
||||
// ExitVacuum_stmt is called when production vacuum_stmt is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitVacuum_stmt(ctx *Vacuum_stmtContext) {}
|
||||
|
||||
// EnterFilter_clause is called when production filter_clause is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterFilter_clause(ctx *Filter_clauseContext) {}
|
||||
|
||||
// ExitFilter_clause is called when production filter_clause is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitFilter_clause(ctx *Filter_clauseContext) {}
|
||||
|
||||
// EnterWindow_defn is called when production window_defn is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterWindow_defn(ctx *Window_defnContext) {}
|
||||
|
||||
// ExitWindow_defn is called when production window_defn is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitWindow_defn(ctx *Window_defnContext) {}
|
||||
|
||||
// EnterOver_clause is called when production over_clause is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterOver_clause(ctx *Over_clauseContext) {}
|
||||
|
||||
// ExitOver_clause is called when production over_clause is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitOver_clause(ctx *Over_clauseContext) {}
|
||||
|
||||
// EnterFrame_spec is called when production frame_spec is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterFrame_spec(ctx *Frame_specContext) {}
|
||||
|
||||
// ExitFrame_spec is called when production frame_spec is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitFrame_spec(ctx *Frame_specContext) {}
|
||||
|
||||
// EnterFrame_clause is called when production frame_clause is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterFrame_clause(ctx *Frame_clauseContext) {}
|
||||
|
||||
// ExitFrame_clause is called when production frame_clause is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitFrame_clause(ctx *Frame_clauseContext) {}
|
||||
|
||||
// EnterSimple_function_invocation is called when production simple_function_invocation is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterSimple_function_invocation(ctx *Simple_function_invocationContext) {
|
||||
}
|
||||
|
||||
// ExitSimple_function_invocation is called when production simple_function_invocation is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitSimple_function_invocation(ctx *Simple_function_invocationContext) {
|
||||
}
|
||||
|
||||
// EnterAggregate_function_invocation is called when production aggregate_function_invocation is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterAggregate_function_invocation(ctx *Aggregate_function_invocationContext) {
|
||||
}
|
||||
|
||||
// ExitAggregate_function_invocation is called when production aggregate_function_invocation is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitAggregate_function_invocation(ctx *Aggregate_function_invocationContext) {
|
||||
}
|
||||
|
||||
// EnterWindow_function_invocation is called when production window_function_invocation is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterWindow_function_invocation(ctx *Window_function_invocationContext) {
|
||||
}
|
||||
|
||||
// ExitWindow_function_invocation is called when production window_function_invocation is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitWindow_function_invocation(ctx *Window_function_invocationContext) {
|
||||
}
|
||||
|
||||
// EnterCommon_table_stmt is called when production common_table_stmt is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterCommon_table_stmt(ctx *Common_table_stmtContext) {}
|
||||
|
||||
// ExitCommon_table_stmt is called when production common_table_stmt is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitCommon_table_stmt(ctx *Common_table_stmtContext) {}
|
||||
|
||||
// EnterOrder_by_stmt is called when production order_by_stmt is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterOrder_by_stmt(ctx *Order_by_stmtContext) {}
|
||||
|
||||
// ExitOrder_by_stmt is called when production order_by_stmt is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitOrder_by_stmt(ctx *Order_by_stmtContext) {}
|
||||
|
||||
// EnterLimit_stmt is called when production limit_stmt is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterLimit_stmt(ctx *Limit_stmtContext) {}
|
||||
|
||||
// ExitLimit_stmt is called when production limit_stmt is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitLimit_stmt(ctx *Limit_stmtContext) {}
|
||||
|
||||
// EnterOrdering_term is called when production ordering_term is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterOrdering_term(ctx *Ordering_termContext) {}
|
||||
|
||||
// ExitOrdering_term is called when production ordering_term is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitOrdering_term(ctx *Ordering_termContext) {}
|
||||
|
||||
// EnterAsc_desc is called when production asc_desc is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterAsc_desc(ctx *Asc_descContext) {}
|
||||
|
||||
// ExitAsc_desc is called when production asc_desc is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitAsc_desc(ctx *Asc_descContext) {}
|
||||
|
||||
// EnterFrame_left is called when production frame_left is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterFrame_left(ctx *Frame_leftContext) {}
|
||||
|
||||
// ExitFrame_left is called when production frame_left is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitFrame_left(ctx *Frame_leftContext) {}
|
||||
|
||||
// EnterFrame_right is called when production frame_right is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterFrame_right(ctx *Frame_rightContext) {}
|
||||
|
||||
// ExitFrame_right is called when production frame_right is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitFrame_right(ctx *Frame_rightContext) {}
|
||||
|
||||
// EnterFrame_single is called when production frame_single is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterFrame_single(ctx *Frame_singleContext) {}
|
||||
|
||||
// ExitFrame_single is called when production frame_single is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitFrame_single(ctx *Frame_singleContext) {}
|
||||
|
||||
// EnterWindow_function is called when production window_function is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterWindow_function(ctx *Window_functionContext) {}
|
||||
|
||||
// ExitWindow_function is called when production window_function is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitWindow_function(ctx *Window_functionContext) {}
|
||||
|
||||
// EnterOffset is called when production offset is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterOffset(ctx *OffsetContext) {}
|
||||
|
||||
// ExitOffset is called when production offset is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitOffset(ctx *OffsetContext) {}
|
||||
|
||||
// EnterDefault_value is called when production default_value is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterDefault_value(ctx *Default_valueContext) {}
|
||||
|
||||
// ExitDefault_value is called when production default_value is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitDefault_value(ctx *Default_valueContext) {}
|
||||
|
||||
// EnterPartition_by is called when production partition_by is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterPartition_by(ctx *Partition_byContext) {}
|
||||
|
||||
// ExitPartition_by is called when production partition_by is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitPartition_by(ctx *Partition_byContext) {}
|
||||
|
||||
// EnterOrder_by_expr is called when production order_by_expr is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterOrder_by_expr(ctx *Order_by_exprContext) {}
|
||||
|
||||
// ExitOrder_by_expr is called when production order_by_expr is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitOrder_by_expr(ctx *Order_by_exprContext) {}
|
||||
|
||||
// EnterOrder_by_expr_asc_desc is called when production order_by_expr_asc_desc is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterOrder_by_expr_asc_desc(ctx *Order_by_expr_asc_descContext) {}
|
||||
|
||||
// ExitOrder_by_expr_asc_desc is called when production order_by_expr_asc_desc is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitOrder_by_expr_asc_desc(ctx *Order_by_expr_asc_descContext) {}
|
||||
|
||||
// EnterExpr_asc_desc is called when production expr_asc_desc is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterExpr_asc_desc(ctx *Expr_asc_descContext) {}
|
||||
|
||||
// ExitExpr_asc_desc is called when production expr_asc_desc is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitExpr_asc_desc(ctx *Expr_asc_descContext) {}
|
||||
|
||||
// EnterInitial_select is called when production initial_select is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterInitial_select(ctx *Initial_selectContext) {}
|
||||
|
||||
// ExitInitial_select is called when production initial_select is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitInitial_select(ctx *Initial_selectContext) {}
|
||||
|
||||
// EnterRecursive_select is called when production recursive_select is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterRecursive_select(ctx *Recursive_selectContext) {}
|
||||
|
||||
// ExitRecursive_select is called when production recursive_select is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitRecursive_select(ctx *Recursive_selectContext) {}
|
||||
|
||||
// EnterUnary_operator is called when production unary_operator is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterUnary_operator(ctx *Unary_operatorContext) {}
|
||||
|
||||
// ExitUnary_operator is called when production unary_operator is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitUnary_operator(ctx *Unary_operatorContext) {}
|
||||
|
||||
// EnterError_message is called when production error_message is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterError_message(ctx *Error_messageContext) {}
|
||||
|
||||
// ExitError_message is called when production error_message is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitError_message(ctx *Error_messageContext) {}
|
||||
|
||||
// EnterModule_argument is called when production module_argument is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterModule_argument(ctx *Module_argumentContext) {}
|
||||
|
||||
// ExitModule_argument is called when production module_argument is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitModule_argument(ctx *Module_argumentContext) {}
|
||||
|
||||
// EnterColumn_alias is called when production column_alias is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterColumn_alias(ctx *Column_aliasContext) {}
|
||||
|
||||
// ExitColumn_alias is called when production column_alias is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitColumn_alias(ctx *Column_aliasContext) {}
|
||||
|
||||
// EnterKeyword is called when production keyword is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterKeyword(ctx *KeywordContext) {}
|
||||
|
||||
// ExitKeyword is called when production keyword is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitKeyword(ctx *KeywordContext) {}
|
||||
|
||||
// EnterName is called when production name is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterName(ctx *NameContext) {}
|
||||
|
||||
// ExitName is called when production name is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitName(ctx *NameContext) {}
|
||||
|
||||
// EnterFunction_name is called when production function_name is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterFunction_name(ctx *Function_nameContext) {}
|
||||
|
||||
// ExitFunction_name is called when production function_name is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitFunction_name(ctx *Function_nameContext) {}
|
||||
|
||||
// EnterSchema_name is called when production schema_name is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterSchema_name(ctx *Schema_nameContext) {}
|
||||
|
||||
// ExitSchema_name is called when production schema_name is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitSchema_name(ctx *Schema_nameContext) {}
|
||||
|
||||
// EnterTable_name is called when production table_name is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterTable_name(ctx *Table_nameContext) {}
|
||||
|
||||
// ExitTable_name is called when production table_name is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitTable_name(ctx *Table_nameContext) {}
|
||||
|
||||
// EnterTable_or_index_name is called when production table_or_index_name is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterTable_or_index_name(ctx *Table_or_index_nameContext) {}
|
||||
|
||||
// ExitTable_or_index_name is called when production table_or_index_name is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitTable_or_index_name(ctx *Table_or_index_nameContext) {}
|
||||
|
||||
// EnterColumn_name is called when production column_name is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterColumn_name(ctx *Column_nameContext) {}
|
||||
|
||||
// ExitColumn_name is called when production column_name is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitColumn_name(ctx *Column_nameContext) {}
|
||||
|
||||
// EnterCollation_name is called when production collation_name is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterCollation_name(ctx *Collation_nameContext) {}
|
||||
|
||||
// ExitCollation_name is called when production collation_name is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitCollation_name(ctx *Collation_nameContext) {}
|
||||
|
||||
// EnterForeign_table is called when production foreign_table is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterForeign_table(ctx *Foreign_tableContext) {}
|
||||
|
||||
// ExitForeign_table is called when production foreign_table is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitForeign_table(ctx *Foreign_tableContext) {}
|
||||
|
||||
// EnterIndex_name is called when production index_name is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterIndex_name(ctx *Index_nameContext) {}
|
||||
|
||||
// ExitIndex_name is called when production index_name is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitIndex_name(ctx *Index_nameContext) {}
|
||||
|
||||
// EnterTrigger_name is called when production trigger_name is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterTrigger_name(ctx *Trigger_nameContext) {}
|
||||
|
||||
// ExitTrigger_name is called when production trigger_name is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitTrigger_name(ctx *Trigger_nameContext) {}
|
||||
|
||||
// EnterView_name is called when production view_name is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterView_name(ctx *View_nameContext) {}
|
||||
|
||||
// ExitView_name is called when production view_name is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitView_name(ctx *View_nameContext) {}
|
||||
|
||||
// EnterModule_name is called when production module_name is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterModule_name(ctx *Module_nameContext) {}
|
||||
|
||||
// ExitModule_name is called when production module_name is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitModule_name(ctx *Module_nameContext) {}
|
||||
|
||||
// EnterPragma_name is called when production pragma_name is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterPragma_name(ctx *Pragma_nameContext) {}
|
||||
|
||||
// ExitPragma_name is called when production pragma_name is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitPragma_name(ctx *Pragma_nameContext) {}
|
||||
|
||||
// EnterSavepoint_name is called when production savepoint_name is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterSavepoint_name(ctx *Savepoint_nameContext) {}
|
||||
|
||||
// ExitSavepoint_name is called when production savepoint_name is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitSavepoint_name(ctx *Savepoint_nameContext) {}
|
||||
|
||||
// EnterTable_alias is called when production table_alias is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterTable_alias(ctx *Table_aliasContext) {}
|
||||
|
||||
// ExitTable_alias is called when production table_alias is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitTable_alias(ctx *Table_aliasContext) {}
|
||||
|
||||
// EnterTransaction_name is called when production transaction_name is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterTransaction_name(ctx *Transaction_nameContext) {}
|
||||
|
||||
// ExitTransaction_name is called when production transaction_name is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitTransaction_name(ctx *Transaction_nameContext) {}
|
||||
|
||||
// EnterWindow_name is called when production window_name is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterWindow_name(ctx *Window_nameContext) {}
|
||||
|
||||
// ExitWindow_name is called when production window_name is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitWindow_name(ctx *Window_nameContext) {}
|
||||
|
||||
// EnterAlias is called when production alias is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterAlias(ctx *AliasContext) {}
|
||||
|
||||
// ExitAlias is called when production alias is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitAlias(ctx *AliasContext) {}
|
||||
|
||||
// EnterFilename is called when production filename is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterFilename(ctx *FilenameContext) {}
|
||||
|
||||
// ExitFilename is called when production filename is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitFilename(ctx *FilenameContext) {}
|
||||
|
||||
// EnterBase_window_name is called when production base_window_name is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterBase_window_name(ctx *Base_window_nameContext) {}
|
||||
|
||||
// ExitBase_window_name is called when production base_window_name is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitBase_window_name(ctx *Base_window_nameContext) {}
|
||||
|
||||
// EnterSimple_func is called when production simple_func is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterSimple_func(ctx *Simple_funcContext) {}
|
||||
|
||||
// ExitSimple_func is called when production simple_func is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitSimple_func(ctx *Simple_funcContext) {}
|
||||
|
||||
// EnterAggregate_func is called when production aggregate_func is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterAggregate_func(ctx *Aggregate_funcContext) {}
|
||||
|
||||
// ExitAggregate_func is called when production aggregate_func is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitAggregate_func(ctx *Aggregate_funcContext) {}
|
||||
|
||||
// EnterTable_function_name is called when production table_function_name is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterTable_function_name(ctx *Table_function_nameContext) {}
|
||||
|
||||
// ExitTable_function_name is called when production table_function_name is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitTable_function_name(ctx *Table_function_nameContext) {}
|
||||
|
||||
// EnterAny_name is called when production any_name is entered.
|
||||
func (s *BaseSQLiteParserListener) EnterAny_name(ctx *Any_nameContext) {}
|
||||
|
||||
// ExitAny_name is called when production any_name is exited.
|
||||
func (s *BaseSQLiteParserListener) ExitAny_name(ctx *Any_nameContext) {}
|
||||
@@ -0,0 +1,687 @@
|
||||
// Code generated from SQLiteParser.g4 by ANTLR 4.13.1. DO NOT EDIT.
|
||||
|
||||
package sqliteparser // SQLiteParser
|
||||
import "github.com/antlr4-go/antlr/v4"
|
||||
|
||||
// SQLiteParserListener is a complete listener for a parse tree produced by SQLiteParser.
|
||||
type SQLiteParserListener interface {
|
||||
antlr.ParseTreeListener
|
||||
|
||||
// EnterParse is called when entering the parse production.
|
||||
EnterParse(c *ParseContext)
|
||||
|
||||
// EnterSql_stmt_list is called when entering the sql_stmt_list production.
|
||||
EnterSql_stmt_list(c *Sql_stmt_listContext)
|
||||
|
||||
// EnterSql_stmt is called when entering the sql_stmt production.
|
||||
EnterSql_stmt(c *Sql_stmtContext)
|
||||
|
||||
// EnterAlter_table_stmt is called when entering the alter_table_stmt production.
|
||||
EnterAlter_table_stmt(c *Alter_table_stmtContext)
|
||||
|
||||
// EnterAnalyze_stmt is called when entering the analyze_stmt production.
|
||||
EnterAnalyze_stmt(c *Analyze_stmtContext)
|
||||
|
||||
// EnterAttach_stmt is called when entering the attach_stmt production.
|
||||
EnterAttach_stmt(c *Attach_stmtContext)
|
||||
|
||||
// EnterBegin_stmt is called when entering the begin_stmt production.
|
||||
EnterBegin_stmt(c *Begin_stmtContext)
|
||||
|
||||
// EnterCommit_stmt is called when entering the commit_stmt production.
|
||||
EnterCommit_stmt(c *Commit_stmtContext)
|
||||
|
||||
// EnterRollback_stmt is called when entering the rollback_stmt production.
|
||||
EnterRollback_stmt(c *Rollback_stmtContext)
|
||||
|
||||
// EnterSavepoint_stmt is called when entering the savepoint_stmt production.
|
||||
EnterSavepoint_stmt(c *Savepoint_stmtContext)
|
||||
|
||||
// EnterRelease_stmt is called when entering the release_stmt production.
|
||||
EnterRelease_stmt(c *Release_stmtContext)
|
||||
|
||||
// EnterCreate_index_stmt is called when entering the create_index_stmt production.
|
||||
EnterCreate_index_stmt(c *Create_index_stmtContext)
|
||||
|
||||
// EnterIndexed_column is called when entering the indexed_column production.
|
||||
EnterIndexed_column(c *Indexed_columnContext)
|
||||
|
||||
// EnterCreate_table_stmt is called when entering the create_table_stmt production.
|
||||
EnterCreate_table_stmt(c *Create_table_stmtContext)
|
||||
|
||||
// EnterColumn_def is called when entering the column_def production.
|
||||
EnterColumn_def(c *Column_defContext)
|
||||
|
||||
// EnterType_name is called when entering the type_name production.
|
||||
EnterType_name(c *Type_nameContext)
|
||||
|
||||
// EnterColumn_constraint is called when entering the column_constraint production.
|
||||
EnterColumn_constraint(c *Column_constraintContext)
|
||||
|
||||
// EnterSigned_number is called when entering the signed_number production.
|
||||
EnterSigned_number(c *Signed_numberContext)
|
||||
|
||||
// EnterTable_constraint is called when entering the table_constraint production.
|
||||
EnterTable_constraint(c *Table_constraintContext)
|
||||
|
||||
// EnterForeign_key_clause is called when entering the foreign_key_clause production.
|
||||
EnterForeign_key_clause(c *Foreign_key_clauseContext)
|
||||
|
||||
// EnterConflict_clause is called when entering the conflict_clause production.
|
||||
EnterConflict_clause(c *Conflict_clauseContext)
|
||||
|
||||
// EnterCreate_trigger_stmt is called when entering the create_trigger_stmt production.
|
||||
EnterCreate_trigger_stmt(c *Create_trigger_stmtContext)
|
||||
|
||||
// EnterCreate_view_stmt is called when entering the create_view_stmt production.
|
||||
EnterCreate_view_stmt(c *Create_view_stmtContext)
|
||||
|
||||
// EnterCreate_virtual_table_stmt is called when entering the create_virtual_table_stmt production.
|
||||
EnterCreate_virtual_table_stmt(c *Create_virtual_table_stmtContext)
|
||||
|
||||
// EnterWith_clause is called when entering the with_clause production.
|
||||
EnterWith_clause(c *With_clauseContext)
|
||||
|
||||
// EnterCte_table_name is called when entering the cte_table_name production.
|
||||
EnterCte_table_name(c *Cte_table_nameContext)
|
||||
|
||||
// EnterRecursive_cte is called when entering the recursive_cte production.
|
||||
EnterRecursive_cte(c *Recursive_cteContext)
|
||||
|
||||
// EnterCommon_table_expression is called when entering the common_table_expression production.
|
||||
EnterCommon_table_expression(c *Common_table_expressionContext)
|
||||
|
||||
// EnterDelete_stmt is called when entering the delete_stmt production.
|
||||
EnterDelete_stmt(c *Delete_stmtContext)
|
||||
|
||||
// EnterDelete_stmt_limited is called when entering the delete_stmt_limited production.
|
||||
EnterDelete_stmt_limited(c *Delete_stmt_limitedContext)
|
||||
|
||||
// EnterDetach_stmt is called when entering the detach_stmt production.
|
||||
EnterDetach_stmt(c *Detach_stmtContext)
|
||||
|
||||
// EnterDrop_stmt is called when entering the drop_stmt production.
|
||||
EnterDrop_stmt(c *Drop_stmtContext)
|
||||
|
||||
// EnterExpr is called when entering the expr production.
|
||||
EnterExpr(c *ExprContext)
|
||||
|
||||
// EnterRaise_function is called when entering the raise_function production.
|
||||
EnterRaise_function(c *Raise_functionContext)
|
||||
|
||||
// EnterLiteral_value is called when entering the literal_value production.
|
||||
EnterLiteral_value(c *Literal_valueContext)
|
||||
|
||||
// EnterValue_row is called when entering the value_row production.
|
||||
EnterValue_row(c *Value_rowContext)
|
||||
|
||||
// EnterValues_clause is called when entering the values_clause production.
|
||||
EnterValues_clause(c *Values_clauseContext)
|
||||
|
||||
// EnterInsert_stmt is called when entering the insert_stmt production.
|
||||
EnterInsert_stmt(c *Insert_stmtContext)
|
||||
|
||||
// EnterReturning_clause is called when entering the returning_clause production.
|
||||
EnterReturning_clause(c *Returning_clauseContext)
|
||||
|
||||
// EnterUpsert_clause is called when entering the upsert_clause production.
|
||||
EnterUpsert_clause(c *Upsert_clauseContext)
|
||||
|
||||
// EnterPragma_stmt is called when entering the pragma_stmt production.
|
||||
EnterPragma_stmt(c *Pragma_stmtContext)
|
||||
|
||||
// EnterPragma_value is called when entering the pragma_value production.
|
||||
EnterPragma_value(c *Pragma_valueContext)
|
||||
|
||||
// EnterReindex_stmt is called when entering the reindex_stmt production.
|
||||
EnterReindex_stmt(c *Reindex_stmtContext)
|
||||
|
||||
// EnterSelect_stmt is called when entering the select_stmt production.
|
||||
EnterSelect_stmt(c *Select_stmtContext)
|
||||
|
||||
// EnterJoin_clause is called when entering the join_clause production.
|
||||
EnterJoin_clause(c *Join_clauseContext)
|
||||
|
||||
// EnterSelect_core is called when entering the select_core production.
|
||||
EnterSelect_core(c *Select_coreContext)
|
||||
|
||||
// EnterFactored_select_stmt is called when entering the factored_select_stmt production.
|
||||
EnterFactored_select_stmt(c *Factored_select_stmtContext)
|
||||
|
||||
// EnterSimple_select_stmt is called when entering the simple_select_stmt production.
|
||||
EnterSimple_select_stmt(c *Simple_select_stmtContext)
|
||||
|
||||
// EnterCompound_select_stmt is called when entering the compound_select_stmt production.
|
||||
EnterCompound_select_stmt(c *Compound_select_stmtContext)
|
||||
|
||||
// EnterTable_or_subquery is called when entering the table_or_subquery production.
|
||||
EnterTable_or_subquery(c *Table_or_subqueryContext)
|
||||
|
||||
// EnterResult_column is called when entering the result_column production.
|
||||
EnterResult_column(c *Result_columnContext)
|
||||
|
||||
// EnterJoin_operator is called when entering the join_operator production.
|
||||
EnterJoin_operator(c *Join_operatorContext)
|
||||
|
||||
// EnterJoin_constraint is called when entering the join_constraint production.
|
||||
EnterJoin_constraint(c *Join_constraintContext)
|
||||
|
||||
// EnterCompound_operator is called when entering the compound_operator production.
|
||||
EnterCompound_operator(c *Compound_operatorContext)
|
||||
|
||||
// EnterUpdate_stmt is called when entering the update_stmt production.
|
||||
EnterUpdate_stmt(c *Update_stmtContext)
|
||||
|
||||
// EnterColumn_name_list is called when entering the column_name_list production.
|
||||
EnterColumn_name_list(c *Column_name_listContext)
|
||||
|
||||
// EnterUpdate_stmt_limited is called when entering the update_stmt_limited production.
|
||||
EnterUpdate_stmt_limited(c *Update_stmt_limitedContext)
|
||||
|
||||
// EnterQualified_table_name is called when entering the qualified_table_name production.
|
||||
EnterQualified_table_name(c *Qualified_table_nameContext)
|
||||
|
||||
// EnterVacuum_stmt is called when entering the vacuum_stmt production.
|
||||
EnterVacuum_stmt(c *Vacuum_stmtContext)
|
||||
|
||||
// EnterFilter_clause is called when entering the filter_clause production.
|
||||
EnterFilter_clause(c *Filter_clauseContext)
|
||||
|
||||
// EnterWindow_defn is called when entering the window_defn production.
|
||||
EnterWindow_defn(c *Window_defnContext)
|
||||
|
||||
// EnterOver_clause is called when entering the over_clause production.
|
||||
EnterOver_clause(c *Over_clauseContext)
|
||||
|
||||
// EnterFrame_spec is called when entering the frame_spec production.
|
||||
EnterFrame_spec(c *Frame_specContext)
|
||||
|
||||
// EnterFrame_clause is called when entering the frame_clause production.
|
||||
EnterFrame_clause(c *Frame_clauseContext)
|
||||
|
||||
// EnterSimple_function_invocation is called when entering the simple_function_invocation production.
|
||||
EnterSimple_function_invocation(c *Simple_function_invocationContext)
|
||||
|
||||
// EnterAggregate_function_invocation is called when entering the aggregate_function_invocation production.
|
||||
EnterAggregate_function_invocation(c *Aggregate_function_invocationContext)
|
||||
|
||||
// EnterWindow_function_invocation is called when entering the window_function_invocation production.
|
||||
EnterWindow_function_invocation(c *Window_function_invocationContext)
|
||||
|
||||
// EnterCommon_table_stmt is called when entering the common_table_stmt production.
|
||||
EnterCommon_table_stmt(c *Common_table_stmtContext)
|
||||
|
||||
// EnterOrder_by_stmt is called when entering the order_by_stmt production.
|
||||
EnterOrder_by_stmt(c *Order_by_stmtContext)
|
||||
|
||||
// EnterLimit_stmt is called when entering the limit_stmt production.
|
||||
EnterLimit_stmt(c *Limit_stmtContext)
|
||||
|
||||
// EnterOrdering_term is called when entering the ordering_term production.
|
||||
EnterOrdering_term(c *Ordering_termContext)
|
||||
|
||||
// EnterAsc_desc is called when entering the asc_desc production.
|
||||
EnterAsc_desc(c *Asc_descContext)
|
||||
|
||||
// EnterFrame_left is called when entering the frame_left production.
|
||||
EnterFrame_left(c *Frame_leftContext)
|
||||
|
||||
// EnterFrame_right is called when entering the frame_right production.
|
||||
EnterFrame_right(c *Frame_rightContext)
|
||||
|
||||
// EnterFrame_single is called when entering the frame_single production.
|
||||
EnterFrame_single(c *Frame_singleContext)
|
||||
|
||||
// EnterWindow_function is called when entering the window_function production.
|
||||
EnterWindow_function(c *Window_functionContext)
|
||||
|
||||
// EnterOffset is called when entering the offset production.
|
||||
EnterOffset(c *OffsetContext)
|
||||
|
||||
// EnterDefault_value is called when entering the default_value production.
|
||||
EnterDefault_value(c *Default_valueContext)
|
||||
|
||||
// EnterPartition_by is called when entering the partition_by production.
|
||||
EnterPartition_by(c *Partition_byContext)
|
||||
|
||||
// EnterOrder_by_expr is called when entering the order_by_expr production.
|
||||
EnterOrder_by_expr(c *Order_by_exprContext)
|
||||
|
||||
// EnterOrder_by_expr_asc_desc is called when entering the order_by_expr_asc_desc production.
|
||||
EnterOrder_by_expr_asc_desc(c *Order_by_expr_asc_descContext)
|
||||
|
||||
// EnterExpr_asc_desc is called when entering the expr_asc_desc production.
|
||||
EnterExpr_asc_desc(c *Expr_asc_descContext)
|
||||
|
||||
// EnterInitial_select is called when entering the initial_select production.
|
||||
EnterInitial_select(c *Initial_selectContext)
|
||||
|
||||
// EnterRecursive_select is called when entering the recursive_select production.
|
||||
EnterRecursive_select(c *Recursive_selectContext)
|
||||
|
||||
// EnterUnary_operator is called when entering the unary_operator production.
|
||||
EnterUnary_operator(c *Unary_operatorContext)
|
||||
|
||||
// EnterError_message is called when entering the error_message production.
|
||||
EnterError_message(c *Error_messageContext)
|
||||
|
||||
// EnterModule_argument is called when entering the module_argument production.
|
||||
EnterModule_argument(c *Module_argumentContext)
|
||||
|
||||
// EnterColumn_alias is called when entering the column_alias production.
|
||||
EnterColumn_alias(c *Column_aliasContext)
|
||||
|
||||
// EnterKeyword is called when entering the keyword production.
|
||||
EnterKeyword(c *KeywordContext)
|
||||
|
||||
// EnterName is called when entering the name production.
|
||||
EnterName(c *NameContext)
|
||||
|
||||
// EnterFunction_name is called when entering the function_name production.
|
||||
EnterFunction_name(c *Function_nameContext)
|
||||
|
||||
// EnterSchema_name is called when entering the schema_name production.
|
||||
EnterSchema_name(c *Schema_nameContext)
|
||||
|
||||
// EnterTable_name is called when entering the table_name production.
|
||||
EnterTable_name(c *Table_nameContext)
|
||||
|
||||
// EnterTable_or_index_name is called when entering the table_or_index_name production.
|
||||
EnterTable_or_index_name(c *Table_or_index_nameContext)
|
||||
|
||||
// EnterColumn_name is called when entering the column_name production.
|
||||
EnterColumn_name(c *Column_nameContext)
|
||||
|
||||
// EnterCollation_name is called when entering the collation_name production.
|
||||
EnterCollation_name(c *Collation_nameContext)
|
||||
|
||||
// EnterForeign_table is called when entering the foreign_table production.
|
||||
EnterForeign_table(c *Foreign_tableContext)
|
||||
|
||||
// EnterIndex_name is called when entering the index_name production.
|
||||
EnterIndex_name(c *Index_nameContext)
|
||||
|
||||
// EnterTrigger_name is called when entering the trigger_name production.
|
||||
EnterTrigger_name(c *Trigger_nameContext)
|
||||
|
||||
// EnterView_name is called when entering the view_name production.
|
||||
EnterView_name(c *View_nameContext)
|
||||
|
||||
// EnterModule_name is called when entering the module_name production.
|
||||
EnterModule_name(c *Module_nameContext)
|
||||
|
||||
// EnterPragma_name is called when entering the pragma_name production.
|
||||
EnterPragma_name(c *Pragma_nameContext)
|
||||
|
||||
// EnterSavepoint_name is called when entering the savepoint_name production.
|
||||
EnterSavepoint_name(c *Savepoint_nameContext)
|
||||
|
||||
// EnterTable_alias is called when entering the table_alias production.
|
||||
EnterTable_alias(c *Table_aliasContext)
|
||||
|
||||
// EnterTransaction_name is called when entering the transaction_name production.
|
||||
EnterTransaction_name(c *Transaction_nameContext)
|
||||
|
||||
// EnterWindow_name is called when entering the window_name production.
|
||||
EnterWindow_name(c *Window_nameContext)
|
||||
|
||||
// EnterAlias is called when entering the alias production.
|
||||
EnterAlias(c *AliasContext)
|
||||
|
||||
// EnterFilename is called when entering the filename production.
|
||||
EnterFilename(c *FilenameContext)
|
||||
|
||||
// EnterBase_window_name is called when entering the base_window_name production.
|
||||
EnterBase_window_name(c *Base_window_nameContext)
|
||||
|
||||
// EnterSimple_func is called when entering the simple_func production.
|
||||
EnterSimple_func(c *Simple_funcContext)
|
||||
|
||||
// EnterAggregate_func is called when entering the aggregate_func production.
|
||||
EnterAggregate_func(c *Aggregate_funcContext)
|
||||
|
||||
// EnterTable_function_name is called when entering the table_function_name production.
|
||||
EnterTable_function_name(c *Table_function_nameContext)
|
||||
|
||||
// EnterAny_name is called when entering the any_name production.
|
||||
EnterAny_name(c *Any_nameContext)
|
||||
|
||||
// ExitParse is called when exiting the parse production.
|
||||
ExitParse(c *ParseContext)
|
||||
|
||||
// ExitSql_stmt_list is called when exiting the sql_stmt_list production.
|
||||
ExitSql_stmt_list(c *Sql_stmt_listContext)
|
||||
|
||||
// ExitSql_stmt is called when exiting the sql_stmt production.
|
||||
ExitSql_stmt(c *Sql_stmtContext)
|
||||
|
||||
// ExitAlter_table_stmt is called when exiting the alter_table_stmt production.
|
||||
ExitAlter_table_stmt(c *Alter_table_stmtContext)
|
||||
|
||||
// ExitAnalyze_stmt is called when exiting the analyze_stmt production.
|
||||
ExitAnalyze_stmt(c *Analyze_stmtContext)
|
||||
|
||||
// ExitAttach_stmt is called when exiting the attach_stmt production.
|
||||
ExitAttach_stmt(c *Attach_stmtContext)
|
||||
|
||||
// ExitBegin_stmt is called when exiting the begin_stmt production.
|
||||
ExitBegin_stmt(c *Begin_stmtContext)
|
||||
|
||||
// ExitCommit_stmt is called when exiting the commit_stmt production.
|
||||
ExitCommit_stmt(c *Commit_stmtContext)
|
||||
|
||||
// ExitRollback_stmt is called when exiting the rollback_stmt production.
|
||||
ExitRollback_stmt(c *Rollback_stmtContext)
|
||||
|
||||
// ExitSavepoint_stmt is called when exiting the savepoint_stmt production.
|
||||
ExitSavepoint_stmt(c *Savepoint_stmtContext)
|
||||
|
||||
// ExitRelease_stmt is called when exiting the release_stmt production.
|
||||
ExitRelease_stmt(c *Release_stmtContext)
|
||||
|
||||
// ExitCreate_index_stmt is called when exiting the create_index_stmt production.
|
||||
ExitCreate_index_stmt(c *Create_index_stmtContext)
|
||||
|
||||
// ExitIndexed_column is called when exiting the indexed_column production.
|
||||
ExitIndexed_column(c *Indexed_columnContext)
|
||||
|
||||
// ExitCreate_table_stmt is called when exiting the create_table_stmt production.
|
||||
ExitCreate_table_stmt(c *Create_table_stmtContext)
|
||||
|
||||
// ExitColumn_def is called when exiting the column_def production.
|
||||
ExitColumn_def(c *Column_defContext)
|
||||
|
||||
// ExitType_name is called when exiting the type_name production.
|
||||
ExitType_name(c *Type_nameContext)
|
||||
|
||||
// ExitColumn_constraint is called when exiting the column_constraint production.
|
||||
ExitColumn_constraint(c *Column_constraintContext)
|
||||
|
||||
// ExitSigned_number is called when exiting the signed_number production.
|
||||
ExitSigned_number(c *Signed_numberContext)
|
||||
|
||||
// ExitTable_constraint is called when exiting the table_constraint production.
|
||||
ExitTable_constraint(c *Table_constraintContext)
|
||||
|
||||
// ExitForeign_key_clause is called when exiting the foreign_key_clause production.
|
||||
ExitForeign_key_clause(c *Foreign_key_clauseContext)
|
||||
|
||||
// ExitConflict_clause is called when exiting the conflict_clause production.
|
||||
ExitConflict_clause(c *Conflict_clauseContext)
|
||||
|
||||
// ExitCreate_trigger_stmt is called when exiting the create_trigger_stmt production.
|
||||
ExitCreate_trigger_stmt(c *Create_trigger_stmtContext)
|
||||
|
||||
// ExitCreate_view_stmt is called when exiting the create_view_stmt production.
|
||||
ExitCreate_view_stmt(c *Create_view_stmtContext)
|
||||
|
||||
// ExitCreate_virtual_table_stmt is called when exiting the create_virtual_table_stmt production.
|
||||
ExitCreate_virtual_table_stmt(c *Create_virtual_table_stmtContext)
|
||||
|
||||
// ExitWith_clause is called when exiting the with_clause production.
|
||||
ExitWith_clause(c *With_clauseContext)
|
||||
|
||||
// ExitCte_table_name is called when exiting the cte_table_name production.
|
||||
ExitCte_table_name(c *Cte_table_nameContext)
|
||||
|
||||
// ExitRecursive_cte is called when exiting the recursive_cte production.
|
||||
ExitRecursive_cte(c *Recursive_cteContext)
|
||||
|
||||
// ExitCommon_table_expression is called when exiting the common_table_expression production.
|
||||
ExitCommon_table_expression(c *Common_table_expressionContext)
|
||||
|
||||
// ExitDelete_stmt is called when exiting the delete_stmt production.
|
||||
ExitDelete_stmt(c *Delete_stmtContext)
|
||||
|
||||
// ExitDelete_stmt_limited is called when exiting the delete_stmt_limited production.
|
||||
ExitDelete_stmt_limited(c *Delete_stmt_limitedContext)
|
||||
|
||||
// ExitDetach_stmt is called when exiting the detach_stmt production.
|
||||
ExitDetach_stmt(c *Detach_stmtContext)
|
||||
|
||||
// ExitDrop_stmt is called when exiting the drop_stmt production.
|
||||
ExitDrop_stmt(c *Drop_stmtContext)
|
||||
|
||||
// ExitExpr is called when exiting the expr production.
|
||||
ExitExpr(c *ExprContext)
|
||||
|
||||
// ExitRaise_function is called when exiting the raise_function production.
|
||||
ExitRaise_function(c *Raise_functionContext)
|
||||
|
||||
// ExitLiteral_value is called when exiting the literal_value production.
|
||||
ExitLiteral_value(c *Literal_valueContext)
|
||||
|
||||
// ExitValue_row is called when exiting the value_row production.
|
||||
ExitValue_row(c *Value_rowContext)
|
||||
|
||||
// ExitValues_clause is called when exiting the values_clause production.
|
||||
ExitValues_clause(c *Values_clauseContext)
|
||||
|
||||
// ExitInsert_stmt is called when exiting the insert_stmt production.
|
||||
ExitInsert_stmt(c *Insert_stmtContext)
|
||||
|
||||
// ExitReturning_clause is called when exiting the returning_clause production.
|
||||
ExitReturning_clause(c *Returning_clauseContext)
|
||||
|
||||
// ExitUpsert_clause is called when exiting the upsert_clause production.
|
||||
ExitUpsert_clause(c *Upsert_clauseContext)
|
||||
|
||||
// ExitPragma_stmt is called when exiting the pragma_stmt production.
|
||||
ExitPragma_stmt(c *Pragma_stmtContext)
|
||||
|
||||
// ExitPragma_value is called when exiting the pragma_value production.
|
||||
ExitPragma_value(c *Pragma_valueContext)
|
||||
|
||||
// ExitReindex_stmt is called when exiting the reindex_stmt production.
|
||||
ExitReindex_stmt(c *Reindex_stmtContext)
|
||||
|
||||
// ExitSelect_stmt is called when exiting the select_stmt production.
|
||||
ExitSelect_stmt(c *Select_stmtContext)
|
||||
|
||||
// ExitJoin_clause is called when exiting the join_clause production.
|
||||
ExitJoin_clause(c *Join_clauseContext)
|
||||
|
||||
// ExitSelect_core is called when exiting the select_core production.
|
||||
ExitSelect_core(c *Select_coreContext)
|
||||
|
||||
// ExitFactored_select_stmt is called when exiting the factored_select_stmt production.
|
||||
ExitFactored_select_stmt(c *Factored_select_stmtContext)
|
||||
|
||||
// ExitSimple_select_stmt is called when exiting the simple_select_stmt production.
|
||||
ExitSimple_select_stmt(c *Simple_select_stmtContext)
|
||||
|
||||
// ExitCompound_select_stmt is called when exiting the compound_select_stmt production.
|
||||
ExitCompound_select_stmt(c *Compound_select_stmtContext)
|
||||
|
||||
// ExitTable_or_subquery is called when exiting the table_or_subquery production.
|
||||
ExitTable_or_subquery(c *Table_or_subqueryContext)
|
||||
|
||||
// ExitResult_column is called when exiting the result_column production.
|
||||
ExitResult_column(c *Result_columnContext)
|
||||
|
||||
// ExitJoin_operator is called when exiting the join_operator production.
|
||||
ExitJoin_operator(c *Join_operatorContext)
|
||||
|
||||
// ExitJoin_constraint is called when exiting the join_constraint production.
|
||||
ExitJoin_constraint(c *Join_constraintContext)
|
||||
|
||||
// ExitCompound_operator is called when exiting the compound_operator production.
|
||||
ExitCompound_operator(c *Compound_operatorContext)
|
||||
|
||||
// ExitUpdate_stmt is called when exiting the update_stmt production.
|
||||
ExitUpdate_stmt(c *Update_stmtContext)
|
||||
|
||||
// ExitColumn_name_list is called when exiting the column_name_list production.
|
||||
ExitColumn_name_list(c *Column_name_listContext)
|
||||
|
||||
// ExitUpdate_stmt_limited is called when exiting the update_stmt_limited production.
|
||||
ExitUpdate_stmt_limited(c *Update_stmt_limitedContext)
|
||||
|
||||
// ExitQualified_table_name is called when exiting the qualified_table_name production.
|
||||
ExitQualified_table_name(c *Qualified_table_nameContext)
|
||||
|
||||
// ExitVacuum_stmt is called when exiting the vacuum_stmt production.
|
||||
ExitVacuum_stmt(c *Vacuum_stmtContext)
|
||||
|
||||
// ExitFilter_clause is called when exiting the filter_clause production.
|
||||
ExitFilter_clause(c *Filter_clauseContext)
|
||||
|
||||
// ExitWindow_defn is called when exiting the window_defn production.
|
||||
ExitWindow_defn(c *Window_defnContext)
|
||||
|
||||
// ExitOver_clause is called when exiting the over_clause production.
|
||||
ExitOver_clause(c *Over_clauseContext)
|
||||
|
||||
// ExitFrame_spec is called when exiting the frame_spec production.
|
||||
ExitFrame_spec(c *Frame_specContext)
|
||||
|
||||
// ExitFrame_clause is called when exiting the frame_clause production.
|
||||
ExitFrame_clause(c *Frame_clauseContext)
|
||||
|
||||
// ExitSimple_function_invocation is called when exiting the simple_function_invocation production.
|
||||
ExitSimple_function_invocation(c *Simple_function_invocationContext)
|
||||
|
||||
// ExitAggregate_function_invocation is called when exiting the aggregate_function_invocation production.
|
||||
ExitAggregate_function_invocation(c *Aggregate_function_invocationContext)
|
||||
|
||||
// ExitWindow_function_invocation is called when exiting the window_function_invocation production.
|
||||
ExitWindow_function_invocation(c *Window_function_invocationContext)
|
||||
|
||||
// ExitCommon_table_stmt is called when exiting the common_table_stmt production.
|
||||
ExitCommon_table_stmt(c *Common_table_stmtContext)
|
||||
|
||||
// ExitOrder_by_stmt is called when exiting the order_by_stmt production.
|
||||
ExitOrder_by_stmt(c *Order_by_stmtContext)
|
||||
|
||||
// ExitLimit_stmt is called when exiting the limit_stmt production.
|
||||
ExitLimit_stmt(c *Limit_stmtContext)
|
||||
|
||||
// ExitOrdering_term is called when exiting the ordering_term production.
|
||||
ExitOrdering_term(c *Ordering_termContext)
|
||||
|
||||
// ExitAsc_desc is called when exiting the asc_desc production.
|
||||
ExitAsc_desc(c *Asc_descContext)
|
||||
|
||||
// ExitFrame_left is called when exiting the frame_left production.
|
||||
ExitFrame_left(c *Frame_leftContext)
|
||||
|
||||
// ExitFrame_right is called when exiting the frame_right production.
|
||||
ExitFrame_right(c *Frame_rightContext)
|
||||
|
||||
// ExitFrame_single is called when exiting the frame_single production.
|
||||
ExitFrame_single(c *Frame_singleContext)
|
||||
|
||||
// ExitWindow_function is called when exiting the window_function production.
|
||||
ExitWindow_function(c *Window_functionContext)
|
||||
|
||||
// ExitOffset is called when exiting the offset production.
|
||||
ExitOffset(c *OffsetContext)
|
||||
|
||||
// ExitDefault_value is called when exiting the default_value production.
|
||||
ExitDefault_value(c *Default_valueContext)
|
||||
|
||||
// ExitPartition_by is called when exiting the partition_by production.
|
||||
ExitPartition_by(c *Partition_byContext)
|
||||
|
||||
// ExitOrder_by_expr is called when exiting the order_by_expr production.
|
||||
ExitOrder_by_expr(c *Order_by_exprContext)
|
||||
|
||||
// ExitOrder_by_expr_asc_desc is called when exiting the order_by_expr_asc_desc production.
|
||||
ExitOrder_by_expr_asc_desc(c *Order_by_expr_asc_descContext)
|
||||
|
||||
// ExitExpr_asc_desc is called when exiting the expr_asc_desc production.
|
||||
ExitExpr_asc_desc(c *Expr_asc_descContext)
|
||||
|
||||
// ExitInitial_select is called when exiting the initial_select production.
|
||||
ExitInitial_select(c *Initial_selectContext)
|
||||
|
||||
// ExitRecursive_select is called when exiting the recursive_select production.
|
||||
ExitRecursive_select(c *Recursive_selectContext)
|
||||
|
||||
// ExitUnary_operator is called when exiting the unary_operator production.
|
||||
ExitUnary_operator(c *Unary_operatorContext)
|
||||
|
||||
// ExitError_message is called when exiting the error_message production.
|
||||
ExitError_message(c *Error_messageContext)
|
||||
|
||||
// ExitModule_argument is called when exiting the module_argument production.
|
||||
ExitModule_argument(c *Module_argumentContext)
|
||||
|
||||
// ExitColumn_alias is called when exiting the column_alias production.
|
||||
ExitColumn_alias(c *Column_aliasContext)
|
||||
|
||||
// ExitKeyword is called when exiting the keyword production.
|
||||
ExitKeyword(c *KeywordContext)
|
||||
|
||||
// ExitName is called when exiting the name production.
|
||||
ExitName(c *NameContext)
|
||||
|
||||
// ExitFunction_name is called when exiting the function_name production.
|
||||
ExitFunction_name(c *Function_nameContext)
|
||||
|
||||
// ExitSchema_name is called when exiting the schema_name production.
|
||||
ExitSchema_name(c *Schema_nameContext)
|
||||
|
||||
// ExitTable_name is called when exiting the table_name production.
|
||||
ExitTable_name(c *Table_nameContext)
|
||||
|
||||
// ExitTable_or_index_name is called when exiting the table_or_index_name production.
|
||||
ExitTable_or_index_name(c *Table_or_index_nameContext)
|
||||
|
||||
// ExitColumn_name is called when exiting the column_name production.
|
||||
ExitColumn_name(c *Column_nameContext)
|
||||
|
||||
// ExitCollation_name is called when exiting the collation_name production.
|
||||
ExitCollation_name(c *Collation_nameContext)
|
||||
|
||||
// ExitForeign_table is called when exiting the foreign_table production.
|
||||
ExitForeign_table(c *Foreign_tableContext)
|
||||
|
||||
// ExitIndex_name is called when exiting the index_name production.
|
||||
ExitIndex_name(c *Index_nameContext)
|
||||
|
||||
// ExitTrigger_name is called when exiting the trigger_name production.
|
||||
ExitTrigger_name(c *Trigger_nameContext)
|
||||
|
||||
// ExitView_name is called when exiting the view_name production.
|
||||
ExitView_name(c *View_nameContext)
|
||||
|
||||
// ExitModule_name is called when exiting the module_name production.
|
||||
ExitModule_name(c *Module_nameContext)
|
||||
|
||||
// ExitPragma_name is called when exiting the pragma_name production.
|
||||
ExitPragma_name(c *Pragma_nameContext)
|
||||
|
||||
// ExitSavepoint_name is called when exiting the savepoint_name production.
|
||||
ExitSavepoint_name(c *Savepoint_nameContext)
|
||||
|
||||
// ExitTable_alias is called when exiting the table_alias production.
|
||||
ExitTable_alias(c *Table_aliasContext)
|
||||
|
||||
// ExitTransaction_name is called when exiting the transaction_name production.
|
||||
ExitTransaction_name(c *Transaction_nameContext)
|
||||
|
||||
// ExitWindow_name is called when exiting the window_name production.
|
||||
ExitWindow_name(c *Window_nameContext)
|
||||
|
||||
// ExitAlias is called when exiting the alias production.
|
||||
ExitAlias(c *AliasContext)
|
||||
|
||||
// ExitFilename is called when exiting the filename production.
|
||||
ExitFilename(c *FilenameContext)
|
||||
|
||||
// ExitBase_window_name is called when exiting the base_window_name production.
|
||||
ExitBase_window_name(c *Base_window_nameContext)
|
||||
|
||||
// ExitSimple_func is called when exiting the simple_func production.
|
||||
ExitSimple_func(c *Simple_funcContext)
|
||||
|
||||
// ExitAggregate_func is called when exiting the aggregate_func production.
|
||||
ExitAggregate_func(c *Aggregate_funcContext)
|
||||
|
||||
// ExitTable_function_name is called when exiting the table_function_name production.
|
||||
ExitTable_function_name(c *Table_function_nameContext)
|
||||
|
||||
// ExitAny_name is called when exiting the any_name production.
|
||||
ExitAny_name(c *Any_nameContext)
|
||||
}
|
||||
Reference in New Issue
Block a user