Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Newby Question: Could I use your project to build a C# interface for https://github.com/infiniflow #538

Open
acrigney opened this issue Apr 20, 2024 · 1 comment

Comments

@acrigney
Copy link

Sorry guys dumb question but it looks like I could use your framework to build a C# interface for https://github.com/infiniflow.
Your project is a work in progress? And infiniflow is as well. But this looks like a good match?

Best Regards,
Alistair

@tannergooding
Copy link
Member

Your project is a work in progress?

The project itself is pretty stable and used by several production quality dependencies. It gets updates when Clang itself gets updates (about every 6mo) and when there is an ask for a new ffeature.

but it looks like I could use your framework to build a C# interface for https://github.com/infiniflow.

I'm not familiar with that project in particular, but ClangSharp supports generating 1-to-1 blittable P/Invoke bindings to many types of C (and a smaller subset of C++) headers. It's known to work well with libraries like Windows SDK ( D3D9, D3D10, D3D11, D3D12, D2D1, DWrite, Win32, Gdiplus, WIC, XAudio2, etc), Vulkan, Xlib, Xcb, Wayland, PulseAudio, and much more.

So provided your project has a generally stable C ABI, it should be possible to generate bindings for it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants