com.koloboke.collect.map
Interface ByteByteMapFactory<F extends ByteByteMapFactory<F>>

Type Parameters:
F - the concrete factory type which extends this interface
All Superinterfaces:
ContainerFactory<F>
All Known Subinterfaces:
HashByteByteMapFactory

public interface ByteByteMapFactory<F extends ByteByteMapFactory<F>>
extends ContainerFactory<F>

An immutable factory of ByteByteMaps.

See Also:
ByteByteMap, @KolobokeMap

Method Summary
 byte getDefaultValue()
          Returns the value to which default value of the maps constructed by this factory is set.
 ByteByteMap newImmutableMap(byte[] keys, byte[] values)
          Constructs a new immutable map with the given mappings, i. e. pairs of elements from the keys and values arrays at the same index.
 ByteByteMap newImmutableMap(Byte[] keys, Byte[] values)
          Constructs a new immutable map with the given mappings, i. e. pairs of elements from the keys and values arrays at the same index.
 ByteByteMap newImmutableMap(byte[] keys, byte[] values, int expectedSize)
          Constructs a new immutable map with the given mappings, i. e. pairs of elements from the keys and values arrays at the same index.
 ByteByteMap newImmutableMap(Byte[] keys, Byte[] values, int expectedSize)
          Constructs a new immutable map with the given mappings, i. e. pairs of elements from the keys and values arrays at the same index.
 ByteByteMap newImmutableMap(Consumer<ByteByteConsumer> entriesSupplier)
          Constructs a new immutable map filled with mappings consumed by the callback within the given closure.
 ByteByteMap newImmutableMap(Consumer<ByteByteConsumer> entriesSupplier, int expectedSize)
          Constructs a new immutable map filled with mappings consumed by the callback within the given closure.
 ByteByteMap newImmutableMap(Iterable<Byte> keys, Iterable<Byte> values)
          Constructs a new immutable map with the given mappings, i. e. pairs of elements from the keys and values iterables at the same iteration position.
 ByteByteMap newImmutableMap(Iterable<Byte> keys, Iterable<Byte> values, int expectedSize)
          Constructs a new immutable map with the given mappings, i. e. pairs of elements from the keys and values iterables at the same iteration position.
 ByteByteMap newImmutableMap(Map<Byte,Byte> map)
          Constructs a new immutable map with the same mappings as the specified map.
 ByteByteMap newImmutableMap(Map<Byte,Byte> map1, Map<Byte,Byte> map2)
          Constructs a new immutable map which merge the mappings of the specified maps.
 ByteByteMap newImmutableMap(Map<Byte,Byte> map1, Map<Byte,Byte> map2, int expectedSize)
          Constructs a new immutable map which merge the mappings of the specified maps.
 ByteByteMap newImmutableMap(Map<Byte,Byte> map1, Map<Byte,Byte> map2, Map<Byte,Byte> map3)
          Constructs a new immutable map which merge the mappings of the specified maps.
 ByteByteMap newImmutableMap(Map<Byte,Byte> map1, Map<Byte,Byte> map2, Map<Byte,Byte> map3, int expectedSize)
          Constructs a new immutable map which merge the mappings of the specified maps.
 ByteByteMap newImmutableMap(Map<Byte,Byte> map1, Map<Byte,Byte> map2, Map<Byte,Byte> map3, Map<Byte,Byte> map4)
          Constructs a new immutable map which merge the mappings of the specified maps.
 ByteByteMap newImmutableMap(Map<Byte,Byte> map1, Map<Byte,Byte> map2, Map<Byte,Byte> map3, Map<Byte,Byte> map4, int expectedSize)
          Constructs a new immutable map which merge the mappings of the specified maps.
 ByteByteMap newImmutableMap(Map<Byte,Byte> map1, Map<Byte,Byte> map2, Map<Byte,Byte> map3, Map<Byte,Byte> map4, Map<Byte,Byte> map5)
          Constructs a new immutable map which merge the mappings of the specified maps.
 ByteByteMap newImmutableMap(Map<Byte,Byte> map1, Map<Byte,Byte> map2, Map<Byte,Byte> map3, Map<Byte,Byte> map4, Map<Byte,Byte> map5, int expectedSize)
          Constructs a new immutable map which merge the mappings of the specified maps.
 ByteByteMap newImmutableMapOf(byte k1, byte v1)
          Constructs a new immutable map of the single specified mapping.
 ByteByteMap newImmutableMapOf(byte k1, byte v1, byte k2, byte v2)
          Constructs a new immutable map of the two specified mappings.
 ByteByteMap newImmutableMapOf(byte k1, byte v1, byte k2, byte v2, byte k3, byte v3)
          Constructs a new immutable map of the three specified mappings.
 ByteByteMap newImmutableMapOf(byte k1, byte v1, byte k2, byte v2, byte k3, byte v3, byte k4, byte v4)
          Constructs a new immutable map of the four specified mappings.
 ByteByteMap newImmutableMapOf(byte k1, byte v1, byte k2, byte v2, byte k3, byte v3, byte k4, byte v4, byte k5, byte v5)
          Constructs a new immutable map of the five specified mappings.
 ByteByteMap newMutableMap()
          Constructs a new empty mutable map of the default expected size.
 ByteByteMap newMutableMap(byte[] keys, byte[] values)
          Constructs a new mutable map with the given mappings, i. e. pairs of elements from the keys and values arrays at the same index.
 ByteByteMap newMutableMap(Byte[] keys, Byte[] values)
          Constructs a new mutable map with the given mappings, i. e. pairs of elements from the keys and values arrays at the same index.
 ByteByteMap newMutableMap(byte[] keys, byte[] values, int expectedSize)
          Constructs a new mutable map with the given mappings, i. e. pairs of elements from the keys and values arrays at the same index.
 ByteByteMap newMutableMap(Byte[] keys, Byte[] values, int expectedSize)
          Constructs a new mutable map with the given mappings, i. e. pairs of elements from the keys and values arrays at the same index.
 ByteByteMap newMutableMap(Consumer<ByteByteConsumer> entriesSupplier)
          Constructs a new mutable map filled with mappings consumed by the callback within the given closure.
 ByteByteMap newMutableMap(Consumer<ByteByteConsumer> entriesSupplier, int expectedSize)
          Constructs a new mutable map filled with mappings consumed by the callback within the given closure.
 ByteByteMap newMutableMap(int expectedSize)
          Constructs a new empty mutable map of the given expected size.
 ByteByteMap newMutableMap(Iterable<Byte> keys, Iterable<Byte> values)
          Constructs a new mutable map with the given mappings, i. e. pairs of elements from the keys and values iterables at the same iteration position.
 ByteByteMap newMutableMap(Iterable<Byte> keys, Iterable<Byte> values, int expectedSize)
          Constructs a new mutable map with the given mappings, i. e. pairs of elements from the keys and values iterables at the same iteration position.
 ByteByteMap newMutableMap(Map<Byte,Byte> map)
          Constructs a new mutable map with the same mappings as the specified map.
 ByteByteMap newMutableMap(Map<Byte,Byte> map1, Map<Byte,Byte> map2)
          Constructs a new mutable map which merge the mappings of the specified maps.
 ByteByteMap newMutableMap(Map<Byte,Byte> map1, Map<Byte,Byte> map2, int expectedSize)
          Constructs a new mutable map which merge the mappings of the specified maps.
 ByteByteMap newMutableMap(Map<Byte,Byte> map1, Map<Byte,Byte> map2, Map<Byte,Byte> map3)
          Constructs a new mutable map which merge the mappings of the specified maps.
 ByteByteMap newMutableMap(Map<Byte,Byte> map1, Map<Byte,Byte> map2, Map<Byte,Byte> map3, int expectedSize)
          Constructs a new mutable map which merge the mappings of the specified maps.
 ByteByteMap newMutableMap(Map<Byte,Byte> map1, Map<Byte,Byte> map2, Map<Byte,Byte> map3, Map<Byte,Byte> map4)
          Constructs a new mutable map which merge the mappings of the specified maps.
 ByteByteMap newMutableMap(Map<Byte,Byte> map1, Map<Byte,Byte> map2, Map<Byte,Byte> map3, Map<Byte,Byte> map4, int expectedSize)
          Constructs a new mutable map which merge the mappings of the specified maps.
 ByteByteMap newMutableMap(Map<Byte,Byte> map1, Map<Byte,Byte> map2, Map<Byte,Byte> map3, Map<Byte,Byte> map4, Map<Byte,Byte> map5)
          Constructs a new mutable map which merge the mappings of the specified maps.
 ByteByteMap newMutableMap(Map<Byte,Byte> map1, Map<Byte,Byte> map2, Map<Byte,Byte> map3, Map<Byte,Byte> map4, Map<Byte,Byte> map5, int expectedSize)
          Constructs a new mutable map which merge the mappings of the specified maps.
 ByteByteMap newMutableMapOf(byte k1, byte v1)
          Constructs a new mutable map of the single specified mapping.
 ByteByteMap newMutableMapOf(byte k1, byte v1, byte k2, byte v2)
          Constructs a new mutable map of the two specified mappings.
 ByteByteMap newMutableMapOf(byte k1, byte v1, byte k2, byte v2, byte k3, byte v3)
          Constructs a new mutable map of the three specified mappings.
 ByteByteMap newMutableMapOf(byte k1, byte v1, byte k2, byte v2, byte k3, byte v3, byte k4, byte v4)
          Constructs a new mutable map of the four specified mappings.
 ByteByteMap newMutableMapOf(byte k1, byte v1, byte k2, byte v2, byte k3, byte v3, byte k4, byte v4, byte k5, byte v5)
          Constructs a new mutable map of the five specified mappings.
 ByteByteMap newUpdatableMap()
          Constructs a new empty updatable map of the default expected size.
 ByteByteMap newUpdatableMap(byte[] keys, byte[] values)
          Constructs a new updatable map with the given mappings, i. e. pairs of elements from the keys and values arrays at the same index.
 ByteByteMap newUpdatableMap(Byte[] keys, Byte[] values)
          Constructs a new updatable map with the given mappings, i. e. pairs of elements from the keys and values arrays at the same index.
 ByteByteMap newUpdatableMap(byte[] keys, byte[] values, int expectedSize)
          Constructs a new updatable map with the given mappings, i. e. pairs of elements from the keys and values arrays at the same index.
 ByteByteMap newUpdatableMap(Byte[] keys, Byte[] values, int expectedSize)
          Constructs a new updatable map with the given mappings, i. e. pairs of elements from the keys and values arrays at the same index.
 ByteByteMap newUpdatableMap(Consumer<ByteByteConsumer> entriesSupplier)
          Constructs a new updatable map filled with mappings consumed by the callback within the given closure.
 ByteByteMap newUpdatableMap(Consumer<ByteByteConsumer> entriesSupplier, int expectedSize)
          Constructs a new updatable map filled with mappings consumed by the callback within the given closure.
 ByteByteMap newUpdatableMap(int expectedSize)
          Constructs a new empty updatable map of the given expected size.
 ByteByteMap newUpdatableMap(Iterable<Byte> keys, Iterable<Byte> values)
          Constructs a new updatable map with the given mappings, i. e. pairs of elements from the keys and values iterables at the same iteration position.
 ByteByteMap newUpdatableMap(Iterable<Byte> keys, Iterable<Byte> values, int expectedSize)
          Constructs a new updatable map with the given mappings, i. e. pairs of elements from the keys and values iterables at the same iteration position.
 ByteByteMap newUpdatableMap(Map<Byte,Byte> map)
          Constructs a new updatable map with the same mappings as the specified map.
 ByteByteMap newUpdatableMap(Map<Byte,Byte> map1, Map<Byte,Byte> map2)
          Constructs a new updatable map which merge the mappings of the specified maps.
 ByteByteMap newUpdatableMap(Map<Byte,Byte> map1, Map<Byte,Byte> map2, int expectedSize)
          Constructs a new updatable map which merge the mappings of the specified maps.
 ByteByteMap newUpdatableMap(Map<Byte,Byte> map1, Map<Byte,Byte> map2, Map<Byte,Byte> map3)
          Constructs a new updatable map which merge the mappings of the specified maps.
 ByteByteMap newUpdatableMap(Map<Byte,Byte> map1, Map<Byte,Byte> map2, Map<Byte,Byte> map3, int expectedSize)
          Constructs a new updatable map which merge the mappings of the specified maps.
 ByteByteMap newUpdatableMap(Map<Byte,Byte> map1, Map<Byte,Byte> map2, Map<Byte,Byte> map3, Map<Byte,Byte> map4)
          Constructs a new updatable map which merge the mappings of the specified maps.
 ByteByteMap newUpdatableMap(Map<Byte,Byte> map1, Map<Byte,Byte> map2, Map<Byte,Byte> map3, Map<Byte,Byte> map4, int expectedSize)
          Constructs a new updatable map which merge the mappings of the specified maps.
 ByteByteMap newUpdatableMap(Map<Byte,Byte> map1, Map<Byte,Byte> map2, Map<Byte,Byte> map3, Map<Byte,Byte> map4, Map<Byte,Byte> map5)
          Constructs a new updatable map which merge the mappings of the specified maps.
 ByteByteMap newUpdatableMap(Map<Byte,Byte> map1, Map<Byte,Byte> map2, Map<Byte,Byte> map3, Map<Byte,Byte> map4, Map<Byte,Byte> map5, int expectedSize)
          Constructs a new updatable map which merge the mappings of the specified maps.
 ByteByteMap newUpdatableMapOf(byte k1, byte v1)
          Constructs a new updatable map of the single specified mapping.
 ByteByteMap newUpdatableMapOf(byte k1, byte v1, byte k2, byte v2)
          Constructs a new updatable map of the two specified mappings.
 ByteByteMap newUpdatableMapOf(byte k1, byte v1, byte k2, byte v2, byte k3, byte v3)
          Constructs a new updatable map of the three specified mappings.
 ByteByteMap newUpdatableMapOf(byte k1, byte v1, byte k2, byte v2, byte k3, byte v3, byte k4, byte v4)
          Constructs a new updatable map of the four specified mappings.
 ByteByteMap newUpdatableMapOf(byte k1, byte v1, byte k2, byte v2, byte k3, byte v3, byte k4, byte v4, byte k5, byte v5)
          Constructs a new updatable map of the five specified mappings.
 F withDefaultValue(byte defaultValue)
          Returns a copy of this factory, with exception that it constructs maps with default value set to the given byte value.
 
Methods inherited from interface com.koloboke.collect.ContainerFactory
getDefaultExpectedSize, withDefaultExpectedSize
 

Method Detail

getDefaultValue

byte getDefaultValue()
Returns the value to which default value of the maps constructed by this factory is set. Default value is (byte) 0.

Returns:
the default value of the maps constructed by this factory

withDefaultValue

@Nonnull
F withDefaultValue(byte defaultValue)
Returns a copy of this factory, with exception that it constructs maps with default value set to the given byte value.

Parameters:
defaultValue - the new default byte value
Returns:
a copy of this factory, which constructs maps with the given defaultValue

newMutableMap

@Nonnull
ByteByteMap newMutableMap()
Constructs a new empty mutable map of the default expected size.

Returns:
a new empty mutable map

newMutableMap

@Nonnull
ByteByteMap newMutableMap(int expectedSize)
Constructs a new empty mutable map of the given expected size.

Parameters:
expectedSize - the expected size of the returned map
Returns:
a new empty mutable map of the given expected size

newMutableMap

@Nonnull
ByteByteMap newMutableMap(@Nonnull
                                  Map<Byte,Byte> map1,
                                  @Nonnull
                                  Map<Byte,Byte> map2,
                                  int expectedSize)
Constructs a new mutable map which merge the mappings of the specified maps. On conflict, mappings from the map2 have priority over mappings from the map1 with the same keys.

