Package io.vavr.collection
Class HashArrayMappedTrieModule.LeafList<K,V>
- java.lang.Object
-
- io.vavr.collection.HashArrayMappedTrieModule.AbstractNode<K,V>
-
- io.vavr.collection.HashArrayMappedTrieModule.LeafNode<K,V>
-
- io.vavr.collection.HashArrayMappedTrieModule.LeafList<K,V>
-
- Type Parameters:
K
- Key typeV
- Value type
- All Implemented Interfaces:
HashArrayMappedTrie<K,V>
,java.io.Serializable
,java.lang.Iterable<Tuple2<K,V>>
- Enclosing interface:
- HashArrayMappedTrieModule
public static final class HashArrayMappedTrieModule.LeafList<K,V> extends HashArrayMappedTrieModule.LeafNode<K,V> implements java.io.Serializable
Representation of a HAMT leaf node with more than one element.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description private int
hash
private K
key
private static long
serialVersionUID
private int
size
private HashArrayMappedTrieModule.LeafNode<K,V>
tail
private V
value
-
Fields inherited from class io.vavr.collection.HashArrayMappedTrieModule.AbstractNode
BUCKET_SIZE, MAX_INDEX_NODE, MIN_ARRAY_NODE, SIZE
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) int
hash()
(package private) K
key()
(package private) Option<V>
lookup(int shift, int keyHash, K key)
(package private) V
lookup(int shift, int keyHash, K key, V defaultValue)
private static <K,V>
HashArrayMappedTrieModule.AbstractNode<K,V>mergeNodes(HashArrayMappedTrieModule.LeafNode<K,V> leaf1, HashArrayMappedTrieModule.LeafNode<K,V> leaf2)
(package private) HashArrayMappedTrieModule.AbstractNode<K,V>
modify(int shift, int keyHash, K key, V value, HashArrayMappedTrieModule.Action action)
Iterator<HashArrayMappedTrieModule.LeafNode<K,V>>
nodes()
private HashArrayMappedTrieModule.AbstractNode<K,V>
removeElement(K k)
int
size()
(package private) V
value()
-
Methods inherited from class io.vavr.collection.HashArrayMappedTrieModule.LeafNode
isEmpty, mergeLeaves
-
Methods inherited from class io.vavr.collection.HashArrayMappedTrieModule.AbstractNode
containsKey, fromBitmap, get, getOrElse, hashFragment, insert, iterator, keysIterator, put, remove, remove, toBitmap, toString, update, valuesIterator
-
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
-
hash
private final int hash
-
key
private final K key
-
value
private final V value
-
size
private final int size
-
tail
private final HashArrayMappedTrieModule.LeafNode<K,V> tail
-
-
Constructor Detail
-
LeafList
LeafList(int hash, K key, V value, HashArrayMappedTrieModule.LeafNode<K,V> tail)
-
-
Method Detail
-
lookup
Option<V> lookup(int shift, int keyHash, K key)
- Specified by:
lookup
in classHashArrayMappedTrieModule.AbstractNode<K,V>
-
lookup
V lookup(int shift, int keyHash, K key, V defaultValue)
- Specified by:
lookup
in classHashArrayMappedTrieModule.AbstractNode<K,V>
-
modify
HashArrayMappedTrieModule.AbstractNode<K,V> modify(int shift, int keyHash, K key, V value, HashArrayMappedTrieModule.Action action)
- Specified by:
modify
in classHashArrayMappedTrieModule.AbstractNode<K,V>
-
mergeNodes
private static <K,V> HashArrayMappedTrieModule.AbstractNode<K,V> mergeNodes(HashArrayMappedTrieModule.LeafNode<K,V> leaf1, HashArrayMappedTrieModule.LeafNode<K,V> leaf2)
-
removeElement
private HashArrayMappedTrieModule.AbstractNode<K,V> removeElement(K k)
-
size
public int size()
- Specified by:
size
in interfaceHashArrayMappedTrie<K,V>
-
nodes
public Iterator<HashArrayMappedTrieModule.LeafNode<K,V>> nodes()
- Overrides:
nodes
in classHashArrayMappedTrieModule.AbstractNode<K,V>
-
hash
int hash()
- Specified by:
hash
in classHashArrayMappedTrieModule.LeafNode<K,V>
-
key
K key()
- Specified by:
key
in classHashArrayMappedTrieModule.LeafNode<K,V>
-
value
V value()
- Specified by:
value
in classHashArrayMappedTrieModule.LeafNode<K,V>
-
-