From 4e3bd82591291e4ef2615d3ca9ff37f1552ca86c Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 9 Nov 2025 13:07:41 +0000 Subject: [PATCH 1/2] Initial plan From 43b7979e731eb7c58114ce6acbc303da2b37bffd Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 9 Nov 2025 13:16:15 +0000 Subject: [PATCH 2/2] Update README with accurate language support and tree-sitter info Co-authored-by: mikkihugo <17744793+mikkihugo@users.noreply.github.com> --- README.md | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index e146b6f..8794097 100644 --- a/README.md +++ b/README.md @@ -96,13 +96,20 @@ fn calculate(x: i32, y: i32) -> i32 { | **TSX (TypeScript + JSX)** | ✅ Full | ✅ Full | Covers the `LANG::Tsx` parser for mixed TS/JSX files. | | **Java** | ✅ Full | ✅ Full | Weighted Methods per Class (WMC) implemented only for Java. | | **C/C++** | ✅ Full | ✅ Full | See the macro parsing note below for known limitations. | -| **Kotlin** | ✅ Full | ⚠️ Partial | LOC, exit counting, and WMC metrics are not yet implemented. | -| **Go** | ✅ Full | ⚠️ Partial | LOC, exit counting, and WMC metrics are not yet implemented. | -| **C#** | ✅ Full | ⚠️ Partial | LOC, exit counting, and WMC metrics are not yet implemented. | -| **Elixir** | ✅ Full | ⚠️ Partial | LOC, exit counting, and WMC metrics are not yet implemented. | -| **Erlang** | ✅ Full | ⚠️ Partial | LOC, exit counting, and WMC metrics are not yet implemented. | -| **Gleam** | ✅ Full | ⚠️ Partial | LOC, exit counting, and WMC metrics are not yet implemented. | -| **Lua** | ✅ Full | ⚠️ Partial | LOC, exit counting, and WMC metrics are not yet implemented. | +| **Kotlin** | ✅ Full | ⚠️ Partial | LOC and exit counting metrics not yet implemented. Cognitive complexity, cyclomatic complexity, and Halstead metrics are fully supported. | +| **Go** | ✅ Full | ⚠️ Partial | LOC and exit counting metrics not yet implemented. Cognitive complexity, cyclomatic complexity, and Halstead metrics are fully supported. | +| **C#** | ✅ Full | ⚠️ Partial | LOC and exit counting metrics not yet implemented. Cognitive complexity, cyclomatic complexity, and Halstead metrics are fully supported. | +| **Elixir** | ✅ Full | ⚠️ Partial | LOC and exit counting metrics not yet implemented. Cognitive complexity, cyclomatic complexity, and Halstead metrics are fully supported. | +| **Erlang** | ✅ Full | ⚠️ Partial | LOC and exit counting metrics not yet implemented. Cognitive complexity, cyclomatic complexity, and Halstead metrics are fully supported. | +| **Gleam** | ✅ Full | ⚠️ Partial | LOC and exit counting metrics not yet implemented. Cognitive complexity, cyclomatic complexity, and Halstead metrics are fully supported. | +| **Lua** | ✅ Full | ⚠️ Partial | LOC and exit counting metrics not yet implemented. Cognitive complexity, cyclomatic complexity, and Halstead metrics are fully supported. | + +> [!NOTE] +> ### Tree-sitter Integration +> This library uses Tree-sitter 0.25.10 with the `kind_id()` method for efficient node type checking. +> Language grammars are provided by their respective tree-sitter crates (e.g., `tree-sitter-rust`, +> `tree-sitter-elixir`) and are automatically compiled when building the library. No separate +> grammar files need to be shipped or maintained. > [!IMPORTANT] > ### Known C/C++ limitations