Browse Source

Pass the driver (options) to CLITypePrinter since we need it for declaration name printing.

pull/1/head
triton 12 years ago
parent
commit
48f401495a
  1. 2
      src/Generator/Generators/CLI/CLIGenerator.cs
  2. 2
      src/Generator/Generators/CLI/CLIMarshal.cs
  3. 2
      src/Generator/Generators/CLI/CLISourcesTemplate.cs
  4. 2
      src/Generator/Generators/CLI/CLITextTemplate.cs
  5. 11
      src/Generator/Generators/CLI/CLITypePrinter.cs

2
src/Generator/Generators/CLI/CLIGenerator.cs

@ -11,7 +11,7 @@ namespace Cxxi.Generators.CLI @@ -11,7 +11,7 @@ namespace Cxxi.Generators.CLI
public CLIGenerator(Driver driver) : base(driver)
{
typePrinter = new CLITypePrinter(driver.TypeDatabase, driver.Library);
typePrinter = new CLITypePrinter(driver);
Type.TypePrinter = typePrinter;
}

2
src/Generator/Generators/CLI/CLIMarshal.cs

@ -234,7 +234,7 @@ namespace Cxxi.Generators.CLI @@ -234,7 +234,7 @@ namespace Cxxi.Generators.CLI
private string ToCLITypeName(Declaration decl)
{
var typePrinter = new CLITypePrinter(Driver.TypeDatabase, Driver.Library);
var typePrinter = new CLITypePrinter(Driver);
return typePrinter.VisitDeclaration(decl);
}

2
src/Generator/Generators/CLI/CLISourcesTemplate.cs

@ -205,7 +205,7 @@ namespace Cxxi.Generators.CLI @@ -205,7 +205,7 @@ namespace Cxxi.Generators.CLI
private void GenerateEventRaise(Event @event, Class @class)
{
var typePrinter = new CLITypePrinter(Driver.TypeDatabase, Library);
var typePrinter = new CLITypePrinter(Driver);
var @params = GetEventParameters(@event);
var args = typePrinter.VisitParameters(@params, hasNames: true);

2
src/Generator/Generators/CLI/CLITextTemplate.cs

@ -34,7 +34,7 @@ namespace Cxxi.Generators.CLI @@ -34,7 +34,7 @@ namespace Cxxi.Generators.CLI
protected CLITextTemplate(Driver driver, TranslationUnit unit)
: base(driver, unit)
{
TypePrinter = new CLITypePrinter(driver.TypeDatabase, driver.Library);
TypePrinter = new CLITypePrinter(driver);
Includes = new HashSet<Include>();
}

11
src/Generator/Generators/CLI/CLITypePrinter.cs

@ -7,12 +7,15 @@ namespace Cxxi.Generators.CLI @@ -7,12 +7,15 @@ namespace Cxxi.Generators.CLI
public class CLITypePrinter : ITypePrinter, IDeclVisitor<string>
{
public Library Library { get; set; }
private readonly ITypeMapDatabase TypeMapDatabase;
public CLITypePrinter(ITypeMapDatabase database, Library library)
readonly ITypeMapDatabase TypeMapDatabase;
readonly DriverOptions Options;
public CLITypePrinter(Driver driver)
{
TypeMapDatabase = database;
Library = library;
TypeMapDatabase = driver.TypeDatabase;
Library = driver.Library;
Options = driver.Options;
}
public string VisitTagType(TagType tag, TypeQualifiers quals)

Loading…
Cancel
Save