public final class Weighers extends Object
Weigher and EntryWeigher implementations.| Modifier and Type | Method and Description | 
|---|---|
| static <K,V> EntryWeigher<K,V> | asEntryWeigher(Weigher<? super V> weigher)A entry weigher backed by the specified weigher. | 
| static Weigher<byte[]> | byteArray()A weigher where the value is a byte array and its weight is the number of
 bytes. | 
| static <E> Weigher<? super Collection<E>> | collection()A weigher where the value is a  Collectionand its weight is the
 number of elements. | 
| static <K,V> EntryWeigher<K,V> | entrySingleton()A weigher where an entry has a weight of  1. | 
| static <E> Weigher<? super Iterable<E>> | iterable()A weigher where the value is a  Iterableand its weight is the
 number of elements. | 
| static <E> Weigher<? super List<E>> | list()A weigher where the value is a  Listand its weight is the number
 of elements. | 
| static <A,B> Weigher<? super Map<A,B>> | map()A weigher where the value is a  Mapand its weight is the number of
 entries. | 
| static <E> Weigher<? super Set<E>> | set()A weigher where the value is a  Setand its weight is the number
 of elements. | 
| static <V> Weigher<V> | singleton()A weigher where a value has a weight of  1. | 
public static <K,V> EntryWeigher<K,V> asEntryWeigher(Weigher<? super V> weigher)
K - The key typeV - The value typeweigher - the weigher to be "wrapped" in a entry weigher.public static <K,V> EntryWeigher<K,V> entrySingleton()
1. A map bounded with
 this weigher will evict when the number of key-value pairs exceeds the
 capacity.K - The key typeV - The value typepublic static <V> Weigher<V> singleton()
1. A map bounded with
 this weigher will evict when the number of key-value pairs exceeds the
 capacity.V - The value typepublic static Weigher<byte[]> byteArray()
 A value with a weight of 0 will be rejected by the map. If a value
 with this weight can occur then the caller should eagerly evaluate the
 value and treat it as a removal operation. Alternatively, a custom weigher
 may be specified on the map to assign an empty value a positive weight.
public static <E> Weigher<? super Iterable<E>> iterable()
Iterable and its weight is the
 number of elements. This weigher only should be used when the alternative
 collection() weigher cannot be, as evaluation takes O(n) time. A
 map bounded with this weigher will evict when the total number of elements
 exceeds the capacity rather than the number of key-value pairs in the map.
 
 A value with a weight of 0 will be rejected by the map. If a value
 with this weight can occur then the caller should eagerly evaluate the
 value and treat it as a removal operation. Alternatively, a custom weigher
 may be specified on the map to assign an empty value a positive weight.
E - The element typepublic static <E> Weigher<? super Collection<E>> collection()
Collection and its weight is the
 number of elements. A map bounded with this weigher will evict when the
 total number of elements exceeds the capacity rather than the number of
 key-value pairs in the map.
 
 A value with a weight of 0 will be rejected by the map. If a value
 with this weight can occur then the caller should eagerly evaluate the
 value and treat it as a removal operation. Alternatively, a custom weigher
 may be specified on the map to assign an empty value a positive weight.
E - The element typepublic static <E> Weigher<? super List<E>> list()
List and its weight is the number
 of elements. A map bounded with this weigher will evict when the total
 number of elements exceeds the capacity rather than the number of
 key-value pairs in the map.
 
 A value with a weight of 0 will be rejected by the map. If a value
 with this weight can occur then the caller should eagerly evaluate the
 value and treat it as a removal operation. Alternatively, a custom weigher
 may be specified on the map to assign an empty value a positive weight.
E - The element typepublic static <E> Weigher<? super Set<E>> set()
Set and its weight is the number
 of elements. A map bounded with this weigher will evict when the total
 number of elements exceeds the capacity rather than the number of
 key-value pairs in the map.
 
 A value with a weight of 0 will be rejected by the map. If a value
 with this weight can occur then the caller should eagerly evaluate the
 value and treat it as a removal operation. Alternatively, a custom weigher
 may be specified on the map to assign an empty value a positive weight.
E - The element typepublic static <A,B> Weigher<? super Map<A,B>> map()
Map and its weight is the number of
 entries. A map bounded with this weigher will evict when the total number of
 entries across all values exceeds the capacity rather than the number of
 key-value pairs in the map.
 
 A value with a weight of 0 will be rejected by the map. If a value
 with this weight can occur then the caller should eagerly evaluate the
 value and treat it as a removal operation. Alternatively, a custom weigher
 may be specified on the map to assign an empty value a positive weight.
A - The key typeB - The value type