<PackageReference Include="Castle.Core" Version="3.3.2" />

WeakKeyDictionary<TKey, TValue>

class WeakKeyDictionary<TKey, TValue> : IDictionary<TKey, TValue>, ICollection<KeyValuePair<TKey, TValue>>, IEnumerable<KeyValuePair<TKey, TValue>>, IEnumerable
public int Count { get; }

public TValue this[TKey key] { get; set; }

public ICollection<TKey> Keys { get; }

public ICollection<TValue> Values { get; }

public WeakKeyDictionary(int capacity)

public WeakKeyDictionary(IEqualityComparer<TKey> comparer)

public WeakKeyDictionary(int capacity, IEqualityComparer<TKey> comparer)

public void Add(TKey key, TValue value)

public void Clear()

public bool ContainsKey(TKey key)

public void CopyTo(KeyValuePair<TKey, TValue>[] array, int index)

public IEnumerator<KeyValuePair<TKey, TValue>> GetEnumerator()

public bool Remove(TKey key)

public void TrimDeadObjects()

public bool TryGetValue(TKey key, out TValue value)