Skip to content

Commit a754877

Browse files
Merge pull request #416 from TNG/refactor/add-types-to-namespaces-lodader-task
Improve implementation of AddTypesToNamespaces loader task
2 parents 8da498a + 987d366 commit a754877

File tree

2 files changed

+11
-15
lines changed

2 files changed

+11
-15
lines changed

ArchUnitNET/Loader/ArchBuilder.cs

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -113,15 +113,10 @@ public void LoadTypesForModule(ModuleDefinition module, string namespaceFilter)
113113
}
114114
});
115115

116-
_namespaceRegistry
117-
.Namespaces.Where(ns => RegexUtils.MatchNamespaces(namespaceFilter, ns.FullName))
118-
.ForEach(ns =>
119-
{
120-
_loadTaskRegistry.Add(
121-
typeof(AddTypesToNamespace),
122-
new AddTypesToNamespace(ns, currentTypes)
123-
);
124-
});
116+
_loadTaskRegistry.Add(
117+
typeof(AddTypesToNamespaces),
118+
new AddTypesToNamespaces(currentTypes)
119+
);
125120
}
126121

127122
private void UpdateTypeDefinitions()
@@ -138,7 +133,7 @@ private void UpdateTypeDefinitions()
138133
typeof(AddGenericArgumentDependencies),
139134
typeof(AddClassDependencies),
140135
typeof(AddBackwardsDependencies),
141-
typeof(AddTypesToNamespace),
136+
typeof(AddTypesToNamespaces),
142137
}
143138
);
144139
}

ArchUnitNET/Loader/LoadTasks/AddTypesToNamespace.cs renamed to ArchUnitNET/Loader/LoadTasks/AddTypesToNamespaces.cs

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,20 +4,21 @@
44

55
namespace ArchUnitNET.Loader.LoadTasks
66
{
7-
internal class AddTypesToNamespace : ILoadTask
7+
internal class AddTypesToNamespaces : ILoadTask
88
{
9-
private readonly Namespace _ns;
109
private readonly List<IType> _types;
1110

12-
public AddTypesToNamespace(Namespace ns, List<IType> types)
11+
public AddTypesToNamespaces(List<IType> types)
1312
{
14-
_ns = ns;
1513
_types = types;
1614
}
1715

1816
public void Execute()
1917
{
20-
((List<IType>)_ns.Types).AddRange(_types.Where(type => type.Namespace.Equals(_ns)));
18+
foreach (var type in _types)
19+
{
20+
((List<IType>)type.Namespace.Types).Add(type);
21+
}
2122
}
2223
}
2324
}

0 commit comments

Comments
 (0)