From a45dbc7655c3aa089685a80074cf90a42c00253c Mon Sep 17 00:00:00 2001 From: marcos henrich Date: Tue, 30 Jul 2013 13:15:32 +0100 Subject: [PATCH] Fix template function generation. Return type should be created in TypePrinter. --- src/Generator/Generators/CLI/CLIHeadersTemplate.cs | 8 ++------ src/Generator/Generators/CLI/CLISourcesTemplate.cs | 8 ++------ 2 files changed, 4 insertions(+), 12 deletions(-) diff --git a/src/Generator/Generators/CLI/CLIHeadersTemplate.cs b/src/Generator/Generators/CLI/CLIHeadersTemplate.cs index 5d4dcd96..4d21dac1 100644 --- a/src/Generator/Generators/CLI/CLIHeadersTemplate.cs +++ b/src/Generator/Generators/CLI/CLIHeadersTemplate.cs @@ -281,19 +281,15 @@ namespace CppSharp.Generators.CLI var typePrinter = new CLITypePrinter(Driver, typeCtx); var retType = function.ReturnType.Type.Visit(typePrinter, - function.ReturnType.Qualifiers).Split('<')[0]; + function.ReturnType.Qualifiers); var typeNamesStr = ""; - var paramNamesStr = ""; var paramNames = template.Parameters.Select(param => param.Name).ToList(); if (paramNames.Any()) - { typeNamesStr = "typename " + string.Join(", typename ", paramNames); - paramNamesStr = string.Join(", ", paramNames); - } WriteLine("generic<{0}>", typeNamesStr); - WriteLine("{0}<{1}> {2}({3});", retType, paramNamesStr, SafeIdentifier(function.Name), + WriteLine("{0} {1}({2});", retType, SafeIdentifier(function.Name), GenerateParametersList(function.Parameters)); } PopIndent(); diff --git a/src/Generator/Generators/CLI/CLISourcesTemplate.cs b/src/Generator/Generators/CLI/CLISourcesTemplate.cs index 83343ab8..c8fa8214 100644 --- a/src/Generator/Generators/CLI/CLISourcesTemplate.cs +++ b/src/Generator/Generators/CLI/CLISourcesTemplate.cs @@ -215,19 +215,15 @@ namespace CppSharp.Generators.CLI var typePrinter = new CLITypePrinter(Driver, typeCtx); var retType = function.ReturnType.Type.Visit(typePrinter, - function.ReturnType.Qualifiers).Split('<')[0]; + function.ReturnType.Qualifiers); var typeNamesStr = ""; - var paramNamesStr = ""; var paramNames = template.Parameters.Select(param => param.Name).ToList(); if (paramNames.Any()) - { typeNamesStr = "typename " + string.Join(", typename ", paramNames); - paramNamesStr = string.Join(", ", paramNames); - } WriteLine("generic<{0}>", typeNamesStr); - WriteLine("{0}<{1}> {2}::{3}({4});", retType, paramNamesStr, + WriteLine("{0} {1}::{2}({3})", retType, QualifiedIdentifier(@class), SafeIdentifier(function.Name), GenerateParametersList(function.Parameters));