Browse Source

Deleted more redundant code.

Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
pull/337/merge
Dimitar Dobrev 9 years ago
parent
commit
c472643edf
  1. 30
      src/Generator/Passes/DelegatesPass.cs
  2. 10
      src/Generator/Passes/GetterSetterToPropertyPass.cs

30
src/Generator/Passes/DelegatesPass.cs

@ -53,36 +53,6 @@ namespace CppSharp.Passes
return result; return result;
} }
public override bool VisitClassDecl(Class @class)
{
if (!base.VisitClassDecl(@class))
return false;
// dependent types with virtuals have no own virtual layouts
// so virtuals are considered different objects in template instantiations
// therefore the method itself won't be visited, so let's visit it through the v-table
if (Context.ParserOptions.IsMicrosoftAbi)
{
foreach (var method in from vfTable in @class.Layout.VFTables
from component in vfTable.Layout.Components
where component.Method != null
select component.Method)
VisitMethodDecl(method);
}
else
{
if (@class.Layout.Layout == null)
return false;
foreach (var method in from component in @class.Layout.Layout.Components
where component.Method != null
select component.Method)
VisitMethodDecl(method);
}
return true;
}
public override bool VisitMethodDecl(Method method) public override bool VisitMethodDecl(Method method)
{ {
if (!base.VisitMethodDecl(method) || !method.IsVirtual || method.Ignore) if (!base.VisitMethodDecl(method) || !method.IsVirtual || method.Ignore)

10
src/Generator/Passes/GetterSetterToPropertyPass.cs

@ -330,6 +330,7 @@ namespace CppSharp.Passes
{ {
VisitOptions.VisitClassFields = false; VisitOptions.VisitClassFields = false;
VisitOptions.VisitClassProperties = false; VisitOptions.VisitClassProperties = false;
VisitOptions.VisitClassMethods = false;
VisitOptions.VisitNamespaceEnums = false; VisitOptions.VisitNamespaceEnums = false;
VisitOptions.VisitNamespaceTemplates = false; VisitOptions.VisitNamespaceTemplates = false;
VisitOptions.VisitNamespaceTypedefs = false; VisitOptions.VisitNamespaceTypedefs = false;
@ -341,15 +342,8 @@ namespace CppSharp.Passes
public override bool VisitClassDecl(Class @class) public override bool VisitClassDecl(Class @class)
{ {
if (VisitDeclarationContext(@class)) if (base.VisitClassDecl(@class))
{
if (VisitOptions.VisitClassBases)
foreach (var baseClass in @class.Bases)
if (baseClass.IsClass)
VisitClassDecl(baseClass.Class);
new PropertyGenerator(@class).GenerateProperties(); new PropertyGenerator(@class).GenerateProperties();
}
return false; return false;
} }
} }

Loading…
Cancel
Save