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 set of changes is about making
Edit
a type of a collection instead of a collection’s equatable elements plus the resulting changed requirements, including tests and test app. Merges into the version 3 branch.An
Edit
needs to have a concept of the collection type so we can ensure we can do arithmetic on the collection’s index distance type, see discussion on #39.I wasn’t able to declare
…where C.IndexDistance: SignedInteger
onEdit
,Changeset
while doing enumerations and additions/subtractions on offsets in a compatible way. At least I couldn’t figure out how to. So for now, we requireInt
index distances on the collections.Note: I prefer to ensure all commits are compilable (
git-bisect
), hence all files in one commit.FYI: I’m planning a general cleanup for version 3 (including using the
C
shorthand forCollection
types, probably splitting upEdit
andChangeset
in separate files).