Update the view for ONE entity that changed/was added/removed. Returns true if the result order changed.
O(log n) to locate; the array splice is O(n) memory-move but performs no filter/sort over the whole set — the differentiator from full re-derivation.
Current ordered id list.
Build the initial sorted result from a full id set.
Current member count.
A live, sorted view over a set of entity ids that updates incrementally.
seed(ids)builds the initial result (one O(n log n) pass).applyChange(id)updates the result for one changed/added/removed entity in O(log n) comparisons (+ array splice).result()returns the current ordered id list (stable reference until a change mutates it).