1 个不稳定版本
0.0.1 | 2023年7月21日 |
---|
#35 在 #dart
6MB
198K SLoC
tree-sitter-dart
这是一个为 Dart 编程语言编写的 tree-sitter 语法。我们尽可能遵守 Dart 语言规范。最初它是基于 tree-sitter Java 语法的一个副本,因此这里可能包含一些遗留项。为了简化语法树,许多项目使用了 tree-sitter 的“下划线”规则编写方法进行了内联。
入门
- 转到项目目录
- 运行
npm install
(首次) - 运行
npm run build_init
(首次)npm run build
(后续时间) - 运行
npm run test
测试单个高亮文件
- 运行
tree-sitter highlight test
测试单个测试文件
- 运行
tree-sitter test -f 'testcasefilter'
- 例如
tree-sitter test -f 'dart string literals'
显示样本文件解析的输出(例如,在调试高亮问题时)
- 运行
tree-sitter parse path/to/file.dart
lib.rs
:
此包为 tree-sitter 解析库提供 Dart 语言支持。
通常,您将使用 language 函数将此语言添加到 tree-sitter Parser,然后使用解析器解析一些代码
let code = "";
let mut parser = tree_sitter::Parser::new();
parser.set_language(tree_sitter_dart::language()).expect("Error loading dart grammar");
let tree = parser.parse(code, None).unwrap();
依赖项
~2.8–4MB
~72K SLoC