<PackageReference Include="Microsoft.Packaging.Tools" Version="1.0.0-preview2-25401-01" />

System.Collections.Immutable.ImmutableHashSet<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(); } }