From d9ffb1b5af955ddbcf20551f2612ea36d4fc1502 Mon Sep 17 00:00:00 2001 From: Dimitar Dobrev Date: Thu, 16 Feb 2017 00:10:13 +0200 Subject: [PATCH] Shortened the delegates used in the C# end. Signed-off-by: Dimitar Dobrev --- src/Generator/Generators/CSharp/CSharpSources.cs | 6 ------ src/Generator/Passes/DelegatesPass.cs | 14 ++++++++++---- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/src/Generator/Generators/CSharp/CSharpSources.cs b/src/Generator/Generators/CSharp/CSharpSources.cs index ba8fddee..20c79432 100644 --- a/src/Generator/Generators/CSharp/CSharpSources.cs +++ b/src/Generator/Generators/CSharp/CSharpSources.cs @@ -67,12 +67,6 @@ namespace CppSharp.Generators.CSharp } } - public static string FormatTypesStringForIdentifier(StringBuilder types) - { - return types.Replace("global::System.", string.Empty).Replace("*", "Ptr") - .Replace('.', '_').Replace(' ', '_').Replace("::", "_").ToString(); - } - public static string GetSuffixForInternal(Declaration context) { var specialization = context as ClassTemplateSpecialization; diff --git a/src/Generator/Passes/DelegatesPass.cs b/src/Generator/Passes/DelegatesPass.cs index 3ec4b9a6..67576cc7 100644 --- a/src/Generator/Passes/DelegatesPass.cs +++ b/src/Generator/Passes/DelegatesPass.cs @@ -155,13 +155,19 @@ namespace CppSharp.Passes } if (typesBuilder.Length > 0) typesBuilder.Remove(typesBuilder.Length - 1, 1); - var delegateName = Helpers.FormatTypesStringForIdentifier(typesBuilder); + var delegateName = FormatTypesStringForIdentifier(typesBuilder); if (returnType.Type.IsPrimitiveType(PrimitiveType.Void)) - delegateName = "Action_" + delegateName; + delegateName.Insert(0, "Action_"); else - delegateName = "Func_" + delegateName; + delegateName.Insert(0, "Func_"); - return delegateName; + return delegateName.ToString(); + } + + private static StringBuilder FormatTypesStringForIdentifier(StringBuilder types) + { + return types.Replace("global::System.", string.Empty).Replace("global::", string.Empty) + .Replace("*", "Ptr").Replace('.', '_').Replace(' ', '_').Replace("::", "_"); } private CSharpTypePrinter TypePrinter