Python Code Complexity Metrics
Python package for calculating code complexity metrics of the target source code.
Description
With the help of this package, you can calculate the following code complexity metrics for your given source code as an input to it:
| Level | Metric | Variants | |
|---|---|---|---|
| methods | FOUT | Number of method calls (fan out) | avg, max, total |
| MLOC | Method lines of code | avg, max, total | |
| NBD | Nested block depth | avg, max, total | |
| PAR | Number of parameters | avg, max, total | |
| VG | McCabe cyclomatic complexity | avg, max, total | |
| classes | NOF | Number of fields | avg, max, total |
| NOM | Number of methods | avg, max, total | |
| NSF | Number of static fields | avg, max, total | |
| NSM | Number of static methods | avg, max, total | |
| files | ACD | Number of anonymous class declarations | value |
| NOI | Number of interfaces | value | |
| NOT | Number of classes | value | |
| TLOC | Total lines of code | value |
Getting Started
Support
Currently, the following source code languages is supported:
- Java
- Python
- JavaScript
Dependencies
- Python 3
- Pip Package Manager
Installing
pip install pyccmetrics
Examples
- TBC
Authors
License
This project is licensed under the MIT License - see the LICENSE file for details
Acknowledgments & References
Inspired by the work of Thomas Zimmermann:
T. Zimmermann, R. Premraj and A. Zeller, "Predicting Defects for Eclipse," Third International Workshop on Predictor Models in Software Engineering (PROMISE'07: ICSE Workshops 2007), 2007, pp. 9-9, doi: 10.1109/PROMISE.2007.10. Click for more info.
Release files for pyccmetrics 0.1.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pyccmetrics-0.1.2.tar.gz | 59.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pyccmetrics-0.1.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 119.4 kB
Release files / pyccmetrics-0.1.2.tar.gz
| Download URL | pyccmetrics-0.1.2.tar.gz |
|---|---|
| Size | 59.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
8cfa76edaf44601d5b57d8b71287e57e3770cd5faab4939cdf7f4cd2820378c2
|
|
BLAKE2b-256 checksum How to use checksums |
a2e0ad53bf253a0033f5f1c9cbe2c05639ee1c92eaecfb52d635c4ecdb23d585
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.1 CPython/3.10.8
|
Release files / pyccmetrics-0.1.2-py3-none-any.whl
| Download URL | pyccmetrics-0.1.2-py3-none-any.whl |
|---|---|
| Size | 59.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c04c8598a48ba8194632e33a510ff8f1dae5092c303f76ef827e9311647a9772
|
|
BLAKE2b-256 checksum How to use checksums |
192b56b561739392c3f7b7970c96558d27b0e636652e0ba06f46d4d0684e2f10
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.1 CPython/3.10.8
|