- """General-purpose test-and-set operation for mutable slots. Perform
- a bunch of comparisons against the existing shares. If they all pass,
- then apply a bunch of write vectors to those shares. Then use the
- read vectors to extract data from all the shares and return the data.
+ """
+ General-purpose test-read-and-set operation for mutable slots:
+ (1) For submitted shnums, compare the test vectors against extant
+ shares, or against an empty share for shnums that do not exist.
+ (2) Use the read vectors to extract "old data" from extant shares.
+ (3) If all tests in (1) passed, then apply the write vectors
+ (possibly creating new shares).
+ (4) Return whether the tests passed, and the "old data", which does
+ not include any modifications made by the writes.
+
+ The operation does not interleave with other operations on the same
+ shareset.