BREAKING CHANGE: replaced universe objects with root universe object

This commit is contained in:
2025-10-24 13:34:09 +03:00
parent a6eb67551d
commit 5a6883a87f
9 changed files with 46 additions and 29 deletions

View File

@@ -16,6 +16,21 @@ public static class UniverseObjectExtensions
return universeObject;
}
public static IEnumerator<IUniverseObject> TraverseChildren(this IUniverseObject universeObject)
{
static IEnumerable<IUniverseObject> Traverse(IUniverseObject obj)
{
foreach (IUniverseObject child in obj.Children)
{
yield return child;
foreach (IUniverseObject descendant in Traverse(child))
yield return descendant;
}
}
return Traverse(universeObject).GetEnumerator();
}
#region Universe Object Search
/// <summary>
/// Gets a <see cref="IUniverseObject"/> of the specified type.