Devana
Devana is a python tool that make it easy to parsing, format, transform and generate C++ (or C) code.
This tool uses libclang to parse the code. Fundamental problems, bugs and missing features of libclang are fixed in
Devann's internal code.
Please note that Devana focuses on the header-level code e.g. class and functions definitions, templates resolving,
typedefs and includes. Control statements, arithmetics operations etc. (pure body of functions) are supported as access
to raw string field "body". It is planned to introduce more control over this type of code in future versions.
Important: Devana is still under development. At the moment, parsing and basic code generation is available
(almost full coverage of development plans). Please check roadmap.
Installation
Devana is published on PyPI and can be installed from there:
pip install -U devana
If you wish to install Devana for development purposes, refer to the contributors guide.
How to start
You can find the complete guide in this section of the documentation.
Demo applications are located in project repository inside demo folder.
Documentation
Documentation is available from GitHub Pages.
Contributing
Please check contributing guide for take more details about contributing this project.
For now, the most wanted help is bugreports, bugfix, writing test and parser features completion. You can write e-mail
to me directly with question about help.
Testing
Continuous testing is GitHub Actions. For information on running tests locally, refer to the contributors guide.
Roadmap
A detailed list of missing functionalities and planned features can be found in the documentation.
Acknowledgments
For providing a very good development environment within Free License Programs for Open Source.
Metadata
Release files for devana 2.4.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| devana-2.4.0.tar.gz | 1.7 MB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| devana-2.4.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 4.3 MB
Release files / devana-2.4.0.tar.gz
| Download URL | devana-2.4.0.tar.gz |
|---|---|
| Size | 1.7 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d61f2d891aaba6410796fbf02ccf1b725215dc92b34176f3505a5184ed1481e0
|
|
BLAKE2b-256 checksum How to use checksums |
06e484d082725383d2718bab4587b111069ea9b1bced6d4c4c163d4cbf589a28
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Release files / devana-2.4.0-py3-none-any.whl
| Download URL | devana-2.4.0-py3-none-any.whl |
|---|---|
| Size | 2.6 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
78946243d8dcdb2dbdb3aa287f4fcf37f406086b34397cb6f4c24c1985fe6c73
|
|
BLAKE2b-256 checksum How to use checksums |
5f6f610a6db132a5a4fc9f52f07090dc989414ba970645efaac6a8aa5d962d9d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Security for devana 2.4.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.