This commit is contained in:
wagslane
2024-03-07 09:48:38 -07:00
parent 2b337f9f0f
commit 86874e2f9e
171 changed files with 63081 additions and 7300 deletions

File diff suppressed because one or more lines are too long

View 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

File diff suppressed because one or more lines are too long

View 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

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,708 @@
// Code generated from SQLiteParser.g4 by ANTLR 4.12.0. DO NOT EDIT.
package sqliteparser // SQLiteParser
import "github.com/antlr/antlr4/runtime/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) {}

View File

@@ -0,0 +1,687 @@
// Code generated from SQLiteParser.g4 by ANTLR 4.12.0. DO NOT EDIT.
package sqliteparser // SQLiteParser
import "github.com/antlr/antlr4/runtime/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)
}

View File

@@ -0,0 +1,117 @@
package sqliteparserutils
import (
"github.com/antlr/antlr4/runtime/Go/antlr/v4"
"github.com/libsql/sqlite-antlr4-parser/sqliteparser"
)
// TODO: Shell test begin transaction on shell
type SplitStatementExtraInfo struct {
IncompleteCreateTriggerStatement bool
IncompleteMultilineComment bool
LastTokenType int
}
func SplitStatement(statement string) (stmts []string, extraInfo SplitStatementExtraInfo) {
tokenStream := createTokenStream(statement)
stmtIntervals := make([]*antlr.Interval, 0)
currentIntervalStart := -1
insideCreateTriggerStmt := false
insideMultilineComment := false
var previousToken antlr.Token
var currentToken antlr.Token
for currentToken = tokenStream.LT(1); currentToken.GetTokenType() != antlr.TokenEOF; currentToken = tokenStream.LT(1) {
// We break loop here because we're sure multiline comment didn't finished, otherwise lexer would have just ignored
// it
if atIncompleteMultilineCommentStart(tokenStream) {
insideMultilineComment = true
break
}
if currentIntervalStart == -1 {
if currentToken.GetTokenType() == sqliteparser.SQLiteLexerSCOL {
previousToken = currentToken
tokenStream.Consume()
continue
}
currentIntervalStart = currentToken.GetTokenIndex()
if atCreateTriggerStart(tokenStream) {
insideCreateTriggerStmt = true
previousToken = currentToken
tokenStream.Consume()
continue
}
}
if insideCreateTriggerStmt {
if currentToken.GetTokenType() == sqliteparser.SQLiteLexerEND_ {
insideCreateTriggerStmt = false
}
} else if currentToken.GetTokenType() == sqliteparser.SQLiteLexerSCOL {
stmtIntervals = append(stmtIntervals, antlr.NewInterval(currentIntervalStart, previousToken.GetTokenIndex()))
currentIntervalStart = -1
}
previousToken = currentToken
tokenStream.Consume()
}
if currentIntervalStart != -1 && previousToken != nil {
stmtIntervals = append(stmtIntervals, antlr.NewInterval(currentIntervalStart, previousToken.GetTokenIndex()))
}
stmts = make([]string, 0)
for _, stmtInterval := range stmtIntervals {
stmts = append(stmts, tokenStream.GetTextFromInterval(stmtInterval))
}
lastTokenType := antlr.TokenInvalidType
if previousToken != nil {
lastTokenType = previousToken.GetTokenType()
}
return stmts, SplitStatementExtraInfo{IncompleteCreateTriggerStatement: insideCreateTriggerStmt, IncompleteMultilineComment: insideMultilineComment, LastTokenType: lastTokenType}
}
func atCreateTriggerStart(tokenStream antlr.TokenStream) bool {
if tokenStream.LT(1).GetTokenType() != sqliteparser.SQLiteLexerCREATE_ {
return false
}
if tokenStream.LT(2).GetTokenType() == sqliteparser.SQLiteLexerTRIGGER_ {
return true
}
if tokenStream.LT(2).GetTokenType() == sqliteparser.SQLiteLexerTEMP_ || tokenStream.LT(2).GetTokenType() == sqliteparser.SQLiteLexerTEMPORARY_ &&
tokenStream.LT(3).GetTokenType() == sqliteparser.SQLiteLexerTRIGGER_ {
return true
}
return false
}
// Note: Only starts for incomplete multiline comments will be detected cause lexer automatically ignores complete
// multiline comments
func atIncompleteMultilineCommentStart(tokenStream antlr.TokenStream) bool {
if tokenStream.LT(1).GetTokenType() != sqliteparser.SQLiteLexerDIV {
return false
}
if tokenStream.LT(2).GetTokenType() == sqliteparser.SQLiteLexerSTAR {
return true
}
return false
}
func createTokenStream(statement string) *antlr.CommonTokenStream {
statementStream := antlr.NewInputStream(statement)
lexer := sqliteparser.NewSQLiteLexer(statementStream)
return antlr.NewCommonTokenStream(lexer, 0)
}