Skip to content

Commit 54ad95b

Browse files
committed
Simplified the sorting of declarations.
Signed-off-by: Dimitar Dobrev <[email protected]>
1 parent b41b96d commit 54ad95b

File tree

2 files changed

+7
-12
lines changed

2 files changed

+7
-12
lines changed

src/AST/ASTVisitor.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -311,7 +311,7 @@ public virtual bool VisitTranslationUnit(TranslationUnit unit)
311311
if (!VisitDeclaration(unit))
312312
return false;
313313

314-
return VisitDeclarationContext(unit);
314+
return VisitNamespace(unit);
315315
}
316316

317317
public virtual bool VisitClassDecl(Class @class)

src/Generator/Passes/SortDeclarationsPass.cs

Lines changed: 6 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -3,20 +3,15 @@
33

44
namespace CppSharp.Passes
55
{
6-
class SortDeclarationsPass : TranslationUnitPass
6+
public class SortDeclarationsPass : TranslationUnitPass
77
{
8-
private static void SortDeclarations(Namespace @namespace)
8+
public override bool VisitNamespace(Namespace @namespace)
99
{
10-
@namespace.Declarations = @namespace.Declarations.OrderBy(
11-
declaration => declaration.DefinitionOrder).ToList();
12-
13-
foreach (var childNamespace in @namespace.Namespaces)
14-
SortDeclarations(childNamespace);
15-
}
10+
if (!base.VisitNamespace(@namespace) || @namespace.Ignore)
11+
return false;
1612

17-
public override bool VisitTranslationUnit(TranslationUnit unit)
18-
{
19-
SortDeclarations(unit);
13+
@namespace.Declarations = @namespace.Declarations.OrderBy(
14+
d => d.DefinitionOrder).ToList();
2015
return true;
2116
}
2217
}

0 commit comments

Comments
 (0)