CppSharp is a tool and set of libraries which facilitates the usage of native C/C++ code with the .NET ecosystem.
It consumes C/C++ header and library files and generates the necessary glue code to surface the native API as a managed API. Such an API can be used to consume an existing native library in your managed code or add managed scripting support to a native codebase.
The supported target languages at present are C# and C++/CLI.
It can also be used as a library to parse native code into a syntax tree with a rich declaration and type information model.
NuGet Packages | Continuous Integration |
---|---|
Mirrors the Clang's C/C++ AST and type system classes in C# APIs.
Check out Clang's AST introduction docs for more details about its architecture.
Provides APIs for parsing of C/C++ source code into a syntax tree.
Generates the glue binding code from a syntax tree of the native code.
Please see the following resources for more information:
Feel free to open up issues on GitHub for any problems you find.
If you need commercial support feel free to open a discussion or issue for discussion.
CppSharp is used by the following projects:
Please feel free to send us a pull request adding your own projects to the list above.