#sql #parser #incremental

tree-sitter-sql

tree-sitter 解析库的 SQL 语法

1 个不稳定版本

0.0.2 2021 年 6 月 5 日
0.0.1 2021 年 6 月 5 日

#454 in 文本编辑器

MIT 许可证

360KB
12K SLoC

C 11K SLoC JavaScript 338 SLoC // 0.0% comments Scheme 43 SLoC Rust 31 SLoC // 0.5% comments

Node.js CI

tree-sitter 的 SQL 语法

此项目最初专注于 PostgreSQL 风格的 SQL

开发

描述语法的文件是 grammar.js

每次语法文件更改后,需要通过调用 npm run gen 运行代码生成

npm test 命令自动执行代码生成

测试文件位于 test/corpus

此处 是关于测试文件语法的文档

运行测试

npm install --also=dev
npm test

调试

  • npm run parse <file.sql> 输出语法树
  • npm run extract-error <file.sql> 显示第一行错误

依赖项

~2.8–4MB
~72K SLoC