Browse Source

Added DriverOptions to CLITypeReferenceCollector.

pull/224/head
marcos henrich 12 years ago committed by triton
parent
commit
5484758507
  1. 4
      src/Generator/Generators/CLI/CLIHeadersTemplate.cs
  2. 2
      src/Generator/Generators/CLI/CLISourcesTemplate.cs
  3. 4
      src/Generator/Generators/CLI/CLITypeReferences.cs

4
src/Generator/Generators/CLI/CLIHeadersTemplate.cs

@ -52,7 +52,7 @@ namespace CppSharp.Generators.CLI
public void GenerateIncludeForwardRefs() public void GenerateIncludeForwardRefs()
{ {
var typeReferenceCollector = new CLITypeReferenceCollector(Driver.TypeDatabase); var typeReferenceCollector = new CLITypeReferenceCollector(Driver.TypeDatabase, Driver.Options);
typeReferenceCollector.Process(TranslationUnit, filterNamespaces: false); typeReferenceCollector.Process(TranslationUnit, filterNamespaces: false);
var includes = new SortedSet<string>(StringComparer.InvariantCulture); var includes = new SortedSet<string>(StringComparer.InvariantCulture);
@ -129,7 +129,7 @@ namespace CppSharp.Generators.CLI
public void GenerateForwardRefs() public void GenerateForwardRefs()
{ {
var typeReferenceCollector = new CLITypeReferenceCollector(Driver.TypeDatabase); var typeReferenceCollector = new CLITypeReferenceCollector(Driver.TypeDatabase, Driver.Options);
typeReferenceCollector.Process(TranslationUnit); typeReferenceCollector.Process(TranslationUnit);
var typeReferences = typeReferenceCollector.TypeReferences; var typeReferences = typeReferenceCollector.TypeReferences;

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

@ -60,7 +60,7 @@ namespace CppSharp.Generators.CLI
{ {
PushBlock(CLIBlockKind.IncludesForwardReferences); PushBlock(CLIBlockKind.IncludesForwardReferences);
var typeReferenceCollector = new CLITypeReferenceCollector(Driver.TypeDatabase); var typeReferenceCollector = new CLITypeReferenceCollector(Driver.TypeDatabase, Driver.Options);
typeReferenceCollector.Process(TranslationUnit, filterNamespaces: false); typeReferenceCollector.Process(TranslationUnit, filterNamespaces: false);
var includes = new SortedSet<string>(StringComparer.InvariantCulture); var includes = new SortedSet<string>(StringComparer.InvariantCulture);

4
src/Generator/Generators/CLI/CLITypeReferences.cs

@ -26,6 +26,7 @@ namespace CppSharp.Generators.CLI
public class CLITypeReferenceCollector : AstVisitor public class CLITypeReferenceCollector : AstVisitor
{ {
private readonly ITypeMapDatabase TypeMapDatabase; private readonly ITypeMapDatabase TypeMapDatabase;
private readonly DriverOptions DriverOptions;
private TranslationUnit TranslationUnit; private TranslationUnit TranslationUnit;
private Dictionary<Declaration, CLITypeReference> typeReferences; private Dictionary<Declaration, CLITypeReference> typeReferences;
@ -34,9 +35,10 @@ namespace CppSharp.Generators.CLI
get { return typeReferences.Values; } get { return typeReferences.Values; }
} }
public CLITypeReferenceCollector(ITypeMapDatabase typeMapDatabase) public CLITypeReferenceCollector(ITypeMapDatabase typeMapDatabase, DriverOptions driverOptions)
{ {
TypeMapDatabase = typeMapDatabase; TypeMapDatabase = typeMapDatabase;
DriverOptions = driverOptions;
typeReferences = new Dictionary<Declaration,CLITypeReference>(); typeReferences = new Dictionary<Declaration,CLITypeReference>();
} }

Loading…
Cancel
Save