Browse Source

Change ConsoleDriver.Run to return a failure bool.

pull/1765/head
Joao Matos 2 years ago
parent
commit
76e7996a94
  1. 10
      src/Generator/Driver.cs

10
src/Generator/Driver.cs

@ -423,7 +423,7 @@ namespace CppSharp
public static class ConsoleDriver public static class ConsoleDriver
{ {
public static void Run(ILibrary library) public static bool Run(ILibrary library)
{ {
var options = new DriverOptions(); var options = new DriverOptions();
using var driver = new Driver(options); using var driver = new Driver(options);
@ -438,7 +438,7 @@ namespace CppSharp
Diagnostics.Message("Parsing libraries..."); Diagnostics.Message("Parsing libraries...");
if (!driver.ParseLibraries()) if (!driver.ParseLibraries())
return; return false;
if (!options.Quiet) if (!options.Quiet)
Diagnostics.Message("Parsing code..."); Diagnostics.Message("Parsing code...");
@ -446,7 +446,7 @@ namespace CppSharp
if (!driver.ParseCode()) if (!driver.ParseCode())
{ {
Diagnostics.Error("CppSharp has encountered an error while parsing code."); Diagnostics.Error("CppSharp has encountered an error while parsing code.");
return; return false;
} }
new CleanUnitPass { Context = driver.Context }.VisitASTContext(driver.Context.ASTContext); new CleanUnitPass { Context = driver.Context }.VisitASTContext(driver.Context.ASTContext);
@ -473,7 +473,7 @@ namespace CppSharp
Diagnostics.Message("Generating code..."); Diagnostics.Message("Generating code...");
if (options.DryRun) if (options.DryRun)
return; return true;
var outputs = driver.GenerateCode(); var outputs = driver.GenerateCode();
@ -488,6 +488,8 @@ namespace CppSharp
driver.SaveCode(outputs); driver.SaveCode(outputs);
if (driver.Options.IsCSharpGenerator && driver.Options.CompileCode) if (driver.Options.IsCSharpGenerator && driver.Options.CompileCode)
driver.Options.Modules.Any(m => !driver.CompileCode(m)); driver.Options.Modules.Any(m => !driver.CompileCode(m));
return true;
} }
} }
} }

Loading…
Cancel
Save