big-code-analysis
本書には英語版もあります。
big-code-analysis is a Rust library and command line tool (bca) that computes maintainability metrics from source code in many programming languages. It parses with tree-sitter, an incremental parsing library with a grammar per language, so it needs no compiler or language runtime.
This book is task-oriented: metric definitions, the command reference, CI recipes, and guides for the Rust crate and the Python bindings. The source code is on GitHub, and issues and feature requests go to the issue tracker.
対応プラットフォーム
big-code-analysis runs on Linux, macOS, and Windows. The GitHub releases page carries prebuilt binaries for all three.
API ドキュメント
The complete Rustdoc reference for the crate (every public type, trait, and function, including the feature-gated vcs module) lives on docs.rs, generated straight from the source.
For task-oriented guides on embedding the crate (quick start, in-memory analysis, walking FuncSpace results, and error handling), see Using as a Library.
For the PyO3 bindings (pip install big-code-analysis, batch processing, flat-record iteration, SARIF output, and async patterns), see Python Bindings.
ライセンス
-
The vendored grammar crates (
tree-sitter-ccomment,tree-sitter-mozcpp,tree-sitter-mozjs,tree-sitter-preproc,tree-sitter-tcl) are released under the MIT license. -
big-code-analysis, big-code-analysis-ast, big-code-analysis-cli, big-code-analysis-web, and big-code-analysis-py are released under the Mozilla Public License v2.0.