From 2916703e4c7e450d5602c88a8df81e3cde09bbe5 Mon Sep 17 00:00:00 2001 From: triton Date: Wed, 21 Aug 2013 18:34:38 +0100 Subject: [PATCH] Refactored enum item generation in CLI backend to use blocks. --- src/Generator/Generators/CLI/CLIHeadersTemplate.cs | 9 ++++++--- src/Generator/Generators/CLI/CLITextTemplate.cs | 3 ++- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/Generator/Generators/CLI/CLIHeadersTemplate.cs b/src/Generator/Generators/CLI/CLIHeadersTemplate.cs index 291c2309..c7a6842d 100644 --- a/src/Generator/Generators/CLI/CLIHeadersTemplate.cs +++ b/src/Generator/Generators/CLI/CLIHeadersTemplate.cs @@ -614,9 +614,10 @@ namespace CppSharp.Generators.CLI WriteLine("{"); PushIndent(); - for (int i = 0; i < @enum.Items.Count; ++i) + foreach (var item in @enum.Items) { - var item = @enum.Items[i]; + PushBlock(CLIBlockKind.EnumItem); + GenerateInlineSummary(item.Comment); if (item.ExplicitValue) Write(String.Format("{0} = {1}", SafeIdentifier(item.Name), @@ -624,8 +625,10 @@ namespace CppSharp.Generators.CLI else Write(String.Format("{0}", SafeIdentifier(item.Name))); - if (i < @enum.Items.Count - 1) + if (item != @enum.Items.Last()) WriteLine(","); + + PopBlock(NewLineKind.Never); } PopIndent(); diff --git a/src/Generator/Generators/CLI/CLITextTemplate.cs b/src/Generator/Generators/CLI/CLITextTemplate.cs index 7b667bdb..525471cb 100644 --- a/src/Generator/Generators/CLI/CLITextTemplate.cs +++ b/src/Generator/Generators/CLI/CLITextTemplate.cs @@ -30,7 +30,7 @@ namespace CppSharp.Generators.CLI public const int Namespace = BlockKind.LAST + 3; public const int ForwardReferences = BlockKind.LAST + 4; public const int Enum = BlockKind.LAST + 5; - public const int Typedef = BlockKind.LAST + 6; + public const int EnumItem = BlockKind.LAST + 6; public const int Class = BlockKind.LAST + 7; public const int Method = BlockKind.LAST + 8; public const int MethodBody = BlockKind.LAST + 9; @@ -38,6 +38,7 @@ namespace CppSharp.Generators.CLI public const int FunctionsClass = BlockKind.LAST + 11; public const int Function = BlockKind.LAST + 12; public const int Property = BlockKind.LAST + 13; + public const int Typedef = BlockKind.LAST + 14; } ///