Skip to content

Add batch edit/remove/lookup APIs & tests#186

Merged
ChrisPulman merged 1 commit intomainfrom
ExtendFunctionality
Feb 1, 2026
Merged

Add batch edit/remove/lookup APIs & tests#186
ChrisPulman merged 1 commit intomainfrom
ExtendFunctionality

Conversation

@ChrisPulman
Copy link
Owner

Introduce batch-oriented operations and lookup support across the quaternary collections and add tests/benchmarks.
New API surface: IQuaternaryDictionary.Lookup, RemoveKeys, RemoveMany, Edit and IQuaternaryList.RemoveMany, Edit. Implementations in QuaternaryDictionary/QuaternaryList include efficient RemoveKeysCore paths, shard-aware RemoveMany, Edit wrappers to apply atomic modifications and emit a single BatchOperation notification.
Benchmarks extended to measure new operations and DynamicData SourceList/SourceCache comparisons.
Tests added for lookup, RemoveKeys/RemoveMany and Edit behaviors (including index updates), plus NET48-only serialization tests for ReactiveList; TestData made [Serializable] and ReactiveList updated for binary serialization ([Serializable], non-serialized runtime fields and initialization).
Remove global.json and its solution reference; minor solution metadata cleanup.

Introduce batch-oriented operations and lookup support across the quaternary collections and add tests/benchmarks. New API surface: IQuaternaryDictionary.Lookup, RemoveKeys, RemoveMany, Edit and IQuaternaryList.RemoveMany, Edit. Implementations in QuaternaryDictionary/QuaternaryList include efficient RemoveKeysCore paths, shard-aware RemoveMany, Edit wrappers to apply atomic modifications and emit a single BatchOperation notification. Benchmarks extended to measure new operations and DynamicData SourceList/SourceCache comparisons. Tests added for lookup, RemoveKeys/RemoveMany and Edit behaviors (including index updates), plus NET48-only serialization tests for ReactiveList; TestData made [Serializable] and ReactiveList updated for binary serialization ([Serializable], non-serialized runtime fields and initialization). Remove global.json and its solution reference; minor solution metadata cleanup.
@ChrisPulman ChrisPulman merged commit dbb4f96 into main Feb 1, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant