oxisqlite-sqlite3-parser 0.2.0

SQL parser (as understood by SQLite)
Documentation
static KEYWORDS: ::phf::Map<&'static UncasedStr, TokenType> = 
::phf::Map {
    key: 12913932095322966823,
    disps: &[
        (0, 0),
        (2, 1),
        (0, 41),
        (0, 44),
        (0, 4),
        (0, 135),
        (0, 3),
        (0, 42),
        (5, 49),
        (1, 94),
        (6, 122),
        (3, 104),
        (1, 105),
        (0, 0),
        (6, 83),
        (63, 83),
        (0, 49),
        (2, 9),
        (1, 133),
        (1, 9),
        (0, 123),
        (0, 0),
        (0, 0),
        (94, 48),
        (0, 41),
        (9, 76),
        (0, 1),
        (0, 56),
        (0, 68),
        (7, 99),
    ],
    entries: &[
        (UncasedStr::new("NOT"), TokenType::TK_NOT),
        (UncasedStr::new("FULL"), TokenType::TK_JOIN_KW),
        (UncasedStr::new("FIRST"), TokenType::TK_FIRST),
        (UncasedStr::new("RETURNING"), TokenType::TK_RETURNING),
        (UncasedStr::new("UNION"), TokenType::TK_UNION),
        (UncasedStr::new("INTO"), TokenType::TK_INTO),
        (UncasedStr::new("SET"), TokenType::TK_SET),
        (UncasedStr::new("TEMPORARY"), TokenType::TK_TEMP),
        (UncasedStr::new("FROM"), TokenType::TK_FROM),
        (UncasedStr::new("NOTNULL"), TokenType::TK_NOTNULL),
        (UncasedStr::new("PRAGMA"), TokenType::TK_PRAGMA),
        (UncasedStr::new("COLLATE"), TokenType::TK_COLLATE),
        (UncasedStr::new("COMMIT"), TokenType::TK_COMMIT),
        (UncasedStr::new("ROWS"), TokenType::TK_ROWS),
        (UncasedStr::new("GROUP"), TokenType::TK_GROUP),
        (UncasedStr::new("IN"), TokenType::TK_IN),
        (UncasedStr::new("CURRENT_DATE"), TokenType::TK_CTIME_KW),
        (UncasedStr::new("TRIGGER"), TokenType::TK_TRIGGER),
        (UncasedStr::new("RECURSIVE"), TokenType::TK_RECURSIVE),
        (UncasedStr::new("VACUUM"), TokenType::TK_VACUUM),
        (UncasedStr::new("VIRTUAL"), TokenType::TK_VIRTUAL),
        (UncasedStr::new("LEFT"), TokenType::TK_JOIN_KW),
        (UncasedStr::new("ALTER"), TokenType::TK_ALTER),
        (UncasedStr::new("NOTHING"), TokenType::TK_NOTHING),
        (UncasedStr::new("LIMIT"), TokenType::TK_LIMIT),
        (UncasedStr::new("INDEXED"), TokenType::TK_INDEXED),
        (UncasedStr::new("INDEX"), TokenType::TK_INDEX),
        (UncasedStr::new("RIGHT"), TokenType::TK_JOIN_KW),
        (UncasedStr::new("CURRENT_TIME"), TokenType::TK_CTIME_KW),
        (UncasedStr::new("KEY"), TokenType::TK_KEY),
        (UncasedStr::new("FOR"), TokenType::TK_FOR),
        (UncasedStr::new("NATURAL"), TokenType::TK_JOIN_KW),
        (UncasedStr::new("EXPLAIN"), TokenType::TK_EXPLAIN),
        (UncasedStr::new("ACTION"), TokenType::TK_ACTION),
        (UncasedStr::new("INTERSECT"), TokenType::TK_INTERSECT),
        (UncasedStr::new("IMMEDIATE"), TokenType::TK_IMMEDIATE),
        (UncasedStr::new("WITHOUT"), TokenType::TK_WITHOUT),
        (UncasedStr::new("THEN"), TokenType::TK_THEN),
        (UncasedStr::new("INNER"), TokenType::TK_JOIN_KW),
        (UncasedStr::new("OTHERS"), TokenType::TK_OTHERS),
        (UncasedStr::new("WHERE"), TokenType::TK_WHERE),
        (UncasedStr::new("EXCEPT"), TokenType::TK_EXCEPT),
        (UncasedStr::new("WITH"), TokenType::TK_WITH),
        (UncasedStr::new("NO"), TokenType::TK_NO),
        (UncasedStr::new("PRECEDING"), TokenType::TK_PRECEDING),
        (UncasedStr::new("FOLLOWING"), TokenType::TK_FOLLOWING),
        (UncasedStr::new("DISTINCT"), TokenType::TK_DISTINCT),
        (UncasedStr::new("SAVEPOINT"), TokenType::TK_SAVEPOINT),
        (UncasedStr::new("GROUPS"), TokenType::TK_GROUPS),
        (UncasedStr::new("RELEASE"), TokenType::TK_RELEASE),
        (UncasedStr::new("COLUMN"), TokenType::TK_COLUMNKW),
        (UncasedStr::new("OVER"), TokenType::TK_OVER),
        (UncasedStr::new("GENERATED"), TokenType::TK_GENERATED),
        (UncasedStr::new("BETWEEN"), TokenType::TK_BETWEEN),
        (UncasedStr::new("INSERT"), TokenType::TK_INSERT),
        (UncasedStr::new("TABLE"), TokenType::TK_TABLE),
        (UncasedStr::new("AFTER"), TokenType::TK_AFTER),
        (UncasedStr::new("ESCAPE"), TokenType::TK_ESCAPE),
        (UncasedStr::new("TIES"), TokenType::TK_TIES),
        (UncasedStr::new("GLOB"), TokenType::TK_LIKE_KW),
        (UncasedStr::new("INITIALLY"), TokenType::TK_INITIALLY),
        (UncasedStr::new("ASC"), TokenType::TK_ASC),
        (UncasedStr::new("WINDOW"), TokenType::TK_WINDOW),
        (UncasedStr::new("RAISE"), TokenType::TK_RAISE),
        (UncasedStr::new("HAVING"), TokenType::TK_HAVING),
        (UncasedStr::new("BEFORE"), TokenType::TK_BEFORE),
        (UncasedStr::new("CASE"), TokenType::TK_CASE),
        (UncasedStr::new("DATABASE"), TokenType::TK_DATABASE),
        (UncasedStr::new("NULLS"), TokenType::TK_NULLS),
        (UncasedStr::new("UPDATE"), TokenType::TK_UPDATE),
        (UncasedStr::new("REPLACE"), TokenType::TK_REPLACE),
        (UncasedStr::new("UNBOUNDED"), TokenType::TK_UNBOUNDED),
        (UncasedStr::new("DESC"), TokenType::TK_DESC),
        (UncasedStr::new("IGNORE"), TokenType::TK_IGNORE),
        (UncasedStr::new("EXCLUSIVE"), TokenType::TK_EXCLUSIVE),
        (UncasedStr::new("SELECT"), TokenType::TK_SELECT),
        (UncasedStr::new("AUTOINCREMENT"), TokenType::TK_AUTOINCR),
        (UncasedStr::new("DEFAULT"), TokenType::TK_DEFAULT),
        (UncasedStr::new("REGEXP"), TokenType::TK_LIKE_KW),
        (UncasedStr::new("BEGIN"), TokenType::TK_BEGIN),
        (UncasedStr::new("PLAN"), TokenType::TK_PLAN),
        (UncasedStr::new("BY"), TokenType::TK_BY),
        (UncasedStr::new("OUTER"), TokenType::TK_JOIN_KW),
        (UncasedStr::new("ANALYZE"), TokenType::TK_ANALYZE),
        (UncasedStr::new("AS"), TokenType::TK_AS),
        (UncasedStr::new("DO"), TokenType::TK_DO),
        (UncasedStr::new("DETACH"), TokenType::TK_DETACH),
        (UncasedStr::new("ADD"), TokenType::TK_ADD),
        (UncasedStr::new("EXCLUDE"), TokenType::TK_EXCLUDE),
        (UncasedStr::new("ATTACH"), TokenType::TK_ATTACH),
        (UncasedStr::new("ALL"), TokenType::TK_ALL),
        (UncasedStr::new("TO"), TokenType::TK_TO),
        (UncasedStr::new("ON"), TokenType::TK_ON),
        (UncasedStr::new("TRANSACTION"), TokenType::TK_TRANSACTION),
        (UncasedStr::new("FAIL"), TokenType::TK_FAIL),
        (UncasedStr::new("RENAME"), TokenType::TK_RENAME),
        (UncasedStr::new("EXISTS"), TokenType::TK_EXISTS),
        (UncasedStr::new("REINDEX"), TokenType::TK_REINDEX),
        (UncasedStr::new("ABORT"), TokenType::TK_ABORT),
        (UncasedStr::new("CASCADE"), TokenType::TK_CASCADE),
        (UncasedStr::new("DEFERRED"), TokenType::TK_DEFERRED),
        (UncasedStr::new("CONSTRAINT"), TokenType::TK_CONSTRAINT),
        (UncasedStr::new("DROP"), TokenType::TK_DROP),
        (UncasedStr::new("CHECK"), TokenType::TK_CHECK),
        (UncasedStr::new("OFFSET"), TokenType::TK_OFFSET),
        (UncasedStr::new("CURRENT_TIMESTAMP"), TokenType::TK_CTIME_KW),
        (UncasedStr::new("RANGE"), TokenType::TK_RANGE),
        (UncasedStr::new("CURRENT"), TokenType::TK_CURRENT),
        (UncasedStr::new("WHEN"), TokenType::TK_WHEN),
        (UncasedStr::new("ALWAYS"), TokenType::TK_ALWAYS),
        (UncasedStr::new("ROW"), TokenType::TK_ROW),
        (UncasedStr::new("REFERENCES"), TokenType::TK_REFERENCES),
        (UncasedStr::new("CAST"), TokenType::TK_CAST),
        (UncasedStr::new("LAST"), TokenType::TK_LAST),
        (UncasedStr::new("IF"), TokenType::TK_IF),
        (UncasedStr::new("EACH"), TokenType::TK_EACH),
        (UncasedStr::new("AND"), TokenType::TK_AND),
        (UncasedStr::new("PRIMARY"), TokenType::TK_PRIMARY),
        (UncasedStr::new("PARTITION"), TokenType::TK_PARTITION),
        (UncasedStr::new("FILTER"), TokenType::TK_FILTER),
        (UncasedStr::new("JOIN"), TokenType::TK_JOIN),
        (UncasedStr::new("INSTEAD"), TokenType::TK_INSTEAD),
        (UncasedStr::new("CREATE"), TokenType::TK_CREATE),
        (UncasedStr::new("DELETE"), TokenType::TK_DELETE),
        (UncasedStr::new("UNIQUE"), TokenType::TK_UNIQUE),
        (UncasedStr::new("OF"), TokenType::TK_OF),
        (UncasedStr::new("OR"), TokenType::TK_OR),
        (UncasedStr::new("NULL"), TokenType::TK_NULL),
        (UncasedStr::new("DEFERRABLE"), TokenType::TK_DEFERRABLE),
        (UncasedStr::new("TEMP"), TokenType::TK_TEMP),
        (UncasedStr::new("RESTRICT"), TokenType::TK_RESTRICT),
        (UncasedStr::new("ORDER"), TokenType::TK_ORDER),
        (UncasedStr::new("USING"), TokenType::TK_USING),
        (UncasedStr::new("LIKE"), TokenType::TK_LIKE_KW),
        (UncasedStr::new("ISNULL"), TokenType::TK_ISNULL),
        (UncasedStr::new("MATERIALIZED"), TokenType::TK_MATERIALIZED),
        (UncasedStr::new("VALUES"), TokenType::TK_VALUES),
        (UncasedStr::new("FOREIGN"), TokenType::TK_FOREIGN),
        (UncasedStr::new("VIEW"), TokenType::TK_VIEW),
        (UncasedStr::new("END"), TokenType::TK_END),
        (UncasedStr::new("CROSS"), TokenType::TK_JOIN_KW),
        (UncasedStr::new("CONFLICT"), TokenType::TK_CONFLICT),
        (UncasedStr::new("QUERY"), TokenType::TK_QUERY),
        (UncasedStr::new("MATCH"), TokenType::TK_MATCH),
        (UncasedStr::new("ROLLBACK"), TokenType::TK_ROLLBACK),
        (UncasedStr::new("ELSE"), TokenType::TK_ELSE),
        (UncasedStr::new("IS"), TokenType::TK_IS),
    ],
};