That code looks convoluted with probably un-needed recursion and a loop that only executes one value.
|
if (!innerDep.Any()) return SisbaseResult.FromSucess(); |
|
return await CheckDependencies(sys, newStack); |
It also doesn't check for the intersection of already unloaded systems, although I don't believe thats much of an issue, since its likely pre-emptive optimization.
Anyways, I do believe a cleaner solution can be made.
That code looks convoluted with probably un-needed recursion and a loop that only executes one value.
sisbase.net/Systems/SystemManager.cs
Lines 295 to 296 in 2f57a3c
It also doesn't check for the intersection of already unloaded systems, although I don't believe thats much of an issue, since its likely pre-emptive optimization.
Anyways, I do believe a cleaner solution can be made.