13 writes to _backing
Microsoft.Build.Utilities.Core (13)
31 references to _backing
Microsoft.Build.Utilities.Core (31)
CopyOnWriteDictionary.cs (31)
76object v = info.GetValue(nameof(_backing), typeof(KeyValuePair<string, V>[]))!;
103_backing = that._backing;
114public ICollection<string> Keys => ((IDictionary<string, V>)_backing).Keys;
119public ICollection<V> Values => ((IDictionary<string, V>)_backing).Values;
124public int Count => _backing.Count;
129public bool IsReadOnly => ((IDictionary<string, V>)_backing).IsReadOnly;
171get => _backing.KeyComparer;
172private set => _backing = _backing.WithComparers(keyComparer: value);
180get => _backing[key];
184_backing = _backing.SetItem(key, value);
208_backing = _backing.SetItem(key, value);
216_backing = _backing.SetItems(items);
221return _backing.Where(predicate);
228return _backing.ContainsKey(key);
236ImmutableDictionary<string, V> initial = _backing;
238_backing = _backing.Remove(key);
240return initial != _backing; // whether the removal occured
249return _backing.TryGetValue(key, out value);
258_backing = _backing.SetItem(item.Key, item.Value);
266_backing = _backing.Clear();
274return _backing.Contains(item);
282((IDictionary<string, V>)_backing).CopyTo(array, arrayIndex);
290ImmutableDictionary<string, V> initial = _backing;
292_backing = _backing.Remove(item.Key);
294return initial != _backing; // whether the removal occured
302return _backing.GetEnumerator();
344return ((IDictionary)_backing).GetEnumerator();
381return ReferenceEquals(other._backing, _backing);
386ImmutableDictionary<string, V> snapshot = _backing;
389info.AddValue(nameof(_backing), array);