Skip to main content

PYB11Generator is a code generation tool which generates pybind11 code for binding C++ to Python. Documentation is available at https://pyb11generator.readthedocs.io/

Project description

PYB11Generator

PYB11Generator is a python based code generator that creates pybind11 code for binding C++ libraries as extensions in Python. PYB11Generator parses input that is very close to writing the desired interface in native python, turning this into the corresponding pybind11 C++ code.

Note, since PYB11Generator blindly generates C++ pybind11 code, it is essential to understand the pybind11 package itself as well! In other words, be sure to read and understand the pybind11 documentation before trying to go too far with PYB11Generator. The purpose of PYB11Generator is to reduce the burden of writing and maintaining redundant code when working with pybind11 (such as the trampoline classes), and provide a natural syntax for those already familiar with writing interfaces in Python. However, since the generated pybind11 code produced by PYB11Generator is what is actually compiled by a C++ compiler to create the corresponding python package, any errors reported by the compiler will refer to this generated code, and require understanding pybind11 itself to properly interpret.

Documentation

PYB11Generator is documented at readthedocs.

Note the source for this documentation is embedded in the PYB11Generator repository under docs/.

Contributions

Although a great deal of the functionality of pybind11 is available via PYB11Generator, there are certainly missing pieces and improvements that can be made. Contributions are welcome, and should be provided as pull requests to the main repository. Note all contributions must be provided under the same license for distribution (in this case the BSD license).

License

PYB11Generator is released under the BSD license.

LLNL-CODE-767799

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyb11generator-2026.5.0.tar.gz (966.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pyb11generator-2026.5.0-py3-none-any.whl (32.3 kB view details)

Uploaded Python 3

File details

Details for the file pyb11generator-2026.5.0.tar.gz.

File metadata

  • Download URL: pyb11generator-2026.5.0.tar.gz
  • Upload date:
  • Size: 966.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.2

File hashes

Hashes for pyb11generator-2026.5.0.tar.gz
Algorithm Hash digest
SHA256 aedb6c0603f26bb5884ae5ad8946ff57b0cec94e64f3c9e8d05e1f7311f71187
MD5 f90affd82cb9a51c352b0c31522ab101
BLAKE2b-256 ed35e45f334bb7b18fddf6c77859f84a51546949338009a6edda939efaff43e2

See more details on using hashes here.

File details

Details for the file pyb11generator-2026.5.0-py3-none-any.whl.

File metadata

File hashes

Hashes for pyb11generator-2026.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d924e897eee7593bde0b1e039741f92c72d2bdfbde5c8b847ed1b3de7c41907b
MD5 c059923851c9e629e55533c2e3243ca8
BLAKE2b-256 33ba889447a235fbd300eb1cdbcfb7913cafe455bc4f1aade232d9184e325dfa

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page