Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Index iteration: avoid invalidated pointers entirely.
IndexRef is like a pointer, except it just stores a pointer to the container and an index. Any invalid (out of range) IndexRef is equal to any other. IndexIterator is an iterator over all IndexRef values for a container, used to have a range-for loop where not only every loop, but every access through the iterated value, gets looked up based on index. If this looks appealing I'll move the code out of the main consuming CPP file into someplace where the other files can use it.
- Loading branch information