ocornut / ocornut/imgui_test_engine
C bindings to imgui_test_engine
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 629
- Forks
- 83
- PR merge metrics
- No merged PRs in 30d
Description
Hey there, many thanks for your work ❤ I just wanted to let you know that I recently wrote a generator to create C bindings for the test engine: https://github.com/JuliaImGui/cimgui_test_engine
It's inspired by (and is meant to be used with) cimgui. Since this is yet another C bindings generator floating around I feel I should explain why I created a new project instead of contributing to cimgui or dear_bindings. I actually made 2-3 separate attempts to modify dear_bindings to work with the test engine but I gave up each time because I really struggled to grok the dear_bindings architecture and add support for just parsing the test engine headers, let alone generate bindings. Since I'm not familiar with Lua I didn't even attempt to modify cimgui's parser, and I eventually decided that it would be less work to write my own generator using libclang to parse the headers and use its AST. And that worked out really well, almost all of the code in the generator script is dedicated to generating C bindings rather than doing any manual parsing.
The bindings are used in the latest version of ImGuiTestEngine.jl so I'm vaguely confident that they work, but of course if you or others have bug reports/suggestions I would be happy to have them :)
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing the linked cimgui_test_engine generator and its use in ImGuiTestEngine.jl. The issue names no repository files or tests and requests no specific change, so a maintainer would need to define the desired integration and acceptance criteria before work can be considered done.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c, cpp
- Domain
- api, testing
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100