com.koloboke.collect.set.hash
Interface HashObjSetFactory<E>

All Superinterfaces:
ContainerFactory<HashObjSetFactory<E>>, HashContainerFactory<HashObjSetFactory<E>>, ObjHashFactory<HashObjSetFactory<E>>, ObjSetFactory<E,HashObjSetFactory<E>>

public interface HashObjSetFactory<E>
extends ObjSetFactory<E,HashObjSetFactory<E>>, ObjHashFactory<HashObjSetFactory<E>>

An immutable factory of HashObjSets.

See Also:
HashObjSet, HashObjSets.getDefaultFactory(), @KolobokeSet

Method Summary
 Equivalence<E> getEquivalence()
          Returns the equivalence to which equivalence of the sets constructed by this factory is set.
<E2 extends E>
HashObjSet<E2>
newImmutableSet(Consumer<Consumer<E2>> elementsSupplier)
          Constructs a new immutable set of elements consumed by the callback within the given closure.
<E2 extends E>
HashObjSet<E2>
newImmutableSet(Consumer<Consumer<E2>> elementsSupplier, int expectedSize)
          Constructs a new immutable set of elements consumed by the callback within the given closure.
<E2 extends E>
HashObjSet<E2>
newImmutableSet(E2[] elements)
          Constructs a new immutable set of elements from the given array.
<E2 extends E>
HashObjSet<E2>
newImmutableSet(E2[] elements, int expectedSize)
          Constructs a new immutable set of elements from the given array.
<E2 extends E>
HashObjSet<E2>
newImmutableSet(Iterable<? extends E2> elements)
          Constructs a new immutable set containing the elements in the specified iterable.
<E2 extends E>
HashObjSet<E2>
newImmutableSet(Iterable<? extends E2> elements, int expectedSize)
          Constructs a new immutable set containing the elements in the specified iterable.
<E2 extends E>
HashObjSet<E2>
newImmutableSet(Iterable<? extends E2> elems1, Iterable<? extends E2> elems2)
          Constructs a new immutable set which merge the elements of the specified iterables.
<E2 extends E>
HashObjSet<E2>
newImmutableSet(Iterable<? extends E2> elems1, Iterable<? extends E2> elems2, int expectedSize)
          Constructs a new immutable set which merge the elements of the specified iterables.
<E2 extends E>
HashObjSet<E2>
newImmutableSet(Iterable<? extends E2> elems1, Iterable<? extends E2> elems2, Iterable<? extends E2> elems3)
          Constructs a new immutable set which merge the elements of the specified iterables.
<E2 extends E>
HashObjSet<E2>
newImmutableSet(Iterable<? extends E2> elems1, Iterable<? extends E2> elems2, Iterable<? extends E2> elems3, int expectedSize)
          Constructs a new immutable set which merge the elements of the specified iterables.
<E2 extends E>
HashObjSet<E2>
newImmutableSet(Iterable<? extends E2> elems1, Iterable<? extends E2> elems2, Iterable<? extends E2> elems3, Iterable<? extends E2> elems4)
          Constructs a new immutable set which merge the elements of the specified iterables.
<E2 extends E>
HashObjSet<E2>
newImmutableSet(Iterable<? extends E2> elems1, Iterable<? extends E2> elems2, Iterable<? extends E2> elems3, Iterable<? extends E2> elems4, int expectedSize)
          Constructs a new immutable set which merge the elements of the specified iterables.
<E2 extends E>
HashObjSet<E2>
newImmutableSet(Iterable<? extends E2> elems1, Iterable<? extends E2> elems2, Iterable<? extends E2> elems3, Iterable<? extends E2> elems4, Iterable<? extends E2> elems5)
          Constructs a new immutable set which merge the elements of the specified iterables.
<E2 extends E>
HashObjSet<E2>
newImmutableSet(Iterable<? extends E2> elems1, Iterable<? extends E2> elems2, Iterable<? extends E2> elems3, Iterable<? extends E2> elems4, Iterable<? extends E2> elems5, int expectedSize)
          Constructs a new immutable set which merge the elements of the specified iterables.
<E2 extends E>
HashObjSet<E2>
newImmutableSet(Iterator<? extends E2> elements)
          Constructs a new immutable set containing the elements traversed by the specified iterator.
<E2 extends E>
HashObjSet<E2>
newImmutableSet(Iterator<? extends E2> elements, int expectedSize)
          Constructs a new immutable set containing the elements traversed by the specified iterator.
<E2 extends E>
HashObjSet<E2>
newImmutableSetOf(E2 e1)
          Constructs a new immutable singleton set of the given element.
<E2 extends E>
HashObjSet<E2>
newImmutableSetOf(E2 e1, E2 e2)
          Constructs a new immutable set of the two specified elements.
<E2 extends E>
HashObjSet<E2>
newImmutableSetOf(E2 e1, E2 e2, E2 e3)
          Constructs a new immutable set of the three specified elements.
<E2 extends E>
HashObjSet<E2>
newImmutableSetOf(E2 e1, E2 e2, E2 e3, E2 e4)
          Constructs a new immutable set of the four specified elements.
<E2 extends E>
HashObjSet<E2>
newImmutableSetOf(E2 e1, E2 e2, E2 e3, E2 e4, E2 e5, E2... restElements)
          Constructs a new immutable set of the specified elements.
<E2 extends E>
HashObjSet<E2>
newMutableSet()
          Constructs a new empty mutable set of the default expected size.
<E2 extends E>
HashObjSet<E2>
newMutableSet(Consumer<Consumer<E2>> elementsSupplier)
          Constructs a new mutable set of elements consumed by the callback within the given closure.
<E2 extends E>
HashObjSet<E2>
newMutableSet(Consumer<Consumer<E2>> elementsSupplier, int expectedSize)
          Constructs a new mutable set of elements consumed by the callback within the given closure.
<E2 extends E>
HashObjSet<E2>
newMutableSet(E2[] elements)
          Constructs a new mutable set of elements from the given array.
<E2 extends E>
HashObjSet<E2>
newMutableSet(E2[] elements, int expectedSize)
          Constructs a new mutable set of elements from the given array.
<E2 extends E>
HashObjSet<E2>
newMutableSet(int expectedSize)
          Constructs a new empty mutable set of the given expected size.
