앞전에 공유한 GitHub 링크는 소스코드 품질이 생각보다 떨어져서 삭제 했습니다. 대신, Microsoft의 ClangSharp을 소개합니다.
microsoft/ClangSharp: Clang bindings for .NET and Mono written in C# (github.com)
ClangSharp은 C#에 기록된 Clang 바인딩을 제공합니다. 바인딩은 ClangSharpPInvokeGenerator에 의해 생성이 되고요, 관련해서 다음을 살펴볼 수 있습니다.
P/Invoke 생성기는 현재 여러 프로젝트에서 사용됩니다.
- microsoft/clangsharp - ClangSharp is self-hosting
- microsoft/llvmsharp - Bindings over libLLVM
- microsoft/win32metadata - Bindings over the Windows SDK meant for downstream use by projects such as CsWin32, RsWin32, etc
- terrafx/terrafx.interop.windows - Bindings for D3D10, D3D11, D3D12, D2D1, DWrite, WIC, User32, and more in a single NuGet
- terrafx/terrafx.interop.vulkan - Bindings for Vulkan
- terrafx/terrafx.interop.xlib - Bindings for Xlib