MCPcopy Create free account
hub / github.com/antlr/codebuff / asImmutable

Method asImmutable

output/java_guava/1.4.16/ImmutableEnumMap.java:36–46  ·  view source on GitHub ↗
(EnumMap<K, V> map)

Source from the content-addressed store, hash-verified

34@SuppressWarnings("serial") // we're overriding default serialization
35final class ImmutableEnumMap<K extends Enum<K>, V> extends IteratorBasedImmutableMap<K, V> {
36 static <K extends Enum<K>, V> ImmutableMap<K, V> asImmutable(EnumMap<K, V> map) {
37 switch (map.size()) {
38 case 0:
39 return ImmutableMap.of();
40 case 1:
41 Entry<K, V> entry = Iterables.getOnlyElement(map.entrySet());
42 return ImmutableMap.of(entry.getKey(), entry.getValue());
43 default:
44 return new ImmutableEnumMap<K, V>(map);
45 }
46 }
47
48 private final transient EnumMap<K, V> delegate;
49 private ImmutableEnumMap(EnumMap<K, V> delegate) {

Callers 2

immutableEnumMapMethod · 0.95
copyOfEnumMapMethod · 0.95

Calls 6

ofMethod · 0.95
getOnlyElementMethod · 0.95
sizeMethod · 0.65
entrySetMethod · 0.65
getKeyMethod · 0.65
getValueMethod · 0.65

Tested by

no test coverage detected