<E2 extends E>
HashObjSet<E2>
newMutableSet(Iterable<? extends E2> elements)
          Constructs a new mutable set containing the elements in the specified iterable.
<E2 extends E>
HashObjSet<E2>
newMutableSet(Iterable<? extends E2> elements, int expectedSize)
          Constructs a new mutable set containing the elements in the specified iterable.
<E2 extends E>
HashObjSet<E2>
newMutableSet(Iterable<? extends E2> elems1, Iterable<? extends E2> elems2)
          Constructs a new mutable set which merge the elements of the specified iterables.
<E2 extends E>
HashObjSet<E2>
newMutableSet(Iterable<? extends E2> elems1, Iterable<? extends E2> elems2, int expectedSize)
          Constructs a new mutable set which merge the elements of the specified iterables.
<E2 extends E>
HashObjSet<E2>
newMutableSet(Iterable<? extends E2> elems1, Iterable<? extends E2> elems2, Iterable<? extends E2> elems3)
          Constructs a new mutable set which merge the elements of the specified iterables.
<E2 extends E>
HashObjSet<E2>
newMutableSet(Iterable<? extends E2> elems1, Iterable<? extends E2> elems2, Iterable<? extends E2> elems3, int expectedSize)
          Constructs a new mutable set which merge the elements of the specified iterables.
<E2 extends E>
HashObjSet<E2>
newMutableSet(Iterable<? extends E2> elems1, Iterable<? extends E2> elems2, Iterable<? extends E2> elems3, Iterable<? extends E2> elems4)
          Constructs a new mutable set which merge the elements of the specified iterables.
<E2 extends E>
HashObjSet<E2>
newMutableSet(Iterable<? extends E2> elems1, Iterable<? extends E2> elems2, Iterable<? extends E2> elems3, Iterable<? extends E2> elems4, int expectedSize)
          Constructs a new mutable set which merge the elements of the specified iterables.
<E2 extends E>
HashObjSet<E2>
newMutableSet(Iterable<? extends E2> elems1, Iterable<? extends E2> elems2, Iterable<? extends E2> elems3, Iterable<? extends E2> elems4, Iterable<? extends E2> elems5)
          Constructs a new mutable set which merge the elements of the specified iterables.
<E2 extends E>
HashObjSet<E2>
newMutableSet(Iterable<? extends E2> elems1, Iterable<? extends E2> elems2, Iterable<? extends E2> elems3, Iterable<? extends E2> elems4, Iterable<? extends E2> elems5, int expectedSize)
          Constructs a new mutable set which merge the elements of the specified iterables.
<E2 extends E>
HashObjSet<E2>
newMutableSet(Iterator<? extends E2> elements)
          Constructs a new mutable set containing the elements traversed by the specified iterator.
<E2 extends E>
HashObjSet<E2>
newMutableSet(Iterator<? extends E2> elements, int expectedSize)
          Constructs a new mutable set containing the elements traversed by the specified iterator.
<E2 extends E>
HashObjSet<E2>
newMutableSetOf(E2 e1)
          Constructs a new mutable singleton set of the given element.
<E2 extends E>
HashObjSet<E2>
newMutableSetOf(E2 e1, E2 e2)
          Constructs a new mutable set of the two specified elements.
<E2 extends E>
HashObjSet<E2>
newMutableSetOf(E2 e1, E2 e2, E2 e3)
          Constructs a new mutable set of the three specified elements.
<E2 extends E>
HashObjSet<E2>
newMutableSetOf(E2 e1, E2 e2, E2 e3, E2 e4)
          Constructs a new mutable set of the four specified elements.
<E2 extends E>
HashObjSet<E2>
newMutableSetOf(E2 e1, E2 e2, E2 e3, E2 e4, E2 e5, E2... restElements)
          Constructs a new mutable set of the specified elements.
<E2 extends E>
HashObjSet<E2>
newUpdatableSet()
          Constructs a new empty updatable set of the default expected size.
<E2 extends E>
HashObjSet<E2>
newUpdatableSet(Consumer<Consumer<E2>> elementsSupplier)
          Constructs a new updatable set of elements consumed by the callback within the given closure.
<E2 extends E>
HashObjSet<E2>
newUpdatableSet(Consumer<Consumer<E2>> elementsSupplier, int expectedSize)
          Constructs a new updatable set of elements consumed by the callback within the given closure.
<E2 extends E>
HashObjSet<E2>
newUpdatableSet(E2[] elements)
          Constructs a new updatable set of elements from the given array.
<E2 extends E>
HashObjSet<E2>
newUpdatableSet(E2[] elements, int expectedSize)
          Constructs a new updatable set of elements from the given array.
<E2 extends E>
HashObjSet<E2>
newUpdatableSet(int expectedSize)
          Constructs a new empty updatable set of the given expected size.
<E2 extends E>
HashObjSet<E2>
newUpdatableSet(Iterable<? extends E2> elements)
          Constructs a new updatable set containing the elements in the specified iterable.
<E2 extends E>
HashObjSet<E2>
newUpdatableSet(Iterable<? extends E2> elements, int expectedSize)
          Constructs a new updatable set containing the elements in the specified iterable.
<E2 extends E>
HashObjSet<E2>
newUpdatableSet(Iterable<? extends E2> elems1, Iterable<? extends E2> elems2)
          Constructs a new updatable set which merge the elements of the specified iterables.
<E2 extends E>
HashObjSet<E2>
newUpdatableSet(Iterable<? extends E2> elems1, Iterable<? extends E2> elems2, int expectedSize)
          Constructs a new updatable set which merge the elements of the specified iterables.
<E2 extends E>
HashObjSet<E2>
newUpdatableSet(Iterable<? extends E2> elems1, Iterable<? extends E2> elems2, Iterable<? extends E2> elems3)
          Constructs a new updatable set which merge the elements of the specified iterables.
<E2 extends E>
HashObjSet<E2>
newUpdatableSet(Iterable<? extends E2> elems1, Iterable<? extends E2> elems2, Iterable<? extends E2> elems3, int expectedSize)
          Constructs a new updatable set which merge the elements of the specified iterables.
<E2 extends E>
HashObjSet<E2>
newUpdatableSet(Iterable<? extends E2> elems1, Iterable<? extends E2> elems2, Iterable<? extends E2> elems3, Iterable<? extends E2> elems4)
          Constructs a new updatable set which merge the elements of the specified iterables.
