Browse Source

Fixed uncompilable code when a free function is names after its header.

Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
pull/661/head
Dimitar Dobrev 10 years ago
parent
commit
4d7c7a5ae7
  1. 10
      src/Generator/Generators/CSharp/CSharpTextTemplate.cs

10
src/Generator/Generators/CSharp/CSharpTextTemplate.cs

@ -294,8 +294,8 @@ namespace CppSharp.Generators.CSharp
if (context.HasFunctions) if (context.HasFunctions)
{ {
PushBlock(CSharpBlockKind.Functions); PushBlock(CSharpBlockKind.Functions);
WriteLine("public unsafe partial class {0}", var parentName = Helpers.SafeIdentifier(context.TranslationUnit.FileNameWithoutExtension);
Helpers.SafeIdentifier(context.TranslationUnit.FileNameWithoutExtension)); WriteLine("public unsafe partial class {0}", parentName);
WriteStartBraceIndent(); WriteStartBraceIndent();
PushBlock(CSharpBlockKind.InternalsClass); PushBlock(CSharpBlockKind.InternalsClass);
@ -317,7 +317,7 @@ namespace CppSharp.Generators.CSharp
{ {
if (!function.IsGenerated) continue; if (!function.IsGenerated) continue;
GenerateFunction(function); GenerateFunction(function, parentName);
} }
WriteCloseBraceIndent(); WriteCloseBraceIndent();
@ -2184,12 +2184,14 @@ namespace CppSharp.Generators.CSharp
#region Methods / Functions #region Methods / Functions
public void GenerateFunction(Function function) public void GenerateFunction(Function function, string parentName)
{ {
PushBlock(CSharpBlockKind.Function); PushBlock(CSharpBlockKind.Function);
GenerateDeclarationCommon(function); GenerateDeclarationCommon(function);
var functionName = GetFunctionIdentifier(function); var functionName = GetFunctionIdentifier(function);
if (functionName == parentName)
functionName += '_';
Write("public static {0} {1}(", function.OriginalReturnType, functionName); Write("public static {0} {1}(", function.OriginalReturnType, functionName);
Write(FormatMethodParameters(function.Parameters)); Write(FormatMethodParameters(function.Parameters));
WriteLine(")"); WriteLine(")");

Loading…
Cancel
Save