Parameters:
map1 - the first map to merge
map2 - the second map to merge
expectedSize - the expected size of the returned map
Returns:
a new mutable map which merge the mappings of the specified maps

newMutableMap

@Nonnull
ByteByteMap newMutableMap(@Nonnull
                                  Map<Byte,Byte> map1,
                                  @Nonnull
                                  Map<Byte,Byte> map2,
                                  @Nonnull
                                  Map<Byte,Byte> map3,
                                  int expectedSize)
Constructs a new mutable map which merge the mappings of the specified maps. On conflict, mappings from the maps passed later in the argument list have priority over mappings from the maps passed earlier with the same keys.

Parameters:
map1 - the first map to merge
map2 - the second map to merge
map3 - the third map to merge
expectedSize - the expected size of the returned map
Returns:
a new mutable map which merge the mappings of the specified maps

newMutableMap

@Nonnull
ByteByteMap newMutableMap(@Nonnull
                                  Map<Byte,Byte> map1,
                                  @Nonnull
                                  Map<Byte,Byte> map2,
                                  @Nonnull
                                  Map<Byte,Byte> map3,
                                  @Nonnull
                                  Map<Byte,Byte> map4,
                                  int expectedSize)
Constructs a new mutable map which merge the mappings of the specified maps. On conflict, mappings from the maps passed later in the argument list have priority over mappings from the maps passed earlier with the same keys.

Parameters:
map1 - the first map to merge
map2 - the second map to merge
map3 - the third map to merge
map4 - the fourth map to merge
expectedSize - the expected size of the returned map
Returns:
a new mutable map which merge the mappings of the specified maps

newMutableMap

@Nonnull
ByteByteMap newMutableMap(@Nonnull
                                  Map<Byte,Byte> map1,
                                  @Nonnull
                                  Map<Byte,Byte> map2,
                                  @Nonnull
                                  Map<Byte,Byte> map3,
                                  @Nonnull
                                  Map<Byte,Byte> map4,
                                  @Nonnull
                                  Map<Byte,Byte> map5,
                                  int expectedSize)
Constructs a new mutable map which merge the mappings of the specified maps. On conflict, mappings from the maps passed later in the argument list have priority over mappings from the maps passed earlier with the same keys.

Parameters:
map1 - the first map to merge
map2 - the second map to merge
map3 - the third map to merge
map4 - the fourth map to merge
map5 - the fifth map to merge
expectedSize - the expected size of the returned map
Returns:
a new mutable map which merge the mappings of the specified maps

newMutableMap

@Nonnull
ByteByteMap newMutableMap(@Nonnull
                                  Consumer<ByteByteConsumer> entriesSupplier,
                                  int expectedSize)
Constructs a new mutable map filled with mappings consumed by the callback within the given closure. Mappings supplied later within the closure have priority over the mappings passed earlier with the same keys.

Example: TODO

Parameters:
entriesSupplier - the function which supply mappings for the returned map via the callback passed in
expectedSize - the expected size of the returned map
Returns:
a new mutable map with mappings consumed by the callback within the given closure

newMutableMap

@Nonnull
ByteByteMap newMutableMap(@Nonnull
                                  byte[] keys,
                                  @Nonnull
                                  byte[] values,
                                  int expectedSize)
Constructs a new mutable map with the given mappings, i. e. pairs of elements from the keys and values arrays at the same index. If keys array have duplicate elements, value corresponding the key with the highest index is left in the returned map.

Parameters:
keys - the keys of the returned map
values - the values of the returned map, each value is associated with the element of the keys array at the same index
expectedSize - the expected size of the returned map
Returns:
a new mutable map with the given mappings
Throws:
IllegalArgumentException - if keys and values arrays have different length

newMutableMap

@Nonnull
ByteByteMap newMutableMap(@Nonnull
                                  Byte[] keys,
                                  @Nonnull
                                  Byte[] values,
                                  int expectedSize)
Constructs a new mutable map with the given mappings, i. e. pairs of elements from the keys and values arrays at the same index. If keys array have duplicate elements, value corresponding the key with the highest index is left in the returned map.

Parameters:
keys - the keys of the returned map
values - the values of the returned map, each value is associated with the element of the keys array at the same index
expectedSize - the expected size of the returned map
Returns:
a new mutable map with the given mappings
Throws:
IllegalArgumentException - if keys and values arrays have different length
NullPointerException - if keys or values contain null elements

newMutableMap

@Nonnull
ByteByteMap newMutableMap(@Nonnull
                                  Iterable<Byte> keys,
                                  @Nonnull
                                  Iterable<Byte> values,
                                  int expectedSize)
Constructs a new mutable map with the given mappings, i. e. pairs of elements from the keys and values iterables at the same iteration position. If keys have duplicate elements, value corresponding the key appeared last in the iteration is left in the returned map.

Parameters:
keys - the keys of the returned map
values - the values of the returned map, each value is associated with the element of the keys iterable at the same iteration position
expectedSize - the expected size of the returned map
Returns:
a new mutable map with the given mappings
Throws:
IllegalArgumentException - if keys and values have different size

