56 |
|
* return x instanceof Person && k.name.equals(((Person)x).name); |
57 |
|
* } |
58 |
|
* public int hash(Object x) { |
59 |
< |
* return (x instanceof Person)? ((Person)x).name.hashCode() : 0; |
59 |
> |
* return (x instanceof Person) ? ((Person)x).name.hashCode() : 0; |
60 |
|
* } |
61 |
|
* }, |
62 |
|
* STRONG, EQUALS, 0); |
236 |
|
* simple. The most common usage is to construct a new object |
237 |
|
* serving as an initial mapped value. |
238 |
|
* |
239 |
< |
* @param key the (nonnull) key |
239 |
> |
* @param key the (non-null) key |
240 |
|
* @return a value, or null if none |
241 |
|
*/ |
242 |
|
V map(K key); |
1010 |
|
if (seg != null && seg.getTableForTraversal() != null) |
1011 |
|
sum += seg.count; |
1012 |
|
} |
1013 |
< |
return sum >= Integer.MAX_VALUE? Integer.MAX_VALUE : (int)sum; |
1013 |
> |
return (sum >= Integer.MAX_VALUE) ? Integer.MAX_VALUE : (int) sum; |
1014 |
|
} |
1015 |
|
|
1016 |
|
/** |
1069 |
|
/** |
1070 |
|
* If the specified key is not already associated with a value, |
1071 |
|
* computes its value using the given mappingFunction, and if |
1072 |
< |
* nonnull, enters it into the map. This is equivalent to |
1072 |
> |
* non-null, enters it into the map. This is equivalent to |
1073 |
|
* |
1074 |
|
* <pre> |
1075 |
|
* if (map.containsKey(key)) |
1158 |
|
* <pre> |
1159 |
|
* map.compute(word, new RemappingFunction<String,Integer>() { |
1160 |
|
* public Integer remap(String k, Integer v) { |
1161 |
< |
* return v == null? 1 : v + 1; |
1161 |
> |
* return (v == null) ? 1 : v + 1; |
1162 |
|
* }}); |
1163 |
|
* </pre> |
1164 |
|
* |
1414 |
|
if (!(o instanceof Map.Entry)) |
1415 |
|
return false; |
1416 |
|
Map.Entry<?,?> e = (Map.Entry<?,?>)o; |
1417 |
< |
return CustomConcurrentHashMap.this.remove(e.getKey(), e.getValue()); |
1417 |
> |
return CustomConcurrentHashMap.this.remove(e.getKey(), |
1418 |
> |
e.getValue()); |
1419 |
|
} |
1420 |
|
public int size() { |
1421 |
|
return CustomConcurrentHashMap.this.size(); |
1976 |
|
} |
1977 |
|
public final Object getValue() { |
1978 |
|
EmbeddedWeakReference vr = valueRef; |
1979 |
< |
return vr == null? null : vr.get(); |
1979 |
> |
return (vr == null) ? null : vr.get(); |
1980 |
|
} |
1981 |
|
public final void setValue(Object value) { |
1982 |
|
if (value == null) |
2044 |
|
} |
2045 |
|
public final Object getValue() { |
2046 |
|
EmbeddedSoftReference vr = valueRef; |
2047 |
< |
return vr == null? null : vr.get(); |
2047 |
> |
return (vr == null) ? null : vr.get(); |
2048 |
|
} |
2049 |
|
public final void setValue(Object value) { |
2050 |
|
if (value == null) |
2115 |
|
|
2116 |
|
static abstract class WeakKeySelfValueNode |
2117 |
|
extends WeakKeyNode { |
2118 |
< |
WeakKeySelfValueNode(int locator, Object key, CustomConcurrentHashMap cchm) { |
2118 |
> |
WeakKeySelfValueNode(int locator, Object key, |
2119 |
> |
CustomConcurrentHashMap cchm) { |
2120 |
|
super(locator, key, cchm); |
2121 |
|
} |
2122 |
|
public final Object getValue() { return get(); } |
2125 |
|
|
2126 |
|
static final class TerminalWeakKeySelfValueNode |
2127 |
|
extends WeakKeySelfValueNode { |
2128 |
< |
TerminalWeakKeySelfValueNode(int locator, Object key, CustomConcurrentHashMap cchm) { |
2128 |
> |
TerminalWeakKeySelfValueNode(int locator, Object key, |
2129 |
> |
CustomConcurrentHashMap cchm) { |
2130 |
|
super(locator, key, cchm); |
2131 |
|
} |
2132 |
|
public final Node getLinkage() { return null; } |
2136 |
|
static final class LinkedWeakKeySelfValueNode |
2137 |
|
extends WeakKeySelfValueNode { |
2138 |
|
volatile Node linkage; |
2139 |
< |
LinkedWeakKeySelfValueNode(int locator, Object key, CustomConcurrentHashMap cchm, |
2139 |
> |
LinkedWeakKeySelfValueNode(int locator, Object key, |
2140 |
> |
CustomConcurrentHashMap cchm, |
2141 |
|
Node linkage) { |
2142 |
|
super(locator, key, cchm); |
2143 |
|
this.linkage = linkage; |
2166 |
|
static abstract class WeakKeyStrongValueNode |
2167 |
|
extends WeakKeyNode { |
2168 |
|
volatile Object value; |
2169 |
< |
WeakKeyStrongValueNode(int locator, Object key, Object value, CustomConcurrentHashMap cchm) { |
2169 |
> |
WeakKeyStrongValueNode(int locator, Object key, Object value, |
2170 |
> |
CustomConcurrentHashMap cchm) { |
2171 |
|
super(locator, key, cchm); |
2172 |
|
this.value = value; |
2173 |
|
} |
2178 |
|
static final class TerminalWeakKeyStrongValueNode |
2179 |
|
extends WeakKeyStrongValueNode { |
2180 |
|
TerminalWeakKeyStrongValueNode(int locator, |
2181 |
< |
Object key, Object value, CustomConcurrentHashMap cchm) { |
2181 |
> |
Object key, Object value, |
2182 |
> |
CustomConcurrentHashMap cchm) { |
2183 |
|
super(locator, key, value, cchm); |
2184 |
|
} |
2185 |
|
public final Node getLinkage() { return null; } |
2190 |
|
extends WeakKeyStrongValueNode { |
2191 |
|
volatile Node linkage; |
2192 |
|
LinkedWeakKeyStrongValueNode(int locator, |
2193 |
< |
Object key, Object value, CustomConcurrentHashMap cchm, |
2193 |
> |
Object key, Object value, |
2194 |
> |
CustomConcurrentHashMap cchm, |
2195 |
|
Node linkage) { |
2196 |
|
super(locator, key, value, cchm); |
2197 |
|
this.linkage = linkage; |
2282 |
|
} |
2283 |
|
public final Object getValue() { |
2284 |
|
EmbeddedWeakReference vr = valueRef; |
2285 |
< |
return vr == null? null : vr.get(); |
2285 |
> |
return (vr == null) ? null : vr.get(); |
2286 |
|
} |
2287 |
|
public final void setValue(Object value) { |
2288 |
|
if (value == null) |
2345 |
|
} |
2346 |
|
public final Object getValue() { |
2347 |
|
EmbeddedSoftReference vr = valueRef; |
2348 |
< |
return vr == null? null : vr.get(); |
2348 |
> |
return (vr == null) ? null : vr.get(); |
2349 |
|
} |
2350 |
|
public final void setValue(Object value) { |
2351 |
|
if (value == null) |
2416 |
|
|
2417 |
|
static abstract class SoftKeySelfValueNode |
2418 |
|
extends SoftKeyNode { |
2419 |
< |
SoftKeySelfValueNode(int locator, Object key, CustomConcurrentHashMap cchm) { |
2419 |
> |
SoftKeySelfValueNode(int locator, Object key, |
2420 |
> |
CustomConcurrentHashMap cchm) { |
2421 |
|
super(locator, key, cchm); |
2422 |
|
} |
2423 |
|
public final Object getValue() { return get(); } |
2426 |
|
|
2427 |
|
static final class TerminalSoftKeySelfValueNode |
2428 |
|
extends SoftKeySelfValueNode { |
2429 |
< |
TerminalSoftKeySelfValueNode(int locator, Object key, CustomConcurrentHashMap cchm) { |
2429 |
> |
TerminalSoftKeySelfValueNode(int locator, Object key, |
2430 |
> |
CustomConcurrentHashMap cchm) { |
2431 |
|
super(locator, key, cchm); |
2432 |
|
} |
2433 |
|
public final Node getLinkage() { return null; } |
2437 |
|
static final class LinkedSoftKeySelfValueNode |
2438 |
|
extends SoftKeySelfValueNode { |
2439 |
|
volatile Node linkage; |
2440 |
< |
LinkedSoftKeySelfValueNode(int locator, Object key, CustomConcurrentHashMap cchm, |
2440 |
> |
LinkedSoftKeySelfValueNode(int locator, Object key, |
2441 |
> |
CustomConcurrentHashMap cchm, |
2442 |
|
Node linkage) { |
2443 |
|
super(locator, key, cchm); |
2444 |
|
this.linkage = linkage; |
2467 |
|
static abstract class SoftKeyStrongValueNode |
2468 |
|
extends SoftKeyNode { |
2469 |
|
volatile Object value; |
2470 |
< |
SoftKeyStrongValueNode(int locator, Object key, Object value, CustomConcurrentHashMap cchm) { |
2470 |
> |
SoftKeyStrongValueNode(int locator, Object key, Object value, |
2471 |
> |
CustomConcurrentHashMap cchm) { |
2472 |
|
super(locator, key, cchm); |
2473 |
|
this.value = value; |
2474 |
|
} |
2479 |
|
static final class TerminalSoftKeyStrongValueNode |
2480 |
|
extends SoftKeyStrongValueNode { |
2481 |
|
TerminalSoftKeyStrongValueNode(int locator, |
2482 |
< |
Object key, Object value, CustomConcurrentHashMap cchm) { |
2482 |
> |
Object key, Object value, |
2483 |
> |
CustomConcurrentHashMap cchm) { |
2484 |
|
super(locator, key, value, cchm); |
2485 |
|
} |
2486 |
|
public final Node getLinkage() { return null; } |
2491 |
|
extends SoftKeyStrongValueNode { |
2492 |
|
volatile Node linkage; |
2493 |
|
LinkedSoftKeyStrongValueNode(int locator, |
2494 |
< |
Object key, Object value, CustomConcurrentHashMap cchm, |
2494 |
> |
Object key, Object value, |
2495 |
> |
CustomConcurrentHashMap cchm, |
2496 |
|
Node linkage) { |
2497 |
|
super(locator, key, value, cchm); |
2498 |
|
this.linkage = linkage; |
2583 |
|
} |
2584 |
|
public final Object getValue() { |
2585 |
|
EmbeddedWeakReference vr = valueRef; |
2586 |
< |
return vr == null? null : vr.get(); |
2586 |
> |
return (vr == null) ? null : vr.get(); |
2587 |
|
} |
2588 |
|
public final void setValue(Object value) { |
2589 |
|
if (value == null) |
2646 |
|
} |
2647 |
|
public final Object getValue() { |
2648 |
|
EmbeddedSoftReference vr = valueRef; |
2649 |
< |
return vr == null? null : vr.get(); |
2649 |
> |
return (vr == null) ? null : vr.get(); |
2650 |
|
} |
2651 |
|
public final void setValue(Object value) { |
2652 |
|
if (value == null) |
2874 |
|
} |
2875 |
|
public final Object getValue() { |
2876 |
|
EmbeddedWeakReference vr = valueRef; |
2877 |
< |
return vr == null? null : vr.get(); |
2877 |
> |
return (vr == null) ? null : vr.get(); |
2878 |
|
} |
2879 |
|
public final void setValue(Object value) { |
2880 |
|
if (value == null) |
2931 |
|
volatile EmbeddedSoftReference valueRef; |
2932 |
|
final CustomConcurrentHashMap cchm; |
2933 |
|
IntKeySoftValueNode(int locator, Object key, Object value, |
2934 |
< |
CustomConcurrentHashMap cchm) { |
2934 |
> |
CustomConcurrentHashMap cchm) { |
2935 |
|
super(locator, key); |
2936 |
|
this.cchm = cchm; |
2937 |
|
if (value != null) |
2942 |
|
} |
2943 |
|
public final Object getValue() { |
2944 |
|
EmbeddedSoftReference vr = valueRef; |
2945 |
< |
return vr == null? null : vr.get(); |
2945 |
> |
return (vr == null) ? null : vr.get(); |
2946 |
|
} |
2947 |
|
public final void setValue(Object value) { |
2948 |
|
if (value == null) |