Bindgen.NET
1.0.0
Travail en cours
Téléchargez le package NuGet.
dotnet add package Bindgen.NET --version *-*Un ID d'exécution est nécessaire pour résoudre les dépendances natives de Clangsharp. Votre fichier de projet devrait ressembler à ceci.
< Project Sdk = " Microsoft.NET.Sdk " >
< PropertyGroup >
< OutputType >Exe</ OutputType >
< TargetFramework >net7.0</ TargetFramework >
<!-- This line is required -->
< RuntimeIdentifier Condition = " '$(RuntimeIdentifier)' == '' " >$(NETCoreSdkRuntimeIdentifier)</ RuntimeIdentifier >
</ PropertyGroup >
< ItemGroup >
< PackageReference Include = " Bindgen.NET " Version = " *-* " />
</ ItemGroup >
</ Project >Configurez vos options de liaison et générez!
Exemple:
using Bindgen . NET ;
BindingOptions exampleConfig = new ( )
{
Namespace = "ExampleNamespace" ,
Class = "ExampleClass" ,
DllImportPath = "libexample" ,
// Pass raw source code instead
// TreatInputFileAsRawSourceCode = true,
InputFile = "path/header.h" ,
OutputFile = "path/Header.cs" ,
IncludeDirectories = { "path/include" } ,
SystemIncludeDirectories = { "path/include" } ,
GenerateFunctionPointers = true ,
GenerateMacros = true ,
GenerateStructEqualityFunctions = true
} ;
string output = BindingGenerator . Generate ( exampleConfig ) ;Un exemple coulable peut être trouvé ici.
Un exemple de base de liaisons générées peut être trouvée ici.
Un exemple du monde réel de liaisons générées peut être vue dans le repo Flecs.net ici.