We are in the process of refactoring the raylib-wrapper utility, which reads the JSON raylib-api generated from raylib-parser and outputs the raylib Nim module. The goal is to make the code more modular and extensible to allow generating Nim wrappers for other raylib projects as well. This issue will track progress for the refactor and related tasks.
Tasks:
[x] Split logic: Separate the preprocessing of the API (converting C types to Nim, applying transformations to names of functions/enums/objects) from the logic responsible for generating the final output.
[x] Refactor output generation: The second part of the code that generates the final Nim output has been rewritten for better cleanliness and extensibility.
[x] Rewrite preprocessing: Refactor the part that handles the API preprocessing, making it modular and easier to maintain.
[x] Add support for other raylib projects: Extend the wrapper generator to support Nim wrappers for additional raylib-based projects.
[x] Documentation: Document the refactoring and how to extend the tooling, allowing others to contribute to wrapper generation.
Additional Notes:
The code should be easy to extend with other raylib projects.
Clear documentation will help maintain long-term utility and ensure others can contribute easily.
We are in the process of refactoring the raylib-wrapper utility, which reads the JSON raylib-api generated from raylib-parser and outputs the raylib Nim module. The goal is to make the code more modular and extensible to allow generating Nim wrappers for other raylib projects as well. This issue will track progress for the refactor and related tasks.
Tasks:
Additional Notes: