Skip to content
This repository has been archived by the owner on Aug 2, 2023. It is now read-only.

DictionarySlim #2458

Merged
merged 96 commits into from Nov 17, 2018
Merged
Show file tree
Hide file tree
Changes from 79 commits
Commits
Show all changes
96 commits
Select commit Hold shift + click to select a range
445c7a3
RefDictionary start
Aug 28, 2018
1de719c
style fixes
Sep 1, 2018
f0469cc
add first perf test
Sep 3, 2018
94e5f0b
small style fixes, more sizes
Sep 4, 2018
ddafa87
further review
Sep 8, 2018
fbdfec2
capacity need to be power of 2 for som reason
Sep 9, 2018
e6a649e
bit faster by reordering fields
Sep 9, 2018
da8da30
refdictionary add knucleotide perf tests
Sep 11, 2018
fd98afc
fix size power of 2 bug
Sep 11, 2018
6c43333
groupby performance test
Sep 12, 2018
a4f8901
add Values and other method
Sep 12, 2018
ce76a03
IEquatable<T> FTW
Sep 15, 2018
559c575
resize improvements and more tests
Sep 15, 2018
2ce9b3b
simplify enumerator
Sep 17, 2018
8c4da5e
small insert changes
Sep 18, 2018
00022d2
add isfasterthan test
Sep 25, 2018
bc648ae
remove old baseline version
Oct 6, 2018
e10a16d
split out Resize()
Oct 6, 2018
40e2c53
prime, capacity, inline and rename to DictionarySlim
Nov 2, 2018
239bd67
latest knucleotide, comments
Nov 4, 2018
be5c603
Primize capacity
danmoseley Nov 5, 2018
78e2082
Calculate hash only once
danmoseley Nov 5, 2018
1796e32
Update Hack to #9
danmoseley Nov 5, 2018
ce4005c
Remove impl
danmoseley Nov 5, 2018
d26e0fd
By ref in indexer
danmoseley Nov 5, 2018
ff2ff0c
merge tests
Nov 6, 2018
af911e2
remove FSharp reference
Nov 6, 2018
a61a040
de var
Nov 6, 2018
245ec57
Revert "By ref in indexer"
Nov 6, 2018
02d0e9f
remove for value types
Nov 6, 2018
ebf704a
general test data, test knucleotide result
Nov 6, 2018
74a14a6
uint with better perf
Nov 7, 2018
22ec024
fasta license
Nov 7, 2018
984226b
add simple DebugView
Nov 7, 2018
f347160
move usings, simplify Capacity, move assign in resize
Nov 7, 2018
2a69556
complete remove, add copyto
Nov 8, 2018
4aeed46
reduce bounds checking
Nov 8, 2018
f0a0b2a
split indexer for better perf
Nov 9, 2018
2fb8e87
initial arrays, enumerate tests
Nov 9, 2018
f133827
remove perf test
Nov 9, 2018
f4f2e03
add collision loop detection
Nov 10, 2018
97c94ac
Resource strings for concurrency error
danmoseley Nov 10, 2018
7a2b09b
Enable errors in HashHelpers
danmoseley Nov 10, 2018
9978719
Extract dummy arrays into class
danmoseley Nov 10, 2018
fb08a58
nested enumerator, only int initial array shared more
Nov 10, 2018
22d7388
fix initial buckets
Nov 10, 2018
0243dcf
aghh fixed correctly now
Nov 10, 2018
04e327e
Improve CopyTo tests
danmoseley Nov 10, 2018
917a53f
Avoid boxing on GetEnumerator()
danmoseley Nov 10, 2018
9ea2f40
Make namespace match MultiValueDictionary
danmoseley Nov 10, 2018
5a2dab1
Fix benchmark on Linux
danmoseley Nov 10, 2018
9f02f30
Minor spacing
danmoseley Nov 11, 2018
9c8c248
NuGet keyword, version
danmoseley Nov 11, 2018
18d8d45
Remove dead strings
danmoseley Nov 11, 2018
b891486
Implement IC and IROC on K/V enumerators
danmoseley Nov 11, 2018
e5d61f6
Ensure BDN diagnostics dll loads
danmoseley Nov 11, 2018
4db5d9b
Disable slow running benchmarks by default
danmoseley Nov 11, 2018
d445de3
Cherry pick BDN version update
danmoseley Nov 11, 2018
e69d479
Merge branch 'master' into anthonylloydmaster
danmoseley Nov 11, 2018
fee0b8f
Break out HashHelpers
danmoseley Nov 11, 2018
0fef43b
Test that Remove releases ref
danmoseley Nov 11, 2018
ec7799c
Extract local
danmoseley Nov 11, 2018
6c8e3c1
Extract local in enumerators
danmoseley Nov 11, 2018
3592cd9
Server Concurrent GC
danmoseley Nov 11, 2018
5cbc958
Modulo over buckets length
danmoseley Nov 11, 2018
65ad0d6
remove old sign bit comment
Nov 11, 2018
436532d
don't auto prop Count
Nov 11, 2018
39ce99f
Debugger display
danmoseley Nov 11, 2018
65b8075
Merge branch 'master' of https://github.com/anthonylloyd/corefxlab in…
danmoseley Nov 11, 2018
53fbe07
static GetHashCode
danmoseley Nov 11, 2018
3a92c9e
manually inline methods
Nov 11, 2018
b238d9b
Remove Current autoproperty
danmoseley Nov 12, 2018
acbe391
rename KeyEnumerable to KeyCollection, same for Value
Nov 12, 2018
299b99c
Make IsReadOnly explicitly implemented
danmoseley Nov 13, 2018
7c2eff8
Add TryGetValue
danmoseley Nov 13, 2018
12a5a6e
Change KNuc to TryGetValue
danmoseley Nov 13, 2018
ecf5f50
KNuc: Sum over values directly
danmoseley Nov 13, 2018
33e6965
Break out field initialization
danmoseley Nov 13, 2018
8826672
add throwhelper and null argument exceptions
Nov 13, 2018
629aa08
try power 2 with & (length-1)
Nov 13, 2018
db5ab0e
remove by moving last instead of freeList
Nov 13, 2018
8538069
collisionCount down
Nov 14, 2018
419b923
check capacity
Nov 14, 2018
15fd49e
check capacity
Nov 14, 2018
d78e222
Revert "collisionCount down"
AnthonyLloyd Nov 14, 2018
0bc9c4e
add string perf plus mix up others
Nov 14, 2018
0f0dec3
add ctor and remove tests
Nov 14, 2018
d479287
revert 'remove by moving last instead of freeList'
Nov 15, 2018
c9d382b
revert 'remove by moving last instead of freeList'
Nov 15, 2018
4601c08
Validate CopyTo array
danmoseley Nov 16, 2018
04ad0ab
Implicit impl for CopyTo and Reset on enumerators matching Dictionary
danmoseley Nov 16, 2018
bfff22f
Handle capacity 0 and 1
danmoseley Nov 16, 2018
a5b1faa
Corruption protection on Remove()
danmoseley Nov 16, 2018
d8aab4c
Protect against capacity overflow
danmoseley Nov 16, 2018
6c1418e
Remove GetValueOrDefault
danmoseley Nov 16, 2018
e536592
Change indexer to GetOrAddValueRef
danmoseley Nov 16, 2018
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
Expand Up @@ -3,8 +3,8 @@
<PropertyGroup>
<Description>This package provides collections that are being considered for future versions of .NET Core.</Description>
<TargetFramework>netstandard2.0</TargetFramework>
<PackageTags>collections system microsoft multivaluedictionary</PackageTags>
<VersionPrefix>1.0.4</VersionPrefix>
<PackageTags>collections system microsoft multivaluedictionary dictionaryslim</PackageTags>
<VersionPrefix>1.0.5</VersionPrefix>
<DebugType>pdbonly</DebugType>
<DebugSymbols>true</DebugSymbols>
</PropertyGroup>
Expand Down