v1.2.20
-
ComputeOnce:- Renamed
ComputeOnceCalltoComputeCall. - Added
PosComputeCallcallback invoked after computation completes, receiving success or error results. - Added
posComputefield to invoke post-computation callback. - Updated
resolveandresolveAsyncto applyposComputeon success or error.
- Renamed
-
TimedComputeOnce:- Added support for
posComputecallback.
- Added support for
-
Added
ComputeOnceCache:- Caches
TimedComputeOnceinstances by key. - Supports retention duration for cached entries with automatic eviction.
- Provides
getmethod to retrieve or create cached computations.
- Caches
-
Added
ComputeOnceCachedIDs:- Extends
ComputeOnceCachefor batched computations by ID sets. - Supports ID ordering, hashing, and deduplication.
- Shares in-flight computations for overlapping ID sets.
- Provides
getByIDsto get computations for subsets of IDs. - Provides
computeIDsto compute and merge results for requested IDs, preserving order.
- Extends
-
Added
ComputeIDs:- Represents an ordered, comparable, and hashable set of IDs.
- Supports binary search, intersection, equality, and hashing.
-
Added extensions:
IterableComputeOnceExtensionfor resolving multipleComputeOnceinstances.MapComputeIDsExtensionfor resolving maps ofTimedComputeOncekeyed byComputeIDs.ListIdValuePairExtensionfor binary searching(ID, value)pairs sorted by ID.
-
Typedefs:
ComputeCallIDsfor batched ID computations.ComputeIDCompareandComputeIDHashfor ID comparison and hashing.