1 write to _additionalElements
System.Collections.Immutable (1)
System\Collections\Immutable\ImmutableDictionary_2.HashBucket.cs (1)
44
_additionalElements
= additionalElements ?? ImmutableList<KeyValuePair<TKey, TValue>>.Node.EmptyNode;
22 references to _additionalElements
System.Collections.Immutable (22)
System\Collections\Immutable\ImmutableDictionary_2.HashBucket.cs (22)
55
get { return
_additionalElements
== null; }
79
get { return
_additionalElements
; }
155
return new HashBucket(kv,
_additionalElements
);
174
int keyCollisionIndex =
_additionalElements
.IndexOf(kv, keyOnlyComparer);
178
return new HashBucket(_firstValue,
_additionalElements
.Add(kv));
186
return new HashBucket(_firstValue,
_additionalElements
.ReplaceAt(keyCollisionIndex, kv));
191
ref readonly KeyValuePair<TKey, TValue> existingEntry = ref
_additionalElements
.ItemRef(keyCollisionIndex);
225
if (
_additionalElements
.IsEmpty)
234
int indexOfRootNode =
_additionalElements
.Left!.Count;
236
return new HashBucket(
_additionalElements
.Key,
_additionalElements
.RemoveAt(indexOfRootNode));
240
int index =
_additionalElements
.IndexOf(kv, keyOnlyComparer);
249
return new HashBucket(_firstValue,
_additionalElements
.RemoveAt(index));
275
int index =
_additionalElements
.IndexOf(kv, comparers.KeyOnlyComparer);
282
value =
_additionalElements
.ItemRef(index).Value;
314
int index =
_additionalElements
.IndexOf(kv, comparers.KeyOnlyComparer);
321
actualKey =
_additionalElements
.ItemRef(index).Key;
330
_additionalElements
?.Freeze();
349
/// The enumerator that represents the current position over the <see cref="
_additionalElements
"/> of the <see cref="HashBucket"/>.
380
/// We're enumerating the <see cref="
_additionalElements
"/> in the bucket.
435
if (_bucket.
_additionalElements
.IsEmpty)
442
_additionalEnumerator = new ImmutableList<KeyValuePair<TKey, TValue>>.Enumerator(_bucket.
_additionalElements
);