Skip to content

Thank you for writing this #12

@GavinRay97

Description

@GavinRay97

Hello! 👋

I have been following this repo for quite some time and figured I would leave a few words of thanks.
Just wanted to drop a note and say that I think the approach you have taken here is brilliant.

It's innovative/unique and solves many of the problems found in other binding generators:

  • Many tools are based on libclang, rather than libTooling, so lack full AST and type access
  • If they are based on libTooling, that means the generator code is C++, which also means it can't be rapidly developed (due to edit-compile lifecycle) or tweaked by the end user, without installing the whole dependency toolchain
    • The one way of getting around this would be to use something like cling (https://github.com/root-project/cling) which allows to use C++ as an interpreted/JIT compiled language. I haven't seen this though.
  • The codegen API used here is based on clean, decorator rule-based patterns where you can succinctly declare a rule using the underlying libTooling AST node access and then how it should be converted
  • You have written a C-to-C++ binding generator, which haven't run across before (yet provides the easiest interop for languages)

Really amazing stuff!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions