Browse Source

Convert enum handling in C# generator to visitor model

pull/818/head
Joao Matos 9 years ago
parent
commit
78563c8e44
  1. 8
      src/Generator/Generators/CSharp/CSharpSources.cs

8
src/Generator/Generators/CSharp/CSharpSources.cs

@ -220,7 +220,7 @@ namespace CppSharp.Generators.CSharp
public override bool VisitDeclContext(DeclarationContext context) public override bool VisitDeclContext(DeclarationContext context)
{ {
foreach (var @enum in context.Enums) foreach (var @enum in context.Enums)
GenerateEnum(@enum); @enum.Visit(this);
foreach (var typedef in context.Typedefs) foreach (var typedef in context.Typedefs)
GenerateTypedef(typedef); GenerateTypedef(typedef);
@ -3041,10 +3041,10 @@ namespace CppSharp.Generators.CSharp
return true; return true;
} }
public void GenerateEnum(Enumeration @enum) public override bool VisitEnumDecl(Enumeration @enum)
{ {
if (@enum.IsIncomplete) if (@enum.IsIncomplete)
return; return true;
PushBlock(CSharpBlockKind.Enum); PushBlock(CSharpBlockKind.Enum);
GenerateDeclarationCommon(@enum); GenerateDeclarationCommon(@enum);
@ -3085,6 +3085,8 @@ namespace CppSharp.Generators.CSharp
WriteCloseBraceIndent(); WriteCloseBraceIndent();
PopBlock(NewLineKind.BeforeNextBlock); PopBlock(NewLineKind.BeforeNextBlock);
return true;
} }
public static string GetMethodIdentifier(Method method) public static string GetMethodIdentifier(Method method)

Loading…
Cancel
Save