System.Collections.Immutable.ImmutableHashSet<T>
public sealed class ImmutableHashSet<T> : IImmutableSet<T>, IReadOnlyCollection<T>, IEnumerable<T>, IEnumerable, IHashKeyCollection<T>, ICollection<T>, ISet<T>, ICollection, IStrongEnumerable<T, Enumerator<T>>
namespace System.Collections.Immutable
{
public sealed class ImmutableHashSet<T> : IImmutableSet<T>, IReadOnlyCollection<T>, IEnumerable<T>, IEnumerable, IHashKeyCollection<T>, ICollection<T>, ISet<T>, ICollection, IStrongEnumerable<T, ImmutableHashSet<T>.Enumerator>
{
public sealed class Builder : IReadOnlyCollection<T>, IEnumerable<T>, IEnumerable, ISet<T>, ICollection<T>
{
public int Count { get; }
public IEqualityComparer<T> KeyComparer { get; set; }
public Enumerator GetEnumerator();
public ImmutableHashSet<T> ToImmutable();
public bool Add(T item);
public bool Remove(T item);
public bool Contains(T item);
public void Clear();
public void ExceptWith(IEnumerable<T> other);
public void IntersectWith(IEnumerable<T> other);
public bool IsProperSubsetOf(IEnumerable<T> other);
public bool IsProperSupersetOf(IEnumerable<T> other);
public bool IsSubsetOf(IEnumerable<T> other);
public bool IsSupersetOf(IEnumerable<T> other);
public bool Overlaps(IEnumerable<T> other);
public bool SetEquals(IEnumerable<T> other);
public void SymmetricExceptWith(IEnumerable<T> other);
public void UnionWith(IEnumerable<T> other);
}
public struct Enumerator : IEnumerator<T>, IEnumerator, IDisposable, IStrongEnumerator<T>
{
public T Current { get; }
public bool MoveNext();
public void Reset();
public void Dispose();
}
public static readonly ImmutableHashSet<T> Empty;
public int Count { get; }
public bool IsEmpty { get; }
public IEqualityComparer<T> KeyComparer { get; }
public ImmutableHashSet<T> Clear();
public Builder ToBuilder();
public ImmutableHashSet<T> Add(T item);
public ImmutableHashSet<T> Remove(T item);
public bool TryGetValue(T equalValue, out T actualValue);
public ImmutableHashSet<T> Union(IEnumerable<T> other);
public ImmutableHashSet<T> Intersect(IEnumerable<T> other);
public ImmutableHashSet<T> Except(IEnumerable<T> other);
public ImmutableHashSet<T> SymmetricExcept(IEnumerable<T> other);
public bool SetEquals(IEnumerable<T> other);
public bool IsProperSubsetOf(IEnumerable<T> other);
public bool IsProperSupersetOf(IEnumerable<T> other);
public bool IsSubsetOf(IEnumerable<T> other);
public bool IsSupersetOf(IEnumerable<T> other);
public bool Overlaps(IEnumerable<T> other);
public bool Contains(T item);
public ImmutableHashSet<T> WithComparer(IEqualityComparer<T> equalityComparer);
public Enumerator GetEnumerator();
}
}