Builder API to register classes, functions, properties, signals
- Dominant language
- Rust
- Stars
- 5.2k
- Forks
- 312
- Avg merge
- 12h 59m
- Merged PRs (30d)
- 9
Description
Functionality that is currently available through proc-macros should ideally be exposed in a programmatic builder API, too.
Some challenges:
* The proc-macros combined with the plugin system detect very fine-grained customization, e.g. every single method in `GodotExt`.
* This would have to be manually annotated in a builder, possibly using static type information (generic arguments).
* Some of the traits and functions generated by proc-macros are internal.
* The builder API could be more high-level and stable.
* Functions are rather verbose to register through builders, with generic-tuples. Think about ways to provide a simple interface.
* In GDNative, this was done via `Method` trait, which is very flexible and general, but required full implementation for every single type. This might serve as a basis, with more higher-level concretizations.
Contributor guide
Assessment
This issue has not been assessed yet.