From 556e91554ff4c3fafa7a0027b54cd6ff938456b8 Mon Sep 17 00:00:00 2001 From: Dimitar Dobrev Date: Thu, 6 Feb 2014 18:10:32 +0200 Subject: [PATCH] Ignored protected members of value types. Used a constant for the instance identifier to improve performance. Signed-off-by: Dimitar Dobrev --- src/Generator/Generators/CSharp/CSharpTextTemplate.cs | 5 +---- src/Generator/Passes/CheckIgnoredDecls.cs | 3 +++ 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/Generator/Generators/CSharp/CSharpTextTemplate.cs b/src/Generator/Generators/CSharp/CSharpTextTemplate.cs index 0008a0d8..68524b07 100644 --- a/src/Generator/Generators/CSharp/CSharpTextTemplate.cs +++ b/src/Generator/Generators/CSharp/CSharpTextTemplate.cs @@ -61,10 +61,7 @@ namespace CppSharp.Generators.CSharp return "Winapi"; } - public static string InstanceIdentifier - { - get { return Generator.GeneratedIdentifier("Instance"); } - } + public const string InstanceIdentifier = "__Instance"; public static string GetAccess(AccessSpecifier accessSpecifier) { diff --git a/src/Generator/Passes/CheckIgnoredDecls.cs b/src/Generator/Passes/CheckIgnoredDecls.cs index 6e696ce8..f300d555 100644 --- a/src/Generator/Passes/CheckIgnoredDecls.cs +++ b/src/Generator/Passes/CheckIgnoredDecls.cs @@ -14,6 +14,9 @@ namespace CppSharp.Passes case AccessSpecifier.Public: return true; case AccessSpecifier.Protected: + var @class = decl.Namespace as Class; + if (@class != null && @class.IsValueType) + return false; return generateNonPublicDecls; case AccessSpecifier.Private: var method = decl as Method;