Clarify the logical view of iterators
This commit is contained in:
@@ -86,10 +86,12 @@ struct VersionedMap {
|
|||||||
/** The version of the most recent call to `setOldestVersion`. */
|
/** The version of the most recent call to `setOldestVersion`. */
|
||||||
int64_t getOldestVersion() const;
|
int64_t getOldestVersion() const;
|
||||||
|
|
||||||
/** Fixed to a specific version. It's thread-safe to operate on an iterator
|
/** Iterates through a canonicalized view of all the mutations from
|
||||||
* concurrently with any method of `VersionedMap`, as long as it's not
|
* `oldestVersion` to the iterator's version. There may be mutations from
|
||||||
* invalidated by `setOldestVersion`. @warning must not outlive its
|
* versions < `oldestVersion`, but they won't affect the result. It's
|
||||||
* `VersionedMap`. */
|
* thread-safe to operate on an iterator concurrently with any method of
|
||||||
|
* `VersionedMap`, as long as it's not invalidated by `setOldestVersion`.
|
||||||
|
* @warning must not outlive its `VersionedMap`. */
|
||||||
struct Iterator {
|
struct Iterator {
|
||||||
|
|
||||||
Iterator() = default;
|
Iterator() = default;
|
||||||
|
Reference in New Issue
Block a user