newMutableMap

@Nonnull
ByteByteMap newMutableMap(@Nonnull
                                  Map<Byte,Byte> map)
Constructs a new mutable map with the same mappings as the specified map.

Parameters:
map - the map whose mappings are to be placed in the returned map
Returns:
a new mutable map with the same mappings as the specified map

newMutableMap

@Nonnull
ByteByteMap newMutableMap(@Nonnull
                                  Map<Byte,Byte> map1,
                                  @Nonnull
                                  Map<Byte,Byte> map2)
Constructs a new mutable map which merge the mappings of the specified maps. On conflict, mappings from the map2 have priority over mappings from the map1 with the same keys.

Parameters:
map1 - the first map to merge
map2 - the second map to merge
Returns:
a new mutable map which merge the mappings of the specified maps

newMutableMap

@Nonnull
ByteByteMap newMutableMap(@Nonnull
                                  Map<Byte,Byte> map1,
                                  @Nonnull
                                  Map<Byte,Byte> map2,
                                  @Nonnull
                                  Map<Byte,Byte> map3)
Constructs a new mutable map which merge the mappings of the specified maps. On conflict, mappings from the maps passed later in the argument list have priority over mappings from the maps passed earlier with the same keys.

Parameters:
map1 - the first map to merge
map2 - the second map to merge
map3 - the third map to merge
Returns:
a new mutable map which merge the mappings of the specified maps

newMutableMap

@Nonnull
ByteByteMap newMutableMap(@Nonnull
                                  Map<Byte,Byte> map1,
                                  @Nonnull
                                  Map<Byte,Byte> map2,
                                  @Nonnull
                                  Map<Byte,Byte> map3,
                                  @Nonnull
                                  Map<Byte,Byte> map4)
Constructs a new mutable map which merge the mappings of the specified maps. On conflict, mappings from the maps passed later in the argument list have priority over mappings from the maps passed earlier with the same keys.

Parameters:
map1 - the first map to merge
map2 - the second map to merge
map3 - the third map to merge
map4 - the fourth map to merge
Returns:
a new mutable map which merge the mappings of the specified maps

newMutableMap

@Nonnull
ByteByteMap newMutableMap(@Nonnull
                                  Map<Byte,Byte> map1,
                                  @Nonnull
                                  Map<Byte,Byte> map2,
                                  @Nonnull
                                  Map<Byte,Byte> map3,
                                  @Nonnull
                                  Map<Byte,Byte> map4,
                                  @Nonnull
                                  Map<Byte,Byte> map5)
Constructs a new mutable map which merge the mappings of the specified maps. On conflict, mappings from the maps passed later in the argument list have priority over mappings from the maps passed earlier with the same keys.

Parameters:
map1 - the first map to merge
map2 - the second map to merge
map3 - the third map to merge
map4 - the fourth map to merge
map5 - the fifth map to merge
Returns:
a new mutable map which merge the mappings of the specified maps

newMutableMap

@Nonnull
ByteByteMap newMutableMap(@Nonnull
                                  Consumer<ByteByteConsumer> entriesSupplier)
Constructs a new mutable map filled with mappings consumed by the callback within the given closure. Mappings supplied later within the closure have priority over the mappings passed earlier with the same keys.

Example: TODO

Parameters:
entriesSupplier - the function which supply mappings for the returned map via the callback passed in
Returns:
a new mutable map with mappings consumed by the callback within the given closure

newMutableMap

@Nonnull
ByteByteMap newMutableMap(@Nonnull
                                  byte[] keys,
                                  @Nonnull
                                  byte[] values)
Constructs a new mutable map with the given mappings, i. e. pairs of elements from the keys and values arrays at the same index. If keys array have duplicate elements, value corresponding the key with the highest index is left in the returned map.

Parameters:
keys - the keys of the returned map
values - the values of the returned map, each value is associated with the element of the keys array at the same index
Returns:
a new mutable map with the given mappings
Throws:
IllegalArgumentException - if keys and values arrays have different length

newMutableMap

@Nonnull
ByteByteMap newMutableMap(@Nonnull
                                  Byte[] keys,
                                  @Nonnull
                                  Byte[] values)
Constructs a new mutable map with the given mappings, i. e. pairs of elements from the keys and values arrays at the same index. If keys array have duplicate elements, value corresponding the key with the highest index is left in the returned map.

Parameters:
keys - the keys of the returned map
values - the values of the returned map, each value is associated with the element of the keys array at the same index
Returns:
a new mutable map with the given mappings
Throws:
IllegalArgumentException - if keys and values arrays have different length
NullPointerException - if keys or values contain null elements

newMutableMap

@Nonnull
ByteByteMap newMutableMap(@Nonnull
                                  Iterable<Byte> keys,
                                  @Nonnull
                                  Iterable<Byte> values)
Constructs a new mutable map with the given mappings, i. e. pairs of elements from the keys and values iterables at the same iteration position. If keys have duplicate elements, value corresponding the key appeared last in the iteration is left in the returned map.

Parameters:
keys - the keys of the returned map
values - the values of the returned map, each value is associated with the element of the keys iterable at the same iteration position
Returns:
a new mutable map with the given mappings
Throws:
IllegalArgumentException - if keys and values have different size

newMutableMapOf

@Nonnull
ByteByteMap newMutableMapOf(byte k1,
                                    byte v1)
Constructs a new mutable map of the single specified mapping.

Parameters:
k1 - the key of the sole mapping
v1 - the value of the sole mapping
Returns:
a new mutable map of the single specified mapping

newMutableMapOf

@Nonnull
ByteByteMap newMutableMapOf(byte k1,
                                    byte v1,
                                    byte k2,
                                    byte v2)
Constructs a new mutable map of the two specified mappings.

Parameters:
k1 - the key of the first mapping
v1 - the value of the first mapping
k2 - the key of the second mapping
v2 - the value of the second mapping
Returns:
a new mutable map of the two specified mappings

newMutableMapOf

@Nonnull
ByteByteMap newMutableMapOf(byte k1,
                                    byte v1,
                                    byte k2,
                                    byte v2,
                                    byte k3,
                                    byte v3)
Constructs a new mutable map of the three specified mappings.

Parameters:
k1 - the key of the first mapping
v1 - the value of the first mapping
k2 - the key of the second mapping
v2 - the value of the second mapping
k3 - the key of the third mapping
v3 - the value of the third mapping
Returns:
a new mutable map of the three specified mappings

newMutableMapOf

@Nonnull
ByteByteMap newMutableMapOf(byte k1,
                                    byte v1,
                                    byte k2,
                                    byte v2,
                                    byte k3,
                                    byte v3,
                                    byte k4,
                                    byte v4)
Constructs a new mutable map of the four specified mappings.

Parameters:
k1 - the key of the first mapping
v1 - the value of the first mapping
k2 - the key of the second mapping
v2 - the value of the second mapping
k3 - the key of the third mapping
v3 - the value of the third mapping
k4 - the key of the fourth mapping
v4 - the value of the fourth mapping
Returns:
a new mutable map of the four specified mappings

newMutableMapOf

@Nonnull
ByteByteMap newMutableMapOf(byte k1,
                                    byte v1,
                                    byte k2,
                                    byte v2,
                                    byte k3,
                                    byte v3,
                                    byte k4,
                                    byte v4,
                                    byte k5,
                                    byte v5)
Constructs a new mutable map of the five specified mappings.

Parameters:
k1 - the key of the first mapping
v1 - the value of the first mapping
k2 - the key of the second mapping
v2 - the value of the second mapping
k3 - the key of the third mapping
v3 - the value of the third mapping
k4 - the key of the fourth mapping
v4 - the value of the fourth mapping
k5 - the key of the fifth mapping
v5 - the value of the fifth mapping
Returns:
a new mutable map of the five specified mappings

newUpdatableMap

@Nonnull
ByteByteMap newUpdatableMap()
Constructs a new empty updatable map of the default expected size.

Returns:
a new empty updatable map

newUpdatableMap

@Nonnull
ByteByteMap newUpdatableMap(int expectedSize)
Constructs a new empty updatable map of the given expected size.

Parameters:
expectedSize - the expected size of the returned map
Returns:
a new empty updatable map of the given expected size

newUpdatableMap

@Nonnull
ByteByteMap newUpdatableMap(@Nonnull
                                    Map<Byte,Byte> map1,
                                    @Nonnull
                                    Map<Byte,Byte> map2,
                                    int expectedSize)
Constructs a new updatable map which merge the mappings of the specified maps. On conflict, mappings from the map2 have priority over mappings from the map1 with the same keys.

Parameters:
map1 - the first map to merge
map2 - the second map to merge
expectedSize - the expected size of the returned map
Returns:
a new updatable map which merge the mappings of the specified maps

newUpdatableMap

@Nonnull
ByteByteMap newUpdatableMap(@Nonnull
                                    Map<Byte,Byte> map1,
                                    @Nonnull
                                    Map<Byte,Byte> map2,
                                    @Nonnull
                                    Map<Byte,Byte> map3,
                                    int expectedSize)
Constructs a new updatable map which merge the mappings of the specified maps. On conflict, mappings from the maps passed later in the argument list have priority over mappings from the maps passed earlier with the same keys.

Parameters:
map1 - the first map to merge
map2 - the second map to merge
map3 - the third map to merge
expectedSize - the expected size of the returned map
Returns:
a new updatable map which merge the mappings of the specified maps

newUpdatableMap

@Nonnull
ByteByteMap newUpdatableMap(@Nonnull
                                    Map<Byte,Byte> map1,
                                    @Nonnull
                                    Map<Byte,Byte> map2,
                                    @Nonnull
                                    Map<Byte,Byte> map3,
                                    @Nonnull
                                    Map<Byte,Byte> map4,
                                    int expectedSize)
Constructs a new updatable map which merge the mappings of the specified maps. On conflict, mappings from the maps passed later in the argument list have priority over mappings from the maps passed earlier with the same keys.

Parameters:
map1 - the first map to merge
map2 - the second map to merge
map3 - the third map to merge
map4 - the fourth map to merge
expectedSize - the expected size of the returned map
Returns:
a new updatable map which merge the mappings of the specified maps

newUpdatableMap

@Nonnull
ByteByteMap newUpdatableMap(@Nonnull
                                    Map<Byte,Byte> map1,
                                    @Nonnull
                                    Map<Byte,Byte> map2,
                                    @Nonnull
                                    Map<Byte,Byte> map3,
                                    @Nonnull
                                    Map<Byte,Byte> map4,
                                    @Nonnull
                                    Map<Byte,Byte> map5,
                                    int expectedSize)
Constructs a new updatable map which merge the mappings of the specified maps. On conflict, mappings from the maps passed later in the argument list have priority over mappings from the maps passed earlier with the same keys.

Parameters:
map1 - the first map to merge
map2 - the second map to merge
map3 - the third map to merge
map4 - the fourth map to merge
map5 - the fifth map to merge
expectedSize - the expected size of the returned map
Returns:
a new updatable map which merge the mappings of the specified maps

newUpdatableMap

@Nonnull
ByteByteMap newUpdatableMap(@Nonnull
                                    Consumer<ByteByteConsumer> entriesSupplier,
                                    int expectedSize)
Constructs a new updatable map filled with mappings consumed by the callback within the given closure. Mappings supplied later within the closure have priority over the mappings passed earlier with the same keys.

Example: TODO

Parameters:
entriesSupplier - the function which supply mappings for the returned map via the callback passed in
expectedSize - the expected size of the returned map
Returns:
a new updatable map with mappings consumed by the callback within the given closure

newUpdatableMap

@Nonnull
ByteByteMap newUpdatableMap(@Nonnull
                                    byte[] keys,
                                    @Nonnull
                                    byte[] values,
                                    int expectedSize)
Constructs a new updatable map with the given mappings, i. e. pairs of elements from the keys and values arrays at the same index. If keys array have duplicate elements, value corresponding the key with the highest index is left in the returned map.

Parameters:
keys - the keys of the returned map
values - the values of the returned map, each value is associated with the element of the keys array at the same index
expectedSize - the expected size of the returned map
Returns:
a new updatable map with the given mappings
Throws:
IllegalArgumentException - if keys and values arrays have different length

newUpdatableMap

@Nonnull
ByteByteMap newUpdatableMap(@Nonnull
                                    Byte[] keys,
                                    @Nonnull
                                    Byte[] values,
                                    int expectedSize)
Constructs a new updatable map with the given mappings, i. e. pairs of elements from the keys and values arrays at the same index. If keys array have duplicate elements, value corresponding the key with the highest index is left in the returned map.

Parameters:
keys - the keys of the returned map
values - the values of the returned map, each value is associated with the element of the keys array at the same index
expectedSize - the expected size of the returned map
Returns:
a new updatable map with the given mappings
Throws:
IllegalArgumentException - if keys and values arrays have different length
NullPointerException - if keys or values contain null elements

newUpdatableMap

@Nonnull
ByteByteMap newUpdatableMap(@Nonnull
                                    Iterable<Byte> keys,
                                    @Nonnull
                                    Iterable<Byte> values,
                                    int expectedSize)
Constructs a new updatable map with the given mappings, i. e. pairs of elements from the keys and values iterables at the same iteration position. If keys have duplicate elements, value corresponding the key appeared last in the iteration is left in the returned map.

Parameters:
keys - the keys of the returned map
values - the values of the returned map, each value is associated with the element of the keys iterable at the same iteration position
expectedSize - the expected size of the returned map
Returns:
a new updatable map with the given mappings
Throws:
IllegalArgumentException - if keys and values have different size

newUpdatableMap

@Nonnull
ByteByteMap newUpdatableMap(@Nonnull
                                    Map<Byte,Byte> map)
Constructs a new updatable map with the same mappings as the specified map.

