💥 SequenceSet input validation for Set, Array, and enumerables #319
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.
Rather than allow any object with
#each
as a potential input, this narrows down the API to only allowSet
andArray
objects:#to_set
. With this change, the round trip ofSequenceSet.new(set).to_set == set
should be true.#to_sequence_set
. This way, we won't accidentally attempt to convert hashes with string keys, etc.Although I believe the impact will be negligible, this is a breaking change. SequenceSet is currently documented as "experimental" except for two methods, and this change affects one of those methods:
SequenceSet[*inputs]
. So I'd like this change to be in the v0.5.0 release.