Add support for System.Collections in JsonConverter.ConvertToJson #267
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.
Supported collection types are Hashtable, SortedList, ArrayList, Stack, Queue. BitArray is not supported. Don't think it will receive much usage.
Why:
I use this library for logging data structures in VBA. It's very easy to dump nested tree/list/dictionary structures using ConvertToJson rather than writing code to iterate over each collection. Since System.Collection collections are often used in VBA, I thought this was a good idea.
How:
Use existing JSON serialization code as much as possible: Map Hashtable and SortedList to Dictionary
Map ArrayList, Stack and Queue to Array.
Some bugs in .Net/COM/VBA had to be hacked around. See comment on Stack and Queue types in JsonConverter.bas
Deserialization: JSON doesn't support any of these types, so no code to change there.