Parameters:
map - the map whose mappings are to be placed in the returned map
Returns:
a new updatable map with the same mappings as the specified map

newUpdatableMap

@Nonnull
ByteByteMap newUpdatableMap(@Nonnull
                                    Map<Byte,Byte> map1,
                                    @Nonnull
                                    Map<Byte,Byte> map2)
Constructs a new updatable map which merge the mappings of the specified maps. On conflict, mappings from the map2 have priority over mappings from the map1 with the same keys.

Parameters:
map1 - the first map to merge
map2 - the second map to merge
Returns:
a new updatable map which merge the mappings of the specified maps

newUpdatableMap

@Nonnull
ByteByteMap newUpdatableMap(@Nonnull
                                    Map<Byte,Byte> map1,
                                    @Nonnull
                                    Map<Byte,Byte> map2,
                                    @Nonnull
                                    Map<Byte,Byte> map3)
Constructs a new updatable map which merge the mappings of the specified maps. On conflict, mappings from the maps passed later in the argument list have priority over mappings from the maps passed earlier with the same keys.

Parameters:
map1 - the first map to merge
map2 - the second map to merge
map3 - the third map to merge
Returns:
a new updatable map which merge the mappings of the specified maps

newUpdatableMap

@Nonnull
ByteByteMap newUpdatableMap(@Nonnull
                                    Map<Byte,Byte> map1,
                                    @Nonnull
                                    Map<Byte,Byte> map2,
                                    @Nonnull
                                    Map<Byte,Byte> map3,
                                    @Nonnull
                                    Map<Byte,Byte> map4)
Constructs a new updatable map which merge the mappings of the specified maps. On conflict, mappings from the maps passed later in the argument list have priority over mappings from the maps passed earlier with the same keys.

Parameters:
map1 - the first map to merge
map2 - the second map to merge
map3 - the third map to merge
map4 - the fourth map to merge
Returns:
a new updatable map which merge the mappings of the specified maps

newUpdatableMap

@Nonnull
ByteByteMap newUpdatableMap(@Nonnull
                                    Map<Byte,Byte> map1,
                                    @Nonnull
                                    Map<Byte,Byte> map2,
                                    @Nonnull
                                    Map<Byte,Byte> map3,
                                    @Nonnull
                                    Map<Byte,Byte> map4,
                                    @Nonnull
                                    Map<Byte,Byte> map5)
Constructs a new updatable map which merge the mappings of the specified maps. On conflict, mappings from the maps passed later in the argument list have priority over mappings from the maps passed earlier with the same keys.

Parameters:
map1 - the first map to merge
map2 - the second map to merge
map3 - the third map to merge
map4 - the fourth map to merge
map5 - the fifth map to merge
Returns:
a new updatable map which merge the mappings of the specified maps

newUpdatableMap

@Nonnull
ByteByteMap newUpdatableMap(@Nonnull
                                    Consumer<ByteByteConsumer> entriesSupplier)
Constructs a new updatable map filled with mappings consumed by the callback within the given closure. Mappings supplied later within the closure have priority over the mappings passed earlier with the same keys.

Example: TODO

Parameters:
entriesSupplier - the function which supply mappings for the returned map via the callback passed in
Returns:
a new updatable map with mappings consumed by the callback within the given closure

newUpdatableMap

@Nonnull
ByteByteMap newUpdatableMap(@Nonnull
                                    byte[] keys,
                                    @Nonnull
                                    byte[] values)
Constructs a new updatable map with the given mappings, i. e. pairs of elements from the keys and values arrays at the same index. If keys array have duplicate elements, value corresponding the key with the highest index is left in the returned map.

Parameters:
keys - the keys of the returned map
values - the values of the returned map, each value is associated with the element of the keys array at the same index
Returns:
a new updatable map with the given mappings
Throws:
IllegalArgumentException - if keys and values arrays have different length

newUpdatableMap

@Nonnull
ByteByteMap newUpdatableMap(@Nonnull
                                    Byte[] keys,
                                    @Nonnull
                                    Byte[] values)
Constructs a new updatable map with the given mappings, i. e. pairs of elements from the keys and values arrays at the same index. If keys array have duplicate elements, value corresponding the key with the highest index is left in the returned map.

Parameters:
keys - the keys of the returned map
values - the values of the returned map, each value is associated with the element of the keys array at the same index
Returns:
a new updatable map with the given mappings
Throws:
IllegalArgumentException - if keys and values arrays have different length
NullPointerException - if keys or values contain null elements

newUpdatableMap

@Nonnull
ByteByteMap newUpdatableMap(@Nonnull
                                    Iterable<Byte> keys,
                                    @Nonnull
                                    Iterable<Byte> values)
Constructs a new updatable map with the given mappings, i. e. pairs of elements from the keys and values iterables at the same iteration position. If keys have duplicate elements, value corresponding the key appeared last in the iteration is left in the returned map.

Parameters:
keys - the keys of the returned map
values - the values of the returned map, each value is associated with the element of the keys iterable at the same iteration position
Returns:
a new updatable map with the given mappings
Throws:
IllegalArgumentException - if keys and values have different size

newUpdatableMapOf

@Nonnull
ByteByteMap newUpdatableMapOf(byte k1,
                                      byte v1)
Constructs a new updatable map of the single specified mapping.

Parameters:
k1 - the key of the sole mapping
v1 - the value of the sole mapping
Returns:
a new updatable map of the single specified mapping

newUpdatableMapOf

@Nonnull
ByteByteMap newUpdatableMapOf(byte k1,
                                      byte v1,
                                      byte k2,
                                      byte v2)
Constructs a new updatable map of the two specified mappings.

Parameters:
k1 - the key of the first mapping
v1 - the value of the first mapping
k2 - the key of the second mapping
v2 - the value of the second mapping
Returns:
a new updatable map of the two specified mappings

newUpdatableMapOf

@Nonnull
ByteByteMap newUpdatableMapOf(byte k1,
                                      byte v1,
                                      byte k2,
                                      byte v2,
                                      byte k3,
                                      byte v3)
Constructs a new updatable map of the three specified mappings.

Parameters:
k1 - the key of the first mapping
v1 - the value of the first mapping
k2 - the key of the second mapping
v2 - the value of the second mapping
k3 - the key of the third mapping
v3 - the value of the third mapping
Returns:
a new updatable map of the three specified mappings

newUpdatableMapOf

@Nonnull
ByteByteMap newUpdatableMapOf(byte k1,
                                      byte v1,
                                      byte k2,
                                      byte v2,
                                      byte k3,
                                      byte v3,
                                      byte k4,
                                      byte v4)
Constructs a new updatable map of the four specified mappings.

Parameters:
k1 - the key of the first mapping
v1 - the value of the first mapping
k2 - the key of the second mapping
v2 - the value of the second mapping
k3 - the key of the third mapping
v3 - the value of the third mapping
k4 - the key of the fourth mapping
v4 - the value of the fourth mapping
Returns:
a new updatable map of the four specified mappings

newUpdatableMapOf

