Browse Source

Fixed access check logic for declarations to allow non-public declarations in C#.

Checking for the GenerateAbstractImpls option is flawed since they are not entirely related.
pull/140/head
triton 12 years ago
parent
commit
df4fdeace8
  1. 7
      src/Generator/Passes/CheckIgnoredDecls.cs

7
src/Generator/Passes/CheckIgnoredDecls.cs

@ -7,19 +7,18 @@ namespace CppSharp.Passes @@ -7,19 +7,18 @@ namespace CppSharp.Passes
{
public bool CheckDeclarationAccess(Declaration decl)
{
var generateAbstractImpls = Driver.Options.IsCSharpGenerator
&& Driver.Options.GenerateAbstractImpls;
var generateNonPublicDecls = Driver.Options.IsCSharpGenerator;
switch (decl.Access)
{
case AccessSpecifier.Public:
return true;
case AccessSpecifier.Protected:
return generateAbstractImpls;
return generateNonPublicDecls;
case AccessSpecifier.Private:
var method = decl as Method;
var isOverride = method != null && method.IsOverride;
return generateAbstractImpls && isOverride;
return generateNonPublicDecls && isOverride;
}
return true;

Loading…
Cancel
Save