Releases: protobufel/multikeymapcsharp
Releases · protobufel/multikeymapcsharp
Optimized positional partial key search
Optimized and fixed the positional partial key search
Sub-key position based secondary indexing and regression fixes
- Implemented the initial sub-key position based secondary indexing which replaced previous implementations
- Fixed collection based full key IEqualityComparer bug introduced in version 2.1.0
Extra TryGet...ByPartialKey and Refactorings
- added new TryGets by partial key with the correlated lists of the partial key sub-keys and positions.
- moved the existing tuple based TryGets to extensions
- fixes and refactorings
Serialization and Cleanup
- Removed all deprecations.
- Changed the MultiKeyMaps main factory class a bit.
- Made the returned Dictionary-based IMultiKeyMap implementations serializable.
Positional sub-key search
Added TryGetFullKeysByPartialKey(IEnumerable<(int position, T subkey)> partialKey, ...) and friends, allowing for search by any mixture of positional and non-positional sub-keys (positional>=0, non-positional with position<0).
This is the last 1.x release. Will start 2.x with the removal of all deprecations.
New TryGetValuesByPartialKey and friends + copy extensions
- Deprecated Get{Values|FullKeys|Entries}ByPartialKey in favor of new TryGet{Values|FullKeys|Entries}ByPartialKey methods to make it consistent with IDictionary style of access in C#.
- Added new extension methods on IMultiKeyMap CopyFrom and Of in place of copy constructors. Use GitHub.Protobufel.MultiKeyMap.Extensions namespace to enable them.
The deprecated methods, mentioned above, will be removed starting with version 2.0.0.
Official NuGet Release
Fully tested, documented initial release. Published on Nuget (see the badge)