big-code-analysis

big-code-analysis is a Rust library to analyze and extract information from source codes written in many different programming languages. It is based on a parser generator tool and an incremental parsing library called Tree Sitter.

You can find the source code of this software on GitHub, while issues and feature requests can be posted on the respective GitHub Issue Tracker.

Supported platforms

big-code-analysis can run on the most common platforms: Linux, macOS, and Windows.

On our GitHub Release Page you can find the Linux and Windows binaries already compiled and packed for you.

API docs

If you prefer to use big-code-analysis as a crate, you can find the API docs generated by Rustdoc here.

For task-oriented guides on embedding the crate — quick start, in-memory analysis, walking FuncSpace results, and error handling — see the Using as a Library section.

For the PyO3 bindings — pip install big-code-analysis, batch processing, flat-record iteration, SARIF output, and async patterns — see the Python Bindings section.

License

  • Mozilla-defined grammars are released under the MIT license.

  • big-code-analysis, big-code-analysis-cli and big-code-analysis-web are released under the Mozilla Public License v2.0.