<E2 extends E>
HashObjSet<E2>
newUpdatableSet(Iterable<? extends E2> elems1, Iterable<? extends E2> elems2, Iterable<? extends E2> elems3, Iterable<? extends E2> elems4, int expectedSize)
          Constructs a new updatable set which merge the elements of the specified iterables.
<E2 extends E>
HashObjSet<E2>
newUpdatableSet(Iterable<? extends E2> elems1, Iterable<? extends E2> elems2, Iterable<? extends E2> elems3, Iterable<? extends E2> elems4, Iterable<? extends E2> elems5)
          Constructs a new updatable set which merge the elements of the specified iterables.
<E2 extends E>
HashObjSet<E2>
newUpdatableSet(Iterable<? extends E2> elems1, Iterable<? extends E2> elems2, Iterable<? extends E2> elems3, Iterable<? extends E2> elems4, Iterable<? extends E2> elems5, int expectedSize)
          Constructs a new updatable set which merge the elements of the specified iterables.
<E2 extends E>
HashObjSet<E2>
newUpdatableSet(Iterator<? extends E2> elements)
          Constructs a new updatable set containing the elements traversed by the specified iterator.
<E2 extends E>
HashObjSet<E2>
newUpdatableSet(Iterator<? extends E2> elements, int expectedSize)
          Constructs a new updatable set containing the elements traversed by the specified iterator.
<E2 extends E>
HashObjSet<E2>
newUpdatableSetOf(E2 e1)
          Constructs a new updatable singleton set of the given element.
<E2 extends E>
HashObjSet<E2>
newUpdatableSetOf(E2 e1, E2 e2)
          Constructs a new updatable set of the two specified elements.
<E2 extends E>
HashObjSet<E2>
newUpdatableSetOf(E2 e1, E2 e2, E2 e3)
          Constructs a new updatable set of the three specified elements.
<E2 extends E>
HashObjSet<E2>
newUpdatableSetOf(E2 e1, E2 e2, E2 e3, E2 e4)
          Constructs a new updatable set of the four specified elements.
<E2 extends E>
HashObjSet<E2>
newUpdatableSetOf(E2 e1, E2 e2, E2 e3, E2 e4, E2 e5, E2... restElements)
          Constructs a new updatable set of the specified elements.
 HashObjSetFactory<E> withEquivalence(Equivalence<? super E> equivalence)
          Returns a copy of this factory, with exception that it constructs sets with element equivalence set to the given Equivalence.
 
Methods inherited from interface com.koloboke.collect.hash.ObjHashFactory
isNullKeyAllowed, withNullKeyAllowed
 
Methods inherited from interface com.koloboke.collect.hash.HashContainerFactory
getHashConfig, withHashConfig
 
Methods inherited from interface com.koloboke.collect.ContainerFactory
getDefaultExpectedSize, withDefaultExpectedSize
 

Method Detail

getEquivalence

@Nonnull
Equivalence<E> getEquivalence()
Returns the equivalence to which equivalence of the sets constructed by this factory is set. Defaults to Equivalence.defaultEquality().

Specified by:
getEquivalence in interface ObjSetFactory<E,HashObjSetFactory<E>>
Returns:
the key equivalence of the maps constructed by this factory

withEquivalence

@Nonnull
HashObjSetFactory<E> withEquivalence(@Nonnull
                                             Equivalence<? super E> equivalence)
Returns a copy of this factory, with exception that it constructs sets with element equivalence set to the given Equivalence.

The Koloboke Compile's counterpart of this configuration is the @CustomKeyEquivalence annotation.

Parameters:
equivalence - the new element equivalence
Returns:
a copy of this factory, which constructs sets with the given keyEquivalence

newMutableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newMutableSet()
Description copied from interface: ObjSetFactory
Constructs a new empty mutable set of the default expected size.

Specified by:
newMutableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Returns:
a new empty mutable set

newMutableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newMutableSet(int expectedSize)
Description copied from interface: ObjSetFactory
Constructs a new empty mutable set of the given expected size.

Specified by:
newMutableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
expectedSize - the expected size of the returned set
Returns:
a new empty mutable set of the given expected size

newMutableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newMutableSet(@Nonnull
                                                    Iterable<? extends E2> elements,
                                                    int expectedSize)
Description copied from interface: ObjSetFactory
Constructs a new mutable set containing the elements in the specified iterable.

If the specified iterable is an instance of ObjSet and has the same equivalence with this factory (and thus the constructed set), the expectedSize argument is ignored.

Specified by:
newMutableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elements - the iterable whose elements are to be placed into the returned set
expectedSize - the expected size of the returned set
Returns:
a new mutable set of the elements of the specified iterable

newMutableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newMutableSet(@Nonnull
                                                    Iterable<? extends E2> elems1,
                                                    @Nonnull
                                                    Iterable<? extends E2> elems2,
                                                    int expectedSize)
Description copied from interface: ObjSetFactory
Constructs a new mutable set which merge the elements of the specified iterables.

Specified by:
newMutableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elems1 - the first source of elements for the returned set
elems2 - the second source of elements for the returned set
expectedSize - the expected size of the returned set
Returns:
a new mutable set which merge the elements of the specified iterables

newMutableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newMutableSet(@Nonnull
                                                    Iterable<? extends E2> elems1,
                                                    @Nonnull
                                                    Iterable<? extends E2> elems2,
                                                    @Nonnull
                                                    Iterable<? extends E2> elems3,
                                                    int expectedSize)
Description copied from interface: ObjSetFactory
Constructs a new mutable set which merge the elements of the specified iterables.

Specified by:
newMutableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elems1 - the first source of elements for the returned set
elems2 - the second source of elements for the returned set
elems3 - the third source of elements for the returned set
expectedSize - the expected size of the returned set
Returns:
a new mutable set which merge the elements of the specified iterables

newMutableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newMutableSet(@Nonnull
                                                    Iterable<? extends E2> elems1,
                                                    @Nonnull
                                                    Iterable<? extends E2> elems2,
                                                    @Nonnull
                                                    Iterable<? extends E2> elems3,
                                                    @Nonnull
                                                    Iterable<? extends E2> elems4,
                                                    int expectedSize)
Description copied from interface: ObjSetFactory
Constructs a new mutable set which merge the elements of the specified iterables.

Specified by:
newMutableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elems1 - the first source of elements for the returned set
elems2 - the second source of elements for the returned set
elems3 - the third source of elements for the returned set
elems4 - the fourth source of elements for the returned set
expectedSize - the expected size of the returned set
Returns:
a new mutable set which merge the elements of the specified iterables

newMutableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newMutableSet(@Nonnull
                                                    Iterable<? extends E2> elems1,
                                                    @Nonnull
                                                    Iterable<? extends E2> elems2,
                                                    @Nonnull
                                                    Iterable<? extends E2> elems3,
                                                    @Nonnull
                                                    Iterable<? extends E2> elems4,
                                                    @Nonnull
                                                    Iterable<? extends E2> elems5,
                                                    int expectedSize)
Description copied from interface: ObjSetFactory
Constructs a new mutable set which merge the elements of the specified iterables.

Specified by:
newMutableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elems1 - the first source of elements for the returned set
elems2 - the second source of elements for the returned set
elems3 - the third source of elements for the returned set
elems4 - the fourth source of elements for the returned set
elems5 - the fifth source of elements for the returned set
expectedSize - the expected size of the returned set
Returns:
a new mutable set which merge the elements of the specified iterables

newMutableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newMutableSet(@Nonnull
                                                    Iterator<? extends E2> elements,
                                                    int expectedSize)
Description copied from interface: ObjSetFactory
Constructs a new mutable set containing the elements traversed by the specified iterator.

Specified by:
newMutableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elements - the iterator from which elements are to be placed into the returned set
expectedSize - the expected size of the returned set
Returns:
a new mutable set containing the elements traversed by the specified iterator

newMutableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newMutableSet(@Nonnull
                                                    Consumer<Consumer<E2>> elementsSupplier,
                                                    int expectedSize)
Description copied from interface: ObjSetFactory
Constructs a new mutable set of elements consumed by the callback within the given closure.

Example: TODO

Specified by:
newMutableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elementsSupplier - the function which supply mappings for the returned set via the callback passed in
expectedSize - the expected size of the returned set
Returns:
a new mutable set of elements consumed by the callback within the given closure

newMutableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newMutableSet(@Nonnull
                                                    E2[] elements,
                                                    int expectedSize)
Description copied from interface: ObjSetFactory
Constructs a new mutable set of elements from the given array.

Specified by:
newMutableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elements - the array whose elements are to be placed into the returned set
expectedSize - the expected size of the returned set
Returns:
a new mutable set of elements from the given array

newMutableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newMutableSet(@Nonnull
                                                    Iterable<? extends E2> elements)
Description copied from interface: ObjSetFactory
Constructs a new mutable set containing the elements in the specified iterable.

Specified by:
newMutableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elements - the iterable whose elements are to be placed into the returned set
Returns:
a new mutable set of the elements of the specified iterable

newMutableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newMutableSet(@Nonnull
                                                    Iterable<? extends E2> elems1,
                                                    @Nonnull
                                                    Iterable<? extends E2> elems2)
Description copied from interface: ObjSetFactory
Constructs a new mutable set which merge the elements of the specified iterables.

Specified by:
newMutableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elems1 - the first source of elements for the returned set
elems2 - the second source of elements for the returned set
Returns:
a new mutable set which merge the elements of the specified iterables

newMutableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newMutableSet(@Nonnull
                                                    Iterable<? extends E2> elems1,
                                                    @Nonnull
                                                    Iterable<? extends E2> elems2,
                                                    @Nonnull
                                                    Iterable<? extends E2> elems3)
Description copied from interface: ObjSetFactory
Constructs a new mutable set which merge the elements of the specified iterables.

Specified by:
newMutableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elems1 - the first source of elements for the returned set
elems2 - the second source of elements for the returned set
elems3 - the third source of elements for the returned set
Returns:
a new mutable set which merge the elements of the specified iterables

newMutableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newMutableSet(@Nonnull
                                                    Iterable<? extends E2> elems1,
                                                    @Nonnull
                                                    Iterable<? extends E2> elems2,
                                                    @Nonnull
                                                    Iterable<? extends E2> elems3,
                                                    @Nonnull
                                                    Iterable<? extends E2> elems4)
Description copied from interface: ObjSetFactory
Constructs a new mutable set which merge the elements of the specified iterables.

Specified by:
newMutableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elems1 - the first source of elements for the returned set
elems2 - the second source of elements for the returned set
elems3 - the third source of elements for the returned set
elems4 - the fourth source of elements for the returned set
Returns:
a new mutable set which merge the elements of the specified iterables

newMutableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newMutableSet(@Nonnull
                                                    Iterable<? extends E2> elems1,
                                                    @Nonnull
                                                    Iterable<? extends E2> elems2,
                                                    @Nonnull
                                                    Iterable<? extends E2> elems3,
                                                    @Nonnull
                                                    Iterable<? extends E2> elems4,
                                                    @Nonnull
                                                    Iterable<? extends E2> elems5)
Description copied from interface: ObjSetFactory
Constructs a new mutable set which merge the elements of the specified iterables.

Specified by:
newMutableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elems1 - the first source of elements for the returned set
elems2 - the second source of elements for the returned set
elems3 - the third source of elements for the returned set
elems4 - the fourth source of elements for the returned set
elems5 - the fifth source of elements for the returned set
Returns:
a new mutable set which merge the elements of the specified iterables

newMutableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newMutableSet(@Nonnull
                                                    Iterator<? extends E2> elements)
Description copied from interface: ObjSetFactory
Constructs a new mutable set containing the elements traversed by the specified iterator.

Specified by:
newMutableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elements - the iterator from which elements are to be placed into the returned set
Returns:
a new mutable set containing the elements traversed by the specified iterator

newMutableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newMutableSet(@Nonnull
                                                    Consumer<Consumer<E2>> elementsSupplier)
Description copied from interface: ObjSetFactory
Constructs a new mutable set of elements consumed by the callback within the given closure.

Example: TODO

Specified by:
newMutableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elementsSupplier - the function which supply mappings for the returned set via the callback passed in
Returns:
a new mutable set of elements consumed by the callback within the given closure

newMutableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newMutableSet(@Nonnull
                                                    E2[] elements)
Description copied from interface: ObjSetFactory
Constructs a new mutable set of elements from the given array.

Specified by:
newMutableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elements - the array whose elements are to be placed into the returned set
Returns:
a new mutable set of elements from the given array

newMutableSetOf

@Nonnull
<E2 extends E> HashObjSet<E2> newMutableSetOf(E2 e1)
Description copied from interface: ObjSetFactory
Constructs a new mutable singleton set of the given element.

Specified by:
newMutableSetOf in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
e1 - the sole element
Returns:
a new mutable singleton set of the given element

newMutableSetOf

@Nonnull
<E2 extends E> HashObjSet<E2> newMutableSetOf(E2 e1,
                                                      E2 e2)
Description copied from interface: ObjSetFactory
Constructs a new mutable set of the two specified elements.

Specified by:
newMutableSetOf in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
e1 - the first element
e2 - the second element
Returns:
a new mutable set of the two specified elements

newMutableSetOf

@Nonnull
<E2 extends E> HashObjSet<E2> newMutableSetOf(E2 e1,
                                                      E2 e2,
                                                      E2 e3)
Description copied from interface: ObjSetFactory
Constructs a new mutable set of the three specified elements.

Specified by:
newMutableSetOf in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
e1 - the first element
e2 - the second element
e3 - the third element
Returns:
a new mutable set of the three specified elements

newMutableSetOf

@Nonnull
<E2 extends E> HashObjSet<E2> newMutableSetOf(E2 e1,
                                                      E2 e2,
                                                      E2 e3,
                                                      E2 e4)
Description copied from interface: ObjSetFactory
Constructs a new mutable set of the four specified elements.

Specified by:
newMutableSetOf in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
e1 - the first element
e2 - the second element
e3 - the third element
e4 - the fourth element
Returns:
a new mutable set of the four specified elements

newMutableSetOf

@Nonnull
<E2 extends E> HashObjSet<E2> newMutableSetOf(E2 e1,
                                                      E2 e2,
                                                      E2 e3,
                                                      E2 e4,
                                                      E2 e5,
                                                      E2... restElements)
Description copied from interface: ObjSetFactory
Constructs a new mutable set of the specified elements.

Specified by:
newMutableSetOf in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
e1 - the first element
e2 - the second element
e3 - the third element
e4 - the fourth element
e5 - the fifth element
restElements - the rest elements to be placed into the set
Returns:
a new mutable set of the specified elements

newUpdatableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newUpdatableSet()
Description copied from interface: ObjSetFactory
Constructs a new empty updatable set of the default expected size.

Specified by:
newUpdatableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Returns:
a new empty updatable set

newUpdatableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newUpdatableSet(int expectedSize)
Description copied from interface: ObjSetFactory
Constructs a new empty updatable set of the given expected size.

Specified by:
newUpdatableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
expectedSize - the expected size of the returned set
Returns:
a new empty updatable set of the given expected size

newUpdatableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newUpdatableSet(@Nonnull
                                                      Iterable<? extends E2> elements,
                                                      int expectedSize)
Description copied from interface: ObjSetFactory
Constructs a new updatable set containing the elements in the specified iterable.

If the specified iterable is an instance of ObjSet and has the same equivalence with this factory (and thus the constructed set), the expectedSize argument is ignored.

Specified by:
newUpdatableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elements - the iterable whose elements are to be placed into the returned set
expectedSize - the expected size of the returned set
Returns:
a new updatable set of the elements of the specified iterable

newUpdatableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newUpdatableSet(@Nonnull
                                                      Iterable<? extends E2> elems1,
                                                      @Nonnull
                                                      Iterable<? extends E2> elems2,
                                                      int expectedSize)
Description copied from interface: ObjSetFactory
Constructs a new updatable set which merge the elements of the specified iterables.

Specified by:
newUpdatableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elems1 - the first source of elements for the returned set
elems2 - the second source of elements for the returned set
expectedSize - the expected size of the returned set
Returns:
a new updatable set which merge the elements of the specified iterables

newUpdatableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newUpdatableSet(@Nonnull
                                                      Iterable<? extends E2> elems1,
                                                      @Nonnull
                                                      Iterable<? extends E2> elems2,
                                                      @Nonnull
                                                      Iterable<? extends E2> elems3,
                                                      int expectedSize)
Description copied from interface: ObjSetFactory
Constructs a new updatable set which merge the elements of the specified iterables.

Specified by:
newUpdatableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elems1 - the first source of elements for the returned set
elems2 - the second source of elements for the returned set
elems3 - the third source of elements for the returned set
expectedSize - the expected size of the returned set
Returns:
a new updatable set which merge the elements of the specified iterables

newUpdatableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newUpdatableSet(@Nonnull
                                                      Iterable<? extends E2> elems1,
                                                      @Nonnull
                                                      Iterable<? extends E2> elems2,
                                                      @Nonnull
                                                      Iterable<? extends E2> elems3,
                                                      @Nonnull
                                                      Iterable<? extends E2> elems4,
                                                      int expectedSize)
Description copied from interface: ObjSetFactory
Constructs a new updatable set which merge the elements of the specified iterables.

Specified by:
newUpdatableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elems1 - the first source of elements for the returned set
elems2 - the second source of elements for the returned set
elems3 - the third source of elements for the returned set
elems4 - the fourth source of elements for the returned set
expectedSize - the expected size of the returned set
Returns:
a new updatable set which merge the elements of the specified iterables

newUpdatableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newUpdatableSet(@Nonnull
                                                      Iterable<? extends E2> elems1,
                                                      @Nonnull
                                                      Iterable<? extends E2> elems2,
                                                      @Nonnull
                                                      Iterable<? extends E2> elems3,
                                                      @Nonnull
                                                      Iterable<? extends E2> elems4,
                                                      @Nonnull
                                                      Iterable<? extends E2> elems5,
                                                      int expectedSize)
Description copied from interface: ObjSetFactory
Constructs a new updatable set which merge the elements of the specified iterables.

Specified by:
newUpdatableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elems1 - the first source of elements for the returned set
elems2 - the second source of elements for the returned set
elems3 - the third source of elements for the returned set
elems4 - the fourth source of elements for the returned set
elems5 - the fifth source of elements for the returned set
expectedSize - the expected size of the returned set
Returns:
a new updatable set which merge the elements of the specified iterables

newUpdatableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newUpdatableSet(@Nonnull
                                                      Iterator<? extends E2> elements,
                                                      int expectedSize)
Description copied from interface: ObjSetFactory
Constructs a new updatable set containing the elements traversed by the specified iterator.

Specified by:
newUpdatableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elements - the iterator from which elements are to be placed into the returned set
expectedSize - the expected size of the returned set
Returns:
a new updatable set containing the elements traversed by the specified iterator

newUpdatableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newUpdatableSet(@Nonnull
                                                      Consumer<Consumer<E2>> elementsSupplier,
                                                      int expectedSize)
Description copied from interface: ObjSetFactory
Constructs a new updatable set of elements consumed by the callback within the given closure.

Example: TODO

Specified by:
newUpdatableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elementsSupplier - the function which supply mappings for the returned set via the callback passed in
expectedSize - the expected size of the returned set
Returns:
a new updatable set of elements consumed by the callback within the given closure

newUpdatableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newUpdatableSet(@Nonnull
                                                      E2[] elements,
                                                      int expectedSize)
Description copied from interface: ObjSetFactory
Constructs a new updatable set of elements from the given array.

Specified by:
newUpdatableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elements - the array whose elements are to be placed into the returned set
expectedSize - the expected size of the returned set
Returns:
a new updatable set of elements from the given array

newUpdatableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newUpdatableSet(@Nonnull
                                                      Iterable<? extends E2> elements)
Description copied from interface: ObjSetFactory
Constructs a new updatable set containing the elements in the specified iterable.

Specified by:
newUpdatableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elements - the iterable whose elements are to be placed into the returned set
Returns:
a new updatable set of the elements of the specified iterable

newUpdatableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newUpdatableSet(@Nonnull
                                                      Iterable<? extends E2> elems1,
                                                      @Nonnull
                                                      Iterable<? extends E2> elems2)
Description copied from interface: ObjSetFactory
Constructs a new updatable set which merge the elements of the specified iterables.

Specified by:
newUpdatableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elems1 - the first source of elements for the returned set
elems2 - the second source of elements for the returned set
Returns:
a new updatable set which merge the elements of the specified iterables

newUpdatableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newUpdatableSet(@Nonnull
                                                      Iterable<? extends E2> elems1,
                                                      @Nonnull
                                                      Iterable<? extends E2> elems2,
                                                      @Nonnull
                                                      Iterable<? extends E2> elems3)
Description copied from interface: ObjSetFactory
Constructs a new updatable set which merge the elements of the specified iterables.

Specified by:
newUpdatableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elems1 - the first source of elements for the returned set
elems2 - the second source of elements for the returned set
elems3 - the third source of elements for the returned set
Returns:
a new updatable set which merge the elements of the specified iterables

newUpdatableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newUpdatableSet(@Nonnull
                                                      Iterable<? extends E2> elems1,
                                                      @Nonnull
                                                      Iterable<? extends E2> elems2,
                                                      @Nonnull
                                                      Iterable<? extends E2> elems3,
                                                      @Nonnull
                                                      Iterable<? extends E2> elems4)
Description copied from interface: ObjSetFactory
Constructs a new updatable set which merge the elements of the specified iterables.

Specified by:
newUpdatableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elems1 - the first source of elements for the returned set
elems2 - the second source of elements for the returned set
elems3 - the third source of elements for the returned set
elems4 - the fourth source of elements for the returned set
Returns:
a new updatable set which merge the elements of the specified iterables

newUpdatableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newUpdatableSet(@Nonnull
                                                      Iterable<? extends E2> elems1,
                                                      @Nonnull
                                                      Iterable<? extends E2> elems2,
                                                      @Nonnull
                                                      Iterable<? extends E2> elems3,
                                                      @Nonnull
                                                      Iterable<? extends E2> elems4,
                                                      @Nonnull
                                                      Iterable<? extends E2> elems5)
Description copied from interface: ObjSetFactory
Constructs a new updatable set which merge the elements of the specified iterables.

Specified by:
newUpdatableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elems1 - the first source of elements for the returned set
elems2 - the second source of elements for the returned set
elems3 - the third source of elements for the returned set
elems4 - the fourth source of elements for the returned set
elems5 - the fifth source of elements for the returned set
Returns:
a new updatable set which merge the elements of the specified iterables

newUpdatableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newUpdatableSet(@Nonnull
                                                      Iterator<? extends E2> elements)
Description copied from interface: ObjSetFactory
Constructs a new updatable set containing the elements traversed by the specified iterator.

Specified by:
newUpdatableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elements - the iterator from which elements are to be placed into the returned set
Returns:
a new updatable set containing the elements traversed by the specified iterator

newUpdatableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newUpdatableSet(@Nonnull
                                                      Consumer<Consumer<E2>> elementsSupplier)
Description copied from interface: ObjSetFactory
Constructs a new updatable set of elements consumed by the callback within the given closure.

Example: TODO

Specified by:
newUpdatableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elementsSupplier - the function which supply mappings for the returned set via the callback passed in
Returns:
a new updatable set of elements consumed by the callback within the given closure

newUpdatableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newUpdatableSet(@Nonnull
                                                      E2[] elements)
Description copied from interface: ObjSetFactory
Constructs a new updatable set of elements from the given array.

Specified by:
newUpdatableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elements - the array whose elements are to be placed into the returned set
Returns:
a new updatable set of elements from the given array

newUpdatableSetOf

@Nonnull
<E2 extends E> HashObjSet<E2> newUpdatableSetOf(E2 e1)
Description copied from interface: ObjSetFactory
Constructs a new updatable singleton set of the given element.

Specified by:
newUpdatableSetOf in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
e1 - the sole element
Returns:
a new updatable singleton set of the given element

newUpdatableSetOf

@Nonnull
<E2 extends E> HashObjSet<E2> newUpdatableSetOf(E2 e1,
                                                        E2 e2)
Description copied from interface: ObjSetFactory
Constructs a new updatable set of the two specified elements.

Specified by:
newUpdatableSetOf in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
e1 - the first element
e2 - the second element
Returns:
a new updatable set of the two specified elements

newUpdatableSetOf

@Nonnull
<E2 extends E> HashObjSet<E2> newUpdatableSetOf(E2 e1,
                                                        E2 e2,
                                                        E2 e3)
Description copied from interface: ObjSetFactory
Constructs a new updatable set of the three specified elements.

Specified by:
newUpdatableSetOf in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
e1 - the first element
e2 - the second element
e3 - the third element
Returns:
a new updatable set of the three specified elements

newUpdatableSetOf

@Nonnull
<E2 extends E> HashObjSet<E2> newUpdatableSetOf(E2 e1,
                                                        E2 e2,
                                                        E2 e3,
                                                        E2 e4)
Description copied from interface: ObjSetFactory
Constructs a new updatable set of the four specified elements.

Specified by:
newUpdatableSetOf in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
e1 - the first element
e2 - the second element
e3 - the third element
e4 - the fourth element
Returns:
a new updatable set of the four specified elements

newUpdatableSetOf

@Nonnull
<E2 extends E> HashObjSet<E2> newUpdatableSetOf(E2 e1,
                                                        E2 e2,
                                                        E2 e3,
                                                        E2 e4,
                                                        E2 e5,
                                                        E2... restElements)
Description copied from interface: ObjSetFactory
Constructs a new updatable set of the specified elements.

Specified by:
newUpdatableSetOf in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
e1 - the first element
e2 - the second element
e3 - the third element
e4 - the fourth element
e5 - the fifth element
restElements - the rest elements to be placed into the set
Returns:
a new updatable set of the specified elements

newImmutableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newImmutableSet(@Nonnull
                                                      Iterable<? extends E2> elements,
                                                      int expectedSize)
Description copied from interface: ObjSetFactory
Constructs a new immutable set containing the elements in the specified iterable.

If the specified iterable is an instance of ObjSet and has the same equivalence with this factory (and thus the constructed set), the expectedSize argument is ignored.

Specified by:
newImmutableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elements - the iterable whose elements are to be placed into the returned set
expectedSize - the expected size of the returned set
Returns:
a new immutable set of the elements of the specified iterable

newImmutableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newImmutableSet(@Nonnull
                                                      Iterable<? extends E2> elems1,
                                                      @Nonnull
                                                      Iterable<? extends E2> elems2,
                                                      int expectedSize)
Description copied from interface: ObjSetFactory
Constructs a new immutable set which merge the elements of the specified iterables.

Specified by:
newImmutableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elems1 - the first source of elements for the returned set
elems2 - the second source of elements for the returned set
expectedSize - the expected size of the returned set
Returns:
a new immutable set which merge the elements of the specified iterables

newImmutableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newImmutableSet(@Nonnull
                                                      Iterable<? extends E2> elems1,
                                                      @Nonnull
                                                      Iterable<? extends E2> elems2,
                                                      @Nonnull
                                                      Iterable<? extends E2> elems3,
                                                      int expectedSize)
Description copied from interface: ObjSetFactory
Constructs a new immutable set which merge the elements of the specified iterables.

Specified by:
newImmutableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elems1 - the first source of elements for the returned set
elems2 - the second source of elements for the returned set
elems3 - the third source of elements for the returned set
expectedSize - the expected size of the returned set
Returns:
a new immutable set which merge the elements of the specified iterables

newImmutableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newImmutableSet(@Nonnull
                                                      Iterable<? extends E2> elems1,
                                                      @Nonnull
                                                      Iterable<? extends E2> elems2,
                                                      @Nonnull
                                                      Iterable<? extends E2> elems3,
                                                      @Nonnull
                                                      Iterable<? extends E2> elems4,
                                                      int expectedSize)
Description copied from interface: ObjSetFactory
Constructs a new immutable set which merge the elements of the specified iterables.

Specified by:
newImmutableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elems1 - the first source of elements for the returned set
elems2 - the second source of elements for the returned set
elems3 - the third source of elements for the returned set
elems4 - the fourth source of elements for the returned set
expectedSize - the expected size of the returned set
Returns:
a new immutable set which merge the elements of the specified iterables

newImmutableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newImmutableSet(@Nonnull
                                                      Iterable<? extends E2> elems1,
                                                      @Nonnull
                                                      Iterable<? extends E2> elems2,
                                                      @Nonnull
                                                      Iterable<? extends E2> elems3,
                                                      @Nonnull
                                                      Iterable<? extends E2> elems4,
                                                      @Nonnull
                                                      Iterable<? extends E2> elems5,
                                                      int expectedSize)
Description copied from interface: ObjSetFactory
Constructs a new immutable set which merge the elements of the specified iterables.

Specified by:
newImmutableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elems1 - the first source of elements for the returned set
elems2 - the second source of elements for the returned set
elems3 - the third source of elements for the returned set
elems4 - the fourth source of elements for the returned set
elems5 - the fifth source of elements for the returned set
expectedSize - the expected size of the returned set
Returns:
a new immutable set which merge the elements of the specified iterables

newImmutableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newImmutableSet(@Nonnull
                                                      Iterator<? extends E2> elements,
                                                      int expectedSize)
Description copied from interface: ObjSetFactory
Constructs a new immutable set containing the elements traversed by the specified iterator.

Specified by:
newImmutableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elements - the iterator from which elements are to be placed into the returned set
expectedSize - the expected size of the returned set
Returns:
a new immutable set containing the elements traversed by the specified iterator

newImmutableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newImmutableSet(@Nonnull
                                                      Consumer<Consumer<E2>> elementsSupplier,
                                                      int expectedSize)
Description copied from interface: ObjSetFactory
Constructs a new immutable set of elements consumed by the callback within the given closure.

Example: TODO

Specified by:
newImmutableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elementsSupplier - the function which supply mappings for the returned set via the callback passed in
expectedSize - the expected size of the returned set
Returns:
a new immutable set of elements consumed by the callback within the given closure

newImmutableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newImmutableSet(@Nonnull
                                                      E2[] elements,
                                                      int expectedSize)
Description copied from interface: ObjSetFactory
Constructs a new immutable set of elements from the given array.

Specified by:
newImmutableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elements - the array whose elements are to be placed into the returned set
expectedSize - the expected size of the returned set
Returns:
a new immutable set of elements from the given array

newImmutableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newImmutableSet(@Nonnull
                                                      Iterable<? extends E2> elements)
Description copied from interface: ObjSetFactory
Constructs a new immutable set containing the elements in the specified iterable.

Specified by:
newImmutableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elements - the iterable whose elements are to be placed into the returned set
Returns:
a new immutable set of the elements of the specified iterable

newImmutableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newImmutableSet(@Nonnull
                                                      Iterable<? extends E2> elems1,
                                                      @Nonnull
                                                      Iterable<? extends E2> elems2)
Description copied from interface: ObjSetFactory
Constructs a new immutable set which merge the elements of the specified iterables.

Specified by:
newImmutableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elems1 - the first source of elements for the returned set
elems2 - the second source of elements for the returned set
Returns:
a new immutable set which merge the elements of the specified iterables

newImmutableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newImmutableSet(@Nonnull
                                                      Iterable<? extends E2> elems1,
                                                      @Nonnull
                                                      Iterable<? extends E2> elems2,
                                                      @Nonnull
                                                      Iterable<? extends E2> elems3)
Description copied from interface: ObjSetFactory
Constructs a new immutable set which merge the elements of the specified iterables.

Specified by:
newImmutableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elems1 - the first source of elements for the returned set
elems2 - the second source of elements for the returned set
elems3 - the third source of elements for the returned set
Returns:
a new immutable set which merge the elements of the specified iterables

newImmutableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newImmutableSet(@Nonnull
                                                      Iterable<? extends E2> elems1,
                                                      @Nonnull
                                                      Iterable<? extends E2> elems2,
                                                      @Nonnull
                                                      Iterable<? extends E2> elems3,
                                                      @Nonnull
                                                      Iterable<? extends E2> elems4)
Description copied from interface: ObjSetFactory
Constructs a new immutable set which merge the elements of the specified iterables.

Specified by:
newImmutableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elems1 - the first source of elements for the returned set
elems2 - the second source of elements for the returned set
elems3 - the third source of elements for the returned set
elems4 - the fourth source of elements for the returned set
Returns:
a new immutable set which merge the elements of the specified iterables

newImmutableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newImmutableSet(@Nonnull
                                                      Iterable<? extends E2> elems1,
                                                      @Nonnull
                                                      Iterable<? extends E2> elems2,
                                                      @Nonnull
                                                      Iterable<? extends E2> elems3,
                                                      @Nonnull
                                                      Iterable<? extends E2> elems4,
                                                      @Nonnull
                                                      Iterable<? extends E2> elems5)
Description copied from interface: ObjSetFactory
Constructs a new immutable set which merge the elements of the specified iterables.

Specified by:
newImmutableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elems1 - the first source of elements for the returned set
elems2 - the second source of elements for the returned set
elems3 - the third source of elements for the returned set
elems4 - the fourth source of elements for the returned set
elems5 - the fifth source of elements for the returned set
Returns:
a new immutable set which merge the elements of the specified iterables

newImmutableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newImmutableSet(@Nonnull
                                                      Iterator<? extends E2> elements)
Description copied from interface: ObjSetFactory
Constructs a new immutable set containing the elements traversed by the specified iterator.

Specified by:
newImmutableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elements - the iterator from which elements are to be placed into the returned set
Returns:
a new immutable set containing the elements traversed by the specified iterator

newImmutableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newImmutableSet(@Nonnull
                                                      Consumer<Consumer<E2>> elementsSupplier)
Description copied from interface: ObjSetFactory
Constructs a new immutable set of elements consumed by the callback within the given closure.

Example: TODO

Specified by:
newImmutableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elementsSupplier - the function which supply mappings for the returned set via the callback passed in
Returns:
a new immutable set of elements consumed by the callback within the given closure

newImmutableSet

@Nonnull
<E2 extends E> HashObjSet<E2> newImmutableSet(@Nonnull
                                                      E2[] elements)
Description copied from interface: ObjSetFactory
Constructs a new immutable set of elements from the given array.

Specified by:
newImmutableSet in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
elements - the array whose elements are to be placed into the returned set
Returns:
a new immutable set of elements from the given array

newImmutableSetOf

@Nonnull
<E2 extends E> HashObjSet<E2> newImmutableSetOf(E2 e1)
Description copied from interface: ObjSetFactory
Constructs a new immutable singleton set of the given element.

Specified by:
newImmutableSetOf in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
e1 - the sole element
Returns:
a new immutable singleton set of the given element

newImmutableSetOf

@Nonnull
<E2 extends E> HashObjSet<E2> newImmutableSetOf(E2 e1,
                                                        E2 e2)
Description copied from interface: ObjSetFactory
Constructs a new immutable set of the two specified elements.

Specified by:
newImmutableSetOf in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
e1 - the first element
e2 - the second element
Returns:
a new immutable set of the two specified elements

newImmutableSetOf

@Nonnull
<E2 extends E> HashObjSet<E2> newImmutableSetOf(E2 e1,
                                                        E2 e2,
                                                        E2 e3)
Description copied from interface: ObjSetFactory
Constructs a new immutable set of the three specified elements.

Specified by:
newImmutableSetOf in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
e1 - the first element
e2 - the second element
e3 - the third element
Returns:
a new immutable set of the three specified elements

newImmutableSetOf

@Nonnull
<E2 extends E> HashObjSet<E2> newImmutableSetOf(E2 e1,
                                                        E2 e2,
                                                        E2 e3,
                                                        E2 e4)
Description copied from interface: ObjSetFactory
Constructs a new immutable set of the four specified elements.

Specified by:
newImmutableSetOf in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
e1 - the first element
e2 - the second element
e3 - the third element
e4 - the fourth element
Returns:
a new immutable set of the four specified elements

newImmutableSetOf

@Nonnull
<E2 extends E> HashObjSet<E2> newImmutableSetOf(E2 e1,
                                                        E2 e2,
                                                        E2 e3,
                                                        E2 e4,
                                                        E2 e5,
                                                        E2... restElements)
Description copied from interface: ObjSetFactory
Constructs a new immutable set of the specified elements.

Specified by:
newImmutableSetOf in interface ObjSetFactory<E,HashObjSetFactory<E>>
Type Parameters:
E2 - the element type of the returned set
Parameters:
e1 - the first element
e2 - the second element
e3 - the third element
e4 - the fourth element
e5 - the fifth element
restElements - the rest elements to be placed into the set
Returns:
a new immutable set of the specified elements