@Nonnull
ByteByteMap newUpdatableMapOf(byte k1,
                                      byte v1,
                                      byte k2,
                                      byte v2,
                                      byte k3,
                                      byte v3,
                                      byte k4,
                                      byte v4,
                                      byte k5,
                                      byte v5)
Constructs a new updatable map of the five specified mappings.

Parameters:
k1 - the key of the first mapping
v1 - the value of the first mapping
k2 - the key of the second mapping
v2 - the value of the second mapping
k3 - the key of the third mapping
v3 - the value of the third mapping
k4 - the key of the fourth mapping
v4 - the value of the fourth mapping
k5 - the key of the fifth mapping
v5 - the value of the fifth mapping
Returns:
a new updatable map of the five specified mappings

newImmutableMap

@Nonnull
ByteByteMap newImmutableMap(@Nonnull
                                    Map<Byte,Byte> map1,
                                    @Nonnull
                                    Map<Byte,Byte> map2,
                                    int expectedSize)
Constructs a new immutable map which merge the mappings of the specified maps. On conflict, mappings from the map2 have priority over mappings from the map1 with the same keys.

Parameters:
map1 - the first map to merge
map2 - the second map to merge
expectedSize - the expected size of the returned map
Returns:
a new immutable map which merge the mappings of the specified maps

newImmutableMap

@Nonnull
ByteByteMap newImmutableMap(@Nonnull
                                    Map<Byte,Byte> map1,
                                    @Nonnull
                                    Map<Byte,Byte> map2,
                                    @Nonnull
                                    Map<Byte,Byte> map3,
                                    int expectedSize)
Constructs a new immutable map which merge the mappings of the specified maps. On conflict, mappings from the maps passed later in the argument list have priority over mappings from the maps passed earlier with the same keys.

Parameters:
map1 - the first map to merge
map2 - the second map to merge
map3 - the third map to merge
expectedSize - the expected size of the returned map
Returns:
a new immutable map which merge the mappings of the specified maps

newImmutableMap

@Nonnull
ByteByteMap newImmutableMap(@Nonnull
                                    Map<Byte,Byte> map1,
                                    @Nonnull
                                    Map<Byte,Byte> map2,
                                    @Nonnull
                                    Map<Byte,Byte> map3,
                                    @Nonnull
                                    Map<Byte,Byte> map4,
                                    int expectedSize)
Constructs a new immutable map which merge the mappings of the specified maps. On conflict, mappings from the maps passed later in the argument list have priority over mappings from the maps passed earlier with the same keys.

Parameters:
map1 - the first map to merge
map2 - the second map to merge
map3 - the third map to merge
map4 - the fourth map to merge
expectedSize - the expected size of the returned map
Returns:
a new immutable map which merge the mappings of the specified maps

newImmutableMap

@Nonnull
ByteByteMap newImmutableMap(@Nonnull
                                    Map<Byte,Byte> map1,
                                    @Nonnull
                                    Map<Byte,Byte> map2,
                                    @Nonnull
                                    Map<Byte,Byte> map3,
                                    @Nonnull
                                    Map<Byte,Byte> map4,
                                    @Nonnull
                                    Map<Byte,Byte> map5,
                                    int expectedSize)
Constructs a new immutable map which merge the mappings of the specified maps. On conflict, mappings from the maps passed later in the argument list have priority over mappings from the maps passed earlier with the same keys.

Parameters:
map1 - the first map to merge
map2 - the second map to merge
map3 - the third map to merge
map4 - the fourth map to merge
map5 - the fifth map to merge
expectedSize - the expected size of the returned map
Returns:
a new immutable map which merge the mappings of the specified maps

newImmutableMap

@Nonnull
ByteByteMap newImmutableMap(@Nonnull
                                    Consumer<ByteByteConsumer> entriesSupplier,
                                    int expectedSize)
Constructs a new immutable map filled with mappings consumed by the callback within the given closure. Mappings supplied later within the closure have priority over the mappings passed earlier with the same keys.

Example: TODO

Parameters:
entriesSupplier - the function which supply mappings for the returned map via the callback passed in
expectedSize - the expected size of the returned map
Returns:
a new immutable map with mappings consumed by the callback within the given closure

newImmutableMap

@Nonnull
ByteByteMap newImmutableMap(@Nonnull
                                    byte[] keys,
                                    @Nonnull
                                    byte[] values,
                                    int expectedSize)
Constructs a new immutable map with the given mappings, i. e. pairs of elements from the keys and values arrays at the same index. If keys array have duplicate elements, value corresponding the key with the highest index is left in the returned map.

Parameters:
keys - the keys of the returned map
values - the values of the returned map, each value is associated with the element of the keys array at the same index
expectedSize - the expected size of the returned map
Returns:
a new immutable map with the given mappings
Throws:
IllegalArgumentException - if keys and values arrays have different length

newImmutableMap

@Nonnull
ByteByteMap newImmutableMap(@Nonnull
                                    Byte[] keys,
                                    @Nonnull
                                    Byte[] values,
                                    int expectedSize)
Constructs a new immutable map with the given mappings, i. e. pairs of elements from the keys and values arrays at the same index. If keys array have duplicate elements, value corresponding the key with the highest index is left in the returned map.

Parameters:
keys - the keys of the returned map
values - the values of the returned map, each value is associated with the element of the keys array at the same index
expectedSize - the expected size of the returned map
Returns:
a new immutable map with the given mappings
Throws:
IllegalArgumentException - if keys and values arrays have different length
NullPointerException - if keys or values contain null elements

newImmutableMap

@Nonnull
ByteByteMap newImmutableMap(@Nonnull
                                    Iterable<Byte> keys,
                                    @Nonnull
                                    Iterable<Byte> values,
                                    int expectedSize)
Constructs a new immutable map with the given mappings, i. e. pairs of elements from the keys and values iterables at the same iteration position. If keys have duplicate elements, value corresponding the key appeared last in the iteration is left in the returned map.

Parameters:
keys - the keys of the returned map
values - the values of the returned map, each value is associated with the element of the keys iterable at the same iteration position
expectedSize - the expected size of the returned map
Returns:
a new immutable map with the given mappings
Throws:
IllegalArgumentException - if keys and values have different size

newImmutableMap

@Nonnull
ByteByteMap newImmutableMap(@Nonnull
                                    Map<Byte,Byte> map)
Constructs a new immutable map with the same mappings as the specified map.

Parameters:
map - the map whose mappings are to be placed in the returned map
Returns:
a new immutable map with the same mappings as the specified map

newImmutableMap

@Nonnull
ByteByteMap newImmutableMap(@Nonnull
                                    Map<Byte,Byte> map1,
                                    @Nonnull
                                    Map<Byte,Byte> map2)
Constructs a new immutable map which merge the mappings of the specified maps. On conflict, mappings from the map2 have priority over mappings from the map1 with the same keys.

Parameters:
map1 - the first map to merge
map2 - the second map to merge
Returns:
a new immutable map which merge the mappings of the specified maps

newImmutableMap

@Nonnull
ByteByteMap newImmutableMap(@Nonnull
                                    Map<Byte,Byte> map1,
                                    @Nonnull
                                    Map<Byte,Byte> map2,
                                    @Nonnull
                                    Map<Byte,Byte> map3)
Constructs a new immutable map which merge the mappings of the specified maps. On conflict, mappings from the maps passed later in the argument list have priority over mappings from the maps passed earlier with the same keys.

Parameters:
map1 - the first map to merge
map2 - the second map to merge
map3 - the third map to merge
Returns:
a new immutable map which merge the mappings of the specified maps

newImmutableMap

@Nonnull
ByteByteMap newImmutableMap(@Nonnull
                                    Map<Byte,Byte> map1,
                                    @Nonnull
                                    Map<Byte,Byte> map2,
                                    @Nonnull
                                    Map<Byte,Byte> map3,
                                    @Nonnull
                                    Map<Byte,Byte> map4)
Constructs a new immutable map which merge the mappings of the specified maps. On conflict, mappings from the maps passed later in the argument list have priority over mappings from the maps passed earlier with the same keys.

Parameters:
map1 - the first map to merge
map2 - the second map to merge
map3 - the third map to merge
map4 - the fourth map to merge
Returns:
a new immutable map which merge the mappings of the specified maps

newImmutableMap

@Nonnull
ByteByteMap newImmutableMap(@Nonnull
                                    Map<Byte,Byte> map1,
                                    @Nonnull
                                    Map<Byte,Byte> map2,
                                    @Nonnull
                                    Map<Byte,Byte> map3,
                                    @Nonnull
                                    Map<Byte,Byte> map4,
                                    @Nonnull
                                    Map<Byte,Byte> map5)
Constructs a new immutable map which merge the mappings of the specified maps. On conflict, mappings from the maps passed later in the argument list have priority over mappings from the maps passed earlier with the same keys.

Parameters:
map1 - the first map to merge
map2 - the second map to merge
map3 - the third map to merge
map4 - the fourth map to merge
map5 - the fifth map to merge
Returns:
a new immutable map which merge the mappings of the specified maps

newImmutableMap

@Nonnull
ByteByteMap newImmutableMap(@Nonnull
                                    Consumer<ByteByteConsumer> entriesSupplier)
Constructs a new immutable map filled with mappings consumed by the callback within the given closure. Mappings supplied later within the closure have priority over the mappings passed earlier with the same keys.

Example: TODO

Parameters:
entriesSupplier - the function which supply mappings for the returned map via the callback passed in
Returns:
a new immutable map with mappings consumed by the callback within the given closure

newImmutableMap

@Nonnull
ByteByteMap newImmutableMap(@Nonnull
                                    byte[] keys,
                                    @Nonnull
                                    byte[] values)
Constructs a new immutable map with the given mappings, i. e. pairs of elements from the keys and values arrays at the same index. If keys array have duplicate elements, value corresponding the key with the highest index is left in the returned map.

Parameters:
keys - the keys of the returned map
values - the values of the returned map, each value is associated with the element of the keys array at the same index
Returns:
a new immutable map with the given mappings
Throws:
IllegalArgumentException - if keys and values arrays have different length

newImmutableMap

@Nonnull
ByteByteMap newImmutableMap(@Nonnull
                                    Byte[] keys,
                                    @Nonnull
                                    Byte[] values)
Constructs a new immutable map with the given mappings, i. e. pairs of elements from the keys and values arrays at the same index. If keys array have duplicate elements, value corresponding the key with the highest index is left in the returned map.

Parameters:
keys - the keys of the returned map
values - the values of the returned map, each value is associated with the element of the keys array at the same index
Returns:
a new immutable map with the given mappings
Throws:
IllegalArgumentException - if keys and values arrays have different length
NullPointerException - if keys or values contain null elements

newImmutableMap

@Nonnull
ByteByteMap newImmutableMap(@Nonnull
                                    Iterable<Byte> keys,
                                    @Nonnull
                                    Iterable<Byte> values)
Constructs a new immutable map with the given mappings, i. e. pairs of elements from the keys and values iterables at the same iteration position. If keys have duplicate elements, value corresponding the key appeared last in the iteration is left in the returned map.

Parameters:
keys - the keys of the returned map
values - the values of the returned map, each value is associated with the element of the keys iterable at the same iteration position
Returns:
a new immutable map with the given mappings
Throws:
IllegalArgumentException - if keys and values have different size

newImmutableMapOf

@Nonnull
ByteByteMap newImmutableMapOf(byte k1,
                                      byte v1)
Constructs a new immutable map of the single specified mapping.

Parameters:
k1 - the key of the sole mapping
v1 - the value of the sole mapping
Returns:
a new immutable map of the single specified mapping

newImmutableMapOf

@Nonnull
ByteByteMap newImmutableMapOf(byte k1,
                                      byte v1,
                                      byte k2,
                                      byte v2)
Constructs a new immutable map of the two specified mappings.

Parameters:
k1 - the key of the first mapping
v1 - the value of the first mapping
k2 - the key of the second mapping
v2 - the value of the second mapping
Returns:
a new immutable map of the two specified mappings

newImmutableMapOf

@Nonnull
ByteByteMap newImmutableMapOf(byte k1,
                                      byte v1,
                                      byte k2,
                                      byte v2,
                                      byte k3,
                                      byte v3)
Constructs a new immutable map of the three specified mappings.

Parameters:
k1 - the key of the first mapping
v1 - the value of the first mapping
k2 - the key of the second mapping
v2 - the value of the second mapping
k3 - the key of the third mapping
v3 - the value of the third mapping
Returns:
a new immutable map of the three specified mappings

newImmutableMapOf

@Nonnull
ByteByteMap newImmutableMapOf(byte k1,
                                      byte v1,
                                      byte k2,
                                      byte v2,
                                      byte k3,
                                      byte v3,
                                      byte k4,
                                      byte v4)
Constructs a new immutable map of the four specified mappings.

Parameters:
k1 - the key of the first mapping
v1 - the value of the first mapping
k2 - the key of the second mapping
v2 - the value of the second mapping
k3 - the key of the third mapping
v3 - the value of the third mapping
k4 - the key of the fourth mapping
v4 - the value of the fourth mapping
Returns:
a new immutable map of the four specified mappings

newImmutableMapOf

@Nonnull
ByteByteMap newImmutableMapOf(byte k1,
                                      byte v1,
                                      byte k2,
                                      byte v2,
                                      byte k3,
                                      byte v3,
                                      byte k4,
                                      byte v4,
                                      byte k5,
                                      byte v5)
Constructs a new immutable map of the five specified mappings.

Parameters:
k1 - the key of the first mapping
v1 - the value of the first mapping
k2 - the key of the second mapping
v2 - the value of the second mapping
k3 - the key of the third mapping
v3 - the value of the third mapping
k4 - the key of the fourth mapping
v4 - the value of the fourth mapping
k5 - the key of the fifth mapping
v5 - the value of the fifth mapping
Returns:
a new immutable map of the five specified mappings