Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR will finish the work on the Debug module.
Unfortunately, the state and generated data were not designed in a polymorphic way, so generated data from every different module requires duplicate code to access state data common to all modules. Since that common data cannot be accessed through a simple base class interface and requires casting to the derived type for every module, that mostly defeats the purpose of having a set of common state data because it requires duplicate conversion code for any module types I want to convert between.
So this PR also refactors the generated data and state code to get that to work.