Package io.usethesource.capsule.core
Class AbstractPersistentTrieSetMultimap<K,V,C extends java.lang.Iterable<V>,R extends MultimapNode<K,V,C,R>>
- java.lang.Object
-
- io.usethesource.capsule.core.AbstractTrieSetMultimap<K,V,C,R>
-
- io.usethesource.capsule.core.AbstractPersistentTrieSetMultimap<K,V,C,R>
-
- All Implemented Interfaces:
SetMultimap<K,V>,SetMultimap.Immutable<K,V>,SetMultimapEq<K,V>,SetMultimapEq.Immutable<K,V>,java.io.Serializable
- Direct Known Subclasses:
PersistentTrieSetMultimap
public abstract class AbstractPersistentTrieSetMultimap<K,V,C extends java.lang.Iterable<V>,R extends MultimapNode<K,V,C,R>> extends AbstractTrieSetMultimap<K,V,C,R> implements SetMultimap.Immutable<K,V>, java.io.Serializable
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class io.usethesource.capsule.core.AbstractTrieSetMultimap
AbstractTrieSetMultimap.SetMultimapKeyIterator<K,V,C,R extends MultimapNode<K,V,C,R>>, AbstractTrieSetMultimap.SetMultimapNativeTupleIterator<K,V,C,R extends MultimapNode<K,V,C,R>>, AbstractTrieSetMultimap.SetMultimapTupleIterator<K,V,C extends java.lang.Iterable<V>,R extends MultimapNode<K,V,C,R>,T>, AbstractTrieSetMultimap.SetMultimapValueIterator<K,V,C,R extends MultimapNode<K,V,C,R>>
-
Nested classes/interfaces inherited from interface io.usethesource.capsule.SetMultimap
SetMultimap.Immutable<K,V>, SetMultimap.Transient<K,V>
-
Nested classes/interfaces inherited from interface io.usethesource.capsule.SetMultimapEq
SetMultimapEq.Immutable<K,V>, SetMultimapEq.Transient<K,V>
-
-
Field Summary
Fields Modifier and Type Field Description protected intcachedKeySetHashCodeprotected intcachedKeySetSizeprotected intcachedSizeprotected static booleanDEBUGprotected RrootNodeprivate static longserialVersionUID-
Fields inherited from class io.usethesource.capsule.core.AbstractTrieSetMultimap
cmp
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedAbstractPersistentTrieSetMultimap(EqualityComparator<java.lang.Object> cmp, R rootNode, int cachedSize, int keySetHashCode, int keySetSize)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description SetMultimap.Immutable<K,V>__insert(K key, Set.Immutable<V> valueCollection)SetMultimap.Immutable<K,V>__insert(K key, V value)SetMultimap.Immutable<K,V>__put(K key, Set.Immutable<V> valueCollection)SetMultimap.Immutable<K,V>__put(K key, V value)SetMultimap.Immutable<K,V>__remove(K key)SetMultimap.Immutable<K,V>__remove(K key, V value)(package private) intgetCachedKeySetHashCode()(package private) intgetCachedKeySetSize()(package private) intgetCachedSize()(package private) RgetRootNode()protected abstract SetMultimap.Immutable<K,V>wrap(EqualityComparator<java.lang.Object> cmp, R rootNode, int cachedSize, int cachedKeySetHashCode, int cachedKeySetSize)-
Methods inherited from class io.usethesource.capsule.core.AbstractTrieSetMultimap
collectionToInternalFormat, containsEntry, containsKey, containsValue, entryIterator, entrySet, equals, get, getNodeCount, hashCode, hashCode, internalFormatToCollection, keyIterator, keySet, keySetHashCode, keySetSize, nativeEntryIterator, nodeIterator, size, toString, transformHashCode, tupleIterator, valueIterator, valueIterator, values, valueToTemporaryBox
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface io.usethesource.capsule.SetMultimap
containsEntry, containsKey, containsValue, entryIterator, entrySet, equals, get, hashCode, isEmpty, keyIterator, keySet, nativeEntryIterator, size, sizeDistinct, tupleIterator, tupleStream, valueIterator, values
-
Methods inherited from interface io.usethesource.capsule.SetMultimap.Immutable
__insert, asTransient, complement, intersect, inverseMap, isTransientSupported, union
-
Methods inherited from interface io.usethesource.capsule.SetMultimapEq
containsEntryEquivalent, containsKeyEquivalent, containsValueEquivalent, getEquivalent
-
Methods inherited from interface io.usethesource.capsule.SetMultimapEq.Immutable
__insertEquivalent, __insertEquivalent, __putEquivalent, __putEquivalent, __removeEquivalent, __removeEquivalent, complementEquivalent, intersectEquivalent, unionEquivalent
-
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
-
DEBUG
protected static final boolean DEBUG
- See Also:
- Constant Field Values
-
cachedSize
protected final int cachedSize
-
cachedKeySetSize
protected final int cachedKeySetSize
-
cachedKeySetHashCode
protected final int cachedKeySetHashCode
-
-
Constructor Detail
-
AbstractPersistentTrieSetMultimap
protected AbstractPersistentTrieSetMultimap(EqualityComparator<java.lang.Object> cmp, R rootNode, int cachedSize, int keySetHashCode, int keySetSize)
-
-
Method Detail
-
getRootNode
final R getRootNode()
- Specified by:
getRootNodein classAbstractTrieSetMultimap<K,V,C extends java.lang.Iterable<V>,R extends MultimapNode<K,V,C,R>>
-
getCachedSize
final int getCachedSize()
- Specified by:
getCachedSizein classAbstractTrieSetMultimap<K,V,C extends java.lang.Iterable<V>,R extends MultimapNode<K,V,C,R>>
-
getCachedKeySetHashCode
final int getCachedKeySetHashCode()
- Specified by:
getCachedKeySetHashCodein classAbstractTrieSetMultimap<K,V,C extends java.lang.Iterable<V>,R extends MultimapNode<K,V,C,R>>
-
getCachedKeySetSize
final int getCachedKeySetSize()
- Specified by:
getCachedKeySetSizein classAbstractTrieSetMultimap<K,V,C extends java.lang.Iterable<V>,R extends MultimapNode<K,V,C,R>>
-
wrap
protected abstract SetMultimap.Immutable<K,V> wrap(EqualityComparator<java.lang.Object> cmp, R rootNode, int cachedSize, int cachedKeySetHashCode, int cachedKeySetSize)
-
__insert
public final SetMultimap.Immutable<K,V> __insert(K key, V value)
- Specified by:
__insertin interfaceSetMultimap.Immutable<K,V>
-
__insert
public final SetMultimap.Immutable<K,V> __insert(K key, Set.Immutable<V> valueCollection)
- Specified by:
__insertin interfaceSetMultimap.Immutable<K,V>
-
__put
public final SetMultimap.Immutable<K,V> __put(K key, V value)
- Specified by:
__putin interfaceSetMultimap.Immutable<K,V>
-
__put
public final SetMultimap.Immutable<K,V> __put(K key, Set.Immutable<V> valueCollection)
- Specified by:
__putin interfaceSetMultimap.Immutable<K,V>
-
__remove
public final SetMultimap.Immutable<K,V> __remove(K key, V value)
- Specified by:
__removein interfaceSetMultimap.Immutable<K,V>
-
__remove
public final SetMultimap.Immutable<K,V> __remove(K key)
- Specified by:
__removein interfaceSetMultimap.Immutable<K,V>
-
-