Browse Source

Add ILibrary.GenerateCode as a custom code generation callback.

pull/1543/head
Joao Matos 5 years ago committed by João Matos
parent
commit
598604e8f8
  1. 4
      src/CLI/Generator.cs
  2. 2
      src/Generator/Driver.cs
  3. 6
      src/Generator/Library.cs

4
src/CLI/Generator.cs

@ -174,6 +174,10 @@ namespace CppSharp @@ -174,6 +174,10 @@ namespace CppSharp
driver.Context.TranslationUnitPasses.AddPass(new MarshalPrimitivePointersAsRefTypePass());
}
public void GenerateCode(Driver driver, List<GeneratorOutput> outputs)
{
}
public void Preprocess(Driver driver, ASTContext ctx)
{
}

2
src/Generator/Driver.cs

@ -486,6 +486,8 @@ namespace CppSharp @@ -486,6 +486,8 @@ namespace CppSharp
{
var outputs = driver.GenerateCode();
library.GenerateCode(driver, outputs);
foreach (var output in outputs)
{
foreach (var pass in driver.Context.GeneratorOutputPasses.Passes)

6
src/Generator/Library.cs

@ -4,6 +4,7 @@ using System.Globalization; @@ -4,6 +4,7 @@ using System.Globalization;
using System.Linq;
using System.Text.RegularExpressions;
using CppSharp.AST;
using CppSharp.Generators;
using CppSharp.Passes;
namespace CppSharp
@ -33,6 +34,11 @@ namespace CppSharp @@ -33,6 +34,11 @@ namespace CppSharp
/// </summary>
/// <param name="driver"></param>
void SetupPasses(Driver driver);
/// <summary>
/// Generate custom code here.
/// </summary>
void GenerateCode(Driver driver, List<GeneratorOutput> outputs) { }
}
public static class LibraryHelpers

Loading…
Cancel
Save