#include <derive-c/core/prelude.h>
#include <stddef.h>
Go to the source code of this file.
|
| struct | mutation_tracker |
| | tracks a specific version of a value, so that this can be compared later to check modification For example, checking iterator invalidation in debug mode. More...
|
| struct | mutation_version |
◆ mutation_tracker_get()
◆ mutation_tracker_mutate()
◆ mutation_tracker_new()
Definition at line 35 of file mutation_tracker.h.
tracks a specific version of a value, so that this can be compared later to check modification For ex...
◆ mutation_version_check()
Throw on the tracker version not matching. For example an iterator over a vector may store the version from it's creation, so that on access it can check it was not invalidated by mutation to the vector.
Definition at line 50 of file mutation_tracker.h.
50 {
51 ASSERT(self->count == self->tracker->count,
"No mutations to the tracker's data structure were "
52 "expected... however it has been mutated");
53}