Package com.google.common.collect
Class MapMakerInternalMap.WeakKeyWeakValueEntry<K,V>
java.lang.Object
java.lang.ref.Reference<T>
java.lang.ref.WeakReference<K>
com.google.common.collect.MapMakerInternalMap.AbstractWeakKeyEntry<K,V,MapMakerInternalMap.WeakKeyWeakValueEntry<K,V>>
com.google.common.collect.MapMakerInternalMap.WeakKeyWeakValueEntry<K,V>
- All Implemented Interfaces:
MapMakerInternalMap.InternalEntry<K,
,V, MapMakerInternalMap.WeakKeyWeakValueEntry<K, V>> MapMakerInternalMap.WeakValueEntry<K,
V, MapMakerInternalMap.WeakKeyWeakValueEntry<K, V>>
- Enclosing class:
- MapMakerInternalMap<K,
V, E extends MapMakerInternalMap.InternalEntry<K, V, E>, S extends MapMakerInternalMap.Segment<K, V, E, S>>
static final class MapMakerInternalMap.WeakKeyWeakValueEntry<K,V>
extends MapMakerInternalMap.AbstractWeakKeyEntry<K,V,MapMakerInternalMap.WeakKeyWeakValueEntry<K,V>>
implements MapMakerInternalMap.WeakValueEntry<K,V,MapMakerInternalMap.WeakKeyWeakValueEntry<K,V>>
Concrete implementation of
MapMakerInternalMap.InternalEntry
for weak keys and weak values.-
Nested Class Summary
Nested ClassesModifier and TypeClassDescription(package private) static final class
Concrete implementation ofMapMakerInternalMap.InternalEntryHelper
for weak keys and weak values. -
Field Summary
FieldsModifier and TypeFieldDescriptionFields inherited from class com.google.common.collect.MapMakerInternalMap.AbstractWeakKeyEntry
hash, next
-
Constructor Summary
ConstructorsConstructorDescriptionWeakKeyWeakValueEntry
(ReferenceQueue<K> queue, K key, int hash, MapMakerInternalMap.WeakKeyWeakValueEntry<K, V> next) -
Method Summary
Modifier and TypeMethodDescriptionvoid
Clears the weak value reference held by the entry.(package private) MapMakerInternalMap.WeakKeyWeakValueEntry<K,
V> copy
(ReferenceQueue<K> queueForKeys, ReferenceQueue<V> queueForValues, MapMakerInternalMap.WeakKeyWeakValueEntry<K, V> newNext) getValue()
Gets the value for the entry.Gets the weak value reference held by entry.(package private) void
setValue
(V value, ReferenceQueue<V> queueForValues) Methods inherited from class com.google.common.collect.MapMakerInternalMap.AbstractWeakKeyEntry
getHash, getKey, getNext
Methods inherited from class java.lang.ref.Reference
clear, clone, enqueue, get, isEnqueued, reachabilityFence, refersTo
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface com.google.common.collect.MapMakerInternalMap.InternalEntry
getHash, getKey, getNext
-
Field Details
-
valueReference
private volatile MapMakerInternalMap.WeakValueReference<K,V, valueReferenceMapMakerInternalMap.WeakKeyWeakValueEntry<K, V>>
-
-
Constructor Details
-
WeakKeyWeakValueEntry
WeakKeyWeakValueEntry(ReferenceQueue<K> queue, K key, int hash, MapMakerInternalMap.WeakKeyWeakValueEntry<K, V> next)
-
-
Method Details
-
getValue
Description copied from interface:MapMakerInternalMap.InternalEntry
Gets the value for the entry.- Specified by:
getValue
in interfaceMapMakerInternalMap.InternalEntry<K,
V, MapMakerInternalMap.WeakKeyWeakValueEntry<K, V>>
-
copy
MapMakerInternalMap.WeakKeyWeakValueEntry<K,V> copy(ReferenceQueue<K> queueForKeys, ReferenceQueue<V> queueForValues, MapMakerInternalMap.WeakKeyWeakValueEntry<K, V> newNext) -
clearValue
public void clearValue()Description copied from interface:MapMakerInternalMap.WeakValueEntry
Clears the weak value reference held by the entry. Should be used when the entry's value is overwritten.- Specified by:
clearValue
in interfaceMapMakerInternalMap.WeakValueEntry<K,
V, MapMakerInternalMap.WeakKeyWeakValueEntry<K, V>>
-
setValue
-
getValueReference
public MapMakerInternalMap.WeakValueReference<K,V, getValueReference()MapMakerInternalMap.WeakKeyWeakValueEntry<K, V>> Description copied from interface:MapMakerInternalMap.WeakValueEntry
Gets the weak value reference held by entry.- Specified by:
getValueReference
in interfaceMapMakerInternalMap.WeakValueEntry<K,
V, MapMakerInternalMap.WeakKeyWeakValueEntry<K, V>>
-