The algorithm suggested in the issue was adjusted to allow more than one nested type per exported type.
Something to consider:
The current algorithm does not dispose of the enumerators generated just like the method in https://github.com/0xd4d/dnlib/blob/4e0837cb0f4319ffbcdd1642d1973fce203b2177/src/DotNet/AllTypesHelper.cs#L14. This should be fine since list enumerators don't contain any logic in their Dipose method but this is something we'd probably need to add to both implementations for future-proofing and potential reuse. Perhaps we could also extract this traversal into an additional class for future use.
fixes https://github.com/0xd4d/dnlib/issues/558
The algorithm suggested in the issue was adjusted to allow more than one nested type per exported type.
Something to consider: The current algorithm does not dispose of the enumerators generated just like the method in https://github.com/0xd4d/dnlib/blob/4e0837cb0f4319ffbcdd1642d1973fce203b2177/src/DotNet/AllTypesHelper.cs#L14. This should be fine since list enumerators don't contain any logic in their
Dipose
method but this is something we'd probably need to add to both implementations for future-proofing and potential reuse. Perhaps we could also extract this traversal into an additional class for future use.