#kotlin #incremental #parser #cargo-toml

tree-sitter-kotlin

Tree-sitter解析库的Kotlin语法

12个版本

0.3.8 2024年8月3日
0.3.7 2024年7月29日
0.3.6 2024年5月7日
0.3.5 2024年3月13日
0.2.8 2021年9月20日

34文本编辑器 中排名

Download history 1021/week @ 2024-04-26 1488/week @ 2024-05-03 1429/week @ 2024-05-10 1093/week @ 2024-05-17 1077/week @ 2024-05-24 1064/week @ 2024-05-31 1030/week @ 2024-06-07 843/week @ 2024-06-14 1130/week @ 2024-06-21 1059/week @ 2024-06-28 1125/week @ 2024-07-05 1029/week @ 2024-07-12 815/week @ 2024-07-19 1091/week @ 2024-07-26 1358/week @ 2024-08-02 819/week @ 2024-08-09

4,188 每月下载次数
用于 9 个crate(8个直接使用)

MIT 许可证

24MB
680K SLoC

C 679K SLoC // 0.0% comments JavaScript 896 SLoC // 0.1% comments Scheme 294 SLoC // 0.1% comments Rust 37 SLoC // 0.3% comments

Tree-sitter的Kotlin语法

此crate为tree-sitter解析库提供Kotlin语法。要使用此crate,将其添加到您的[dependencies]部分

tree-sitter = "0.22"
tree-sitter-kotlin = "0.3.8"

通常,您将使用language函数将此语法添加到tree-sitter的Parser中,然后使用解析器解析一些代码

let code = r#"
  data class Point(
    val x: Int,
    val y: Int
  )
"#;
let mut parser = Parser::new();
parser.set_language(&tree_sitter_kotlin::language()).expect("Error loading Kotlin grammar");
let parsed = parser.parse(code, None);

lib.rs:

此crate为tree-sitter解析库提供Kotlin语言支持。

通常,您将使用language函数将此语言添加到tree-sitter的Parser中,然后使用解析器解析一些代码

let code = "";
let mut parser = tree_sitter::Parser::new();
parser.set_language(&tree_sitter_kotlin::language()).expect("Error loading kotlin grammar");
let tree = parser.parse(code, None).unwrap();

依赖项

~2.7–4MB
~71K SLoC