Package io.vavr.collection
Class HashMultimap.Builder<V>
java.lang.Object
io.vavr.collection.HashMultimap.Builder<V>
- Enclosing class:
HashMultimap<K,
V>
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final Multimap.ContainerType
private final AbstractMultimap.SerializableSupplier
<Traversable<?>> -
Constructor Summary
ConstructorsModifierConstructorDescriptionprivate
Builder
(Multimap.ContainerType containerType, AbstractMultimap.SerializableSupplier<Traversable<?>> emptyContainer) -
Method Summary
Modifier and TypeMethodDescriptionReturns aCollector
which may be used in conjunction withStream.collect(Collector)
to obtain aHashMultimap
.<K,
V2 extends V>
HashMultimap<K, V2> empty()
Returns the emptyHashMultimap
.<K,
V2 extends V>
HashMultimap<K, V2> Returns a HashMultimap containingn
times the givenelement
<K,
V2 extends V>
HashMultimap<K, V2> Returns a HashMultimap containingn
values supplied by a given Suppliers
.<K,
V2 extends V>
HashMultimap<K, V2> Creates a HashMultimap of the given key-value pair.<K,
V2 extends V>
HashMultimap<K, V2> of
(K key, V2 value) Creates a HashMultimap of the given key-value pair.<K,
V2 extends V>
HashMultimap<K, V2> of
(K k1, V2 v1, K k2, V2 v2) Creates a HashMultimap of the given list of key-value pairs.<K,
V2 extends V>
HashMultimap<K, V2> of
(K k1, V2 v1, K k2, V2 v2, K k3, V2 v3) Creates a HashMultimap of the given list of key-value pairs.<K,
V2 extends V>
HashMultimap<K, V2> of
(K k1, V2 v1, K k2, V2 v2, K k3, V2 v3, K k4, V2 v4) Creates a HashMultimap of the given list of key-value pairs.<K,
V2 extends V>
HashMultimap<K, V2> of
(K k1, V2 v1, K k2, V2 v2, K k3, V2 v3, K k4, V2 v4, K k5, V2 v5) Creates a HashMultimap of the given list of key-value pairs.<K,
V2 extends V>
HashMultimap<K, V2> of
(K k1, V2 v1, K k2, V2 v2, K k3, V2 v3, K k4, V2 v4, K k5, V2 v5, K k6, V2 v6) Creates a HashMultimap of the given list of key-value pairs.<K,
V2 extends V>
HashMultimap<K, V2> of
(K k1, V2 v1, K k2, V2 v2, K k3, V2 v3, K k4, V2 v4, K k5, V2 v5, K k6, V2 v6, K k7, V2 v7) Creates a HashMultimap of the given list of key-value pairs.<K,
V2 extends V>
HashMultimap<K, V2> of
(K k1, V2 v1, K k2, V2 v2, K k3, V2 v3, K k4, V2 v4, K k5, V2 v5, K k6, V2 v6, K k7, V2 v7, K k8, V2 v8) Creates a HashMultimap of the given list of key-value pairs.<K,
V2 extends V>
HashMultimap<K, V2> of
(K k1, V2 v1, K k2, V2 v2, K k3, V2 v3, K k4, V2 v4, K k5, V2 v5, K k6, V2 v6, K k7, V2 v7, K k8, V2 v8, K k9, V2 v9) Creates a HashMultimap of the given list of key-value pairs.<K,
V2 extends V>
HashMultimap<K, V2> of
(K k1, V2 v1, K k2, V2 v2, K k3, V2 v3, K k4, V2 v4, K k5, V2 v5, K k6, V2 v6, K k7, V2 v7, K k8, V2 v8, K k9, V2 v9, K k10, V2 v10) Creates a HashMultimap of the given list of key-value pairs.<K,
V2 extends V>
HashMultimap<K, V2> Returns aHashMultimap
, from a source java.util.Map.<T,
K, V2 extends V>
HashMultimap<K, V2> ofAll
(Stream<? extends T> stream, Function<? super T, ? extends K> keyMapper, Function<? super T, ? extends V2> valueMapper) Returns aHashMultimap
, from entries mapped from stream.<T,
K, V2 extends V>
HashMultimap<K, V2> Returns aHashMultimap
, from entries mapped from stream.final <K,
V2 extends V>
HashMultimap<K, V2> Creates aHashMultimap
of the given entries.<K,
V2 extends V>
HashMultimap<K, V2> Creates aHashMultimap
of the given entries.final <K,
V2 extends V>
HashMultimap<K, V2> Creates aHashMultimap
of the given entries.<K,
V2 extends V>
HashMultimap<K, V2> Returns a HashMultimap containingn
values of a given Functionf
over a range of integer values from 0 ton - 1
.
-
Field Details
-
containerType
-
emptyContainer
-
-
Constructor Details
-
Builder
private Builder(Multimap.ContainerType containerType, AbstractMultimap.SerializableSupplier<Traversable<?>> emptyContainer)
-
-
Method Details
-
empty
Returns the emptyHashMultimap
.- Type Parameters:
K
- The key typeV2
- The value type- Returns:
- A new empty HashMultimap.
-
ofEntries
public <K,V2 extends V> HashMultimap<K,V2> ofEntries(Iterable<? extends Tuple2<? extends K, ? extends V2>> entries) Creates aHashMultimap
of the given entries.- Type Parameters:
K
- The key typeV2
- The value type- Parameters:
entries
- Multimap entries- Returns:
- A new HashMultimap containing the given entries.
-
ofEntries
@SafeVarargs public final <K,V2 extends V> HashMultimap<K,V2> ofEntries(Tuple2<? extends K, ? extends V2>... entries) Creates aHashMultimap
of the given entries.- Type Parameters:
K
- The key typeV2
- The value type- Parameters:
entries
- Multimap entries- Returns:
- A new HashMultimap containing the given entries.
-
ofEntries
@SafeVarargs public final <K,V2 extends V> HashMultimap<K,V2> ofEntries(Map.Entry<? extends K, ? extends V2>... entries) Creates aHashMultimap
of the given entries.- Type Parameters:
K
- The key typeV2
- The value type- Parameters:
entries
- Multimap entries- Returns:
- A new HashMultimap containing the given entries.
-
ofAll
Returns aHashMultimap
, from a source java.util.Map.- Type Parameters:
K
- The key typeV2
- The value type- Parameters:
map
- A map- Returns:
- A new Multimap containing the given map entries
-
ofAll
public <T,K, HashMultimap<K,V2 extends V> V2> ofAll(Stream<? extends T> stream, Function<? super T, ? extends K> keyMapper, Function<? super T, ? extends V2> valueMapper) Returns aHashMultimap
, from entries mapped from stream.- Type Parameters:
T
- The stream element typeK
- The key typeV2
- The value type- Parameters:
stream
- the source streamkeyMapper
- the key mappervalueMapper
- the value mapper- Returns:
- A new Multimap
-
ofAll
public <T,K, HashMultimap<K,V2 extends V> V2> ofAll(Stream<? extends T> stream, Function<? super T, Tuple2<? extends K, ? extends V2>> entryMapper) Returns aHashMultimap
, from entries mapped from stream.- Type Parameters:
T
- The stream element typeK
- The key typeV2
- The value type- Parameters:
stream
- the source streamentryMapper
- the entry mapper- Returns:
- A new HashMultimap
-
tabulate
public <K,V2 extends V> HashMultimap<K,V2> tabulate(int n, Function<? super Integer, ? extends Tuple2<? extends K, ? extends V2>> f) Returns a HashMultimap containingn
values of a given Functionf
over a range of integer values from 0 ton - 1
.- Type Parameters:
K
- The key typeV2
- The value type- Parameters:
n
- The number of elements in the HashMultimapf
- The Function computing element values- Returns:
- A HashMultimap consisting of elements
f(0),f(1), ..., f(n - 1)
- Throws:
NullPointerException
- iff
is null
-
fill
public <K,V2 extends V> HashMultimap<K,V2> fill(int n, Supplier<? extends Tuple2<? extends K, ? extends V2>> s) Returns a HashMultimap containingn
values supplied by a given Suppliers
.- Type Parameters:
K
- The key typeV2
- The value type- Parameters:
n
- The number of elements in the HashMultimaps
- The Supplier computing element values- Returns:
- A HashMultimap of size
n
, where each element contains the result supplied bys
. - Throws:
NullPointerException
- ifs
is null
-
fill
Returns a HashMultimap containingn
times the givenelement
- Type Parameters:
K
- The key typeV2
- The value type- Parameters:
n
- The number of elements in the HashMultimapelement
- The element- Returns:
- A HashMultimap of size
1
, where each element containsn
values ofelement._2
.
-
of
Creates a HashMultimap of the given key-value pair.- Type Parameters:
K
- The key typeV2
- The value type- Parameters:
key
- a key for the mapvalue
- the value for key- Returns:
- A new Multimap containing the given entries
-
of
Creates a HashMultimap of the given list of key-value pairs.- Type Parameters:
K
- The key typeV2
- The value type- Parameters:
k1
- a key for the mapv1
- the value for k1k2
- a key for the mapv2
- the value for k2- Returns:
- A new Multimap containing the given entries
-
of
Creates a HashMultimap of the given list of key-value pairs.- Type Parameters:
K
- The key typeV2
- The value type- Parameters:
k1
- a key for the mapv1
- the value for k1k2
- a key for the mapv2
- the value for k2k3
- a key for the mapv3
- the value for k3- Returns:
- A new Multimap containing the given entries
-
of
Creates a HashMultimap of the given list of key-value pairs.- Type Parameters:
K
- The key typeV2
- The value type- Parameters:
k1
- a key for the mapv1
- the value for k1k2
- a key for the mapv2
- the value for k2k3
- a key for the mapv3
- the value for k3k4
- a key for the mapv4
- the value for k4- Returns:
- A new Multimap containing the given entries
-
of
public <K,V2 extends V> HashMultimap<K,V2> of(K k1, V2 v1, K k2, V2 v2, K k3, V2 v3, K k4, V2 v4, K k5, V2 v5) Creates a HashMultimap of the given list of key-value pairs.- Type Parameters:
K
- The key typeV2
- The value type- Parameters:
k1
- a key for the mapv1
- the value for k1k2
- a key for the mapv2
- the value for k2k3
- a key for the mapv3
- the value for k3k4
- a key for the mapv4
- the value for k4k5
- a key for the mapv5
- the value for k5- Returns:
- A new Multimap containing the given entries
-
of
public <K,V2 extends V> HashMultimap<K,V2> of(K k1, V2 v1, K k2, V2 v2, K k3, V2 v3, K k4, V2 v4, K k5, V2 v5, K k6, V2 v6) Creates a HashMultimap of the given list of key-value pairs.- Type Parameters:
K
- The key typeV2
- The value type- Parameters:
k1
- a key for the mapv1
- the value for k1k2
- a key for the mapv2
- the value for k2k3
- a key for the mapv3
- the value for k3k4
- a key for the mapv4
- the value for k4k5
- a key for the mapv5
- the value for k5k6
- a key for the mapv6
- the value for k6- Returns:
- A new Multimap containing the given entries
-
of
public <K,V2 extends V> HashMultimap<K,V2> of(K k1, V2 v1, K k2, V2 v2, K k3, V2 v3, K k4, V2 v4, K k5, V2 v5, K k6, V2 v6, K k7, V2 v7) Creates a HashMultimap of the given list of key-value pairs.- Type Parameters:
K
- The key typeV2
- The value type- Parameters:
k1
- a key for the mapv1
- the value for k1k2
- a key for the mapv2
- the value for k2k3
- a key for the mapv3
- the value for k3k4
- a key for the mapv4
- the value for k4k5
- a key for the mapv5
- the value for k5k6
- a key for the mapv6
- the value for k6k7
- a key for the mapv7
- the value for k7- Returns:
- A new Multimap containing the given entries
-
of
public <K,V2 extends V> HashMultimap<K,V2> of(K k1, V2 v1, K k2, V2 v2, K k3, V2 v3, K k4, V2 v4, K k5, V2 v5, K k6, V2 v6, K k7, V2 v7, K k8, V2 v8) Creates a HashMultimap of the given list of key-value pairs.- Type Parameters:
K
- The key typeV2
- The value type- Parameters:
k1
- a key for the mapv1
- the value for k1k2
- a key for the mapv2
- the value for k2k3
- a key for the mapv3
- the value for k3k4
- a key for the mapv4
- the value for k4k5
- a key for the mapv5
- the value for k5k6
- a key for the mapv6
- the value for k6k7
- a key for the mapv7
- the value for k7k8
- a key for the mapv8
- the value for k8- Returns:
- A new Multimap containing the given entries
-
of
public <K,V2 extends V> HashMultimap<K,V2> of(K k1, V2 v1, K k2, V2 v2, K k3, V2 v3, K k4, V2 v4, K k5, V2 v5, K k6, V2 v6, K k7, V2 v7, K k8, V2 v8, K k9, V2 v9) Creates a HashMultimap of the given list of key-value pairs.- Type Parameters:
K
- The key typeV2
- The value type- Parameters:
k1
- a key for the mapv1
- the value for k1k2
- a key for the mapv2
- the value for k2k3
- a key for the mapv3
- the value for k3k4
- a key for the mapv4
- the value for k4k5
- a key for the mapv5
- the value for k5k6
- a key for the mapv6
- the value for k6k7
- a key for the mapv7
- the value for k7k8
- a key for the mapv8
- the value for k8k9
- a key for the mapv9
- the value for k9- Returns:
- A new Multimap containing the given entries
-
of
public <K,V2 extends V> HashMultimap<K,V2> of(K k1, V2 v1, K k2, V2 v2, K k3, V2 v3, K k4, V2 v4, K k5, V2 v5, K k6, V2 v6, K k7, V2 v7, K k8, V2 v8, K k9, V2 v9, K k10, V2 v10) Creates a HashMultimap of the given list of key-value pairs.- Type Parameters:
K
- The key typeV2
- The value type- Parameters:
k1
- a key for the mapv1
- the value for k1k2
- a key for the mapv2
- the value for k2k3
- a key for the mapv3
- the value for k3k4
- a key for the mapv4
- the value for k4k5
- a key for the mapv5
- the value for k5k6
- a key for the mapv6
- the value for k6k7
- a key for the mapv7
- the value for k7k8
- a key for the mapv8
- the value for k8k9
- a key for the mapv9
- the value for k9k10
- a key for the mapv10
- the value for k10- Returns:
- A new Multimap containing the given entries
-
of
Creates a HashMultimap of the given key-value pair. Returns a singletonHashMultimap
, i.e. aHashMultimap
of one entry.- Type Parameters:
K
- The key typeV2
- The value type- Parameters:
entry
- A tuple containing the key-value pair.- Returns:
- A new HashMultimap containing the given entry.
-
collector
Returns aCollector
which may be used in conjunction withStream.collect(Collector)
to obtain aHashMultimap
.- Type Parameters:
K
- The key typeV2
- The value type- Returns:
- A
HashMultimap
Collector.
-