Releases: PicsArt/cppbind
Releases · PicsArt/cppbind
Version 1.0.3
Version 1.0.2
- Partial specializations support
- Ancestors, override, C++ include bug fix in Swift bindings
- Variadic template support
- Optimized processing, an option to process all sources as a single TU, file/dir variable inheritance fix, IR optimization, and iteration order update
- Python error reporting improvement
- Config file lookup performance improvement
- Sonar detected issues resolved
- Sonar integration for generated examples
- SEO
- Custom YAML configuration docs
- std::span support for Kotlin, Swift
- CI updated for C++ 20
- Profiling tool integration
- Descendant list calculation fix for templates
- Simplified
toString
method in generated Kotlin bindings - Renamed some helpers in Kotlin bindings
- Moved cxx to cxx_element
- Disabled line number generation for Python primitives examples
- Use /// in generated Swift comments
- Root vars availability in type converters not having API
- Jinja indentation fix
- Code snippets and converters refactoring(removed exposed converters instead providing type info to create converters according to needs, other refactorings)
- Added jinja filters to get type converter and type info
- Direct access to vars and cxx right from converter
std::optional
support- Fixed move return_value_policy for objects returned by value
- Renamed
make_type_converter
toget_type_converter
- Possibility to define python custom helpers module to use un jinja
- Added missing
using namespace ...
for Kotlin and Swift bindings - Possibility to control overridden via API
- Expose type instead of just type name
- Moved include definition to converters
- Improved jinja error reporting
- Updated libclang version
- Removed dummy converters
- Separated context creation from actions
- Fixed
src_exclude_glob
bug when include dir is a relative dir - Updated on exposed variables documentation
- Documentation restructuring
- Possibility to specify template instance via
template_instance
variable - Documentation for jinja filters and tests
- Documentation for std types
- Variable definitions docs update
- Documentation on exposed vars
- Memory management documentation
- Add missing CursorKinds for C++20 feature in libclang wrapper
- Support reference and pointer for the types marked as shared_ref: True and inherited from
std::enable_shared_from_this
Version 1.0.1
CppBind is a software development tool that automates language bindings generation between C++ and other languages. It works by annotating C++ code to indicate parts desired to expose to all supported target languages. The current version of the tool supports bindings with Swift, Kotlin, and Python, while support for new languages can be added relatively easily.