175 lines
5.9 KiB
Java
175 lines
5.9 KiB
Java
package com.google.common.collect;
|
|
|
|
import com.google.common.collect.ImmutableMap;
|
|
import java.util.Collection;
|
|
import java.util.Map;
|
|
|
|
/* loaded from: classes.dex */
|
|
public abstract class ImmutableBiMap<K, V> extends ImmutableMap<K, V> implements BiMap<K, V> {
|
|
|
|
public static final class Builder<K, V> extends ImmutableMap.Builder<K, V> {
|
|
public Builder() {
|
|
}
|
|
|
|
Builder(int i) {
|
|
super(i);
|
|
}
|
|
|
|
/* JADX WARN: Multi-variable type inference failed */
|
|
@Override // com.google.common.collect.ImmutableMap.Builder
|
|
public /* bridge */ /* synthetic */ ImmutableMap.Builder a(Object obj, Object obj2) {
|
|
a((Builder<K, V>) obj, obj2);
|
|
return this;
|
|
}
|
|
|
|
@Override // com.google.common.collect.ImmutableMap.Builder
|
|
public /* bridge */ /* synthetic */ ImmutableMap.Builder a(Map.Entry entry) {
|
|
a(entry);
|
|
return this;
|
|
}
|
|
|
|
@Override // com.google.common.collect.ImmutableMap.Builder
|
|
public /* bridge */ /* synthetic */ ImmutableMap.Builder a(Iterable iterable) {
|
|
a(iterable);
|
|
return this;
|
|
}
|
|
|
|
@Override // com.google.common.collect.ImmutableMap.Builder
|
|
public /* bridge */ /* synthetic */ ImmutableMap.Builder a(Map map) {
|
|
a(map);
|
|
return this;
|
|
}
|
|
|
|
@Override // com.google.common.collect.ImmutableMap.Builder
|
|
public Builder<K, V> a(K k, V v) {
|
|
super.a((Builder<K, V>) k, (K) v);
|
|
return this;
|
|
}
|
|
|
|
@Override // com.google.common.collect.ImmutableMap.Builder
|
|
public Builder<K, V> a(Map.Entry<? extends K, ? extends V> entry) {
|
|
super.a((Map.Entry) entry);
|
|
return this;
|
|
}
|
|
|
|
@Override // com.google.common.collect.ImmutableMap.Builder
|
|
public Builder<K, V> a(Map<? extends K, ? extends V> map) {
|
|
super.a((Map) map);
|
|
return this;
|
|
}
|
|
|
|
@Override // com.google.common.collect.ImmutableMap.Builder
|
|
public Builder<K, V> a(Iterable<? extends Map.Entry<? extends K, ? extends V>> iterable) {
|
|
super.a((Iterable) iterable);
|
|
return this;
|
|
}
|
|
|
|
@Override // com.google.common.collect.ImmutableMap.Builder
|
|
public ImmutableBiMap<K, V> a() {
|
|
if (this.c == 0) {
|
|
return ImmutableBiMap.of();
|
|
}
|
|
b();
|
|
this.d = true;
|
|
return new RegularImmutableBiMap(this.b, this.c);
|
|
}
|
|
}
|
|
|
|
private static class SerializedForm extends ImmutableMap.SerializedForm {
|
|
SerializedForm(ImmutableBiMap<?, ?> immutableBiMap) {
|
|
super(immutableBiMap);
|
|
}
|
|
|
|
@Override // com.google.common.collect.ImmutableMap.SerializedForm
|
|
Object readResolve() {
|
|
return a(new Builder());
|
|
}
|
|
}
|
|
|
|
ImmutableBiMap() {
|
|
}
|
|
|
|
public static <K, V> Builder<K, V> builder() {
|
|
return new Builder<>();
|
|
}
|
|
|
|
public static <K, V> ImmutableBiMap<K, V> copyOf(Map<? extends K, ? extends V> map) {
|
|
if (map instanceof ImmutableBiMap) {
|
|
ImmutableBiMap<K, V> immutableBiMap = (ImmutableBiMap) map;
|
|
if (!immutableBiMap.isPartialView()) {
|
|
return immutableBiMap;
|
|
}
|
|
}
|
|
return copyOf((Iterable) map.entrySet());
|
|
}
|
|
|
|
public static <K, V> ImmutableBiMap<K, V> of() {
|
|
return RegularImmutableBiMap.f;
|
|
}
|
|
|
|
@Deprecated
|
|
public V forcePut(K k, V v) {
|
|
throw new UnsupportedOperationException();
|
|
}
|
|
|
|
@Override // com.google.common.collect.BiMap
|
|
public abstract ImmutableBiMap<V, K> inverse();
|
|
|
|
@Override // com.google.common.collect.ImmutableMap
|
|
Object writeReplace() {
|
|
return new SerializedForm(this);
|
|
}
|
|
|
|
public static <K, V> ImmutableBiMap<K, V> of(K k, V v) {
|
|
CollectPreconditions.a(k, v);
|
|
return new RegularImmutableBiMap(new Object[]{k, v}, 1);
|
|
}
|
|
|
|
/* JADX INFO: Access modifiers changed from: package-private */
|
|
@Override // com.google.common.collect.ImmutableMap
|
|
public final ImmutableSet<V> createValues() {
|
|
throw new AssertionError("should never be called");
|
|
}
|
|
|
|
public static <K, V> ImmutableBiMap<K, V> of(K k, V v, K k2, V v2) {
|
|
CollectPreconditions.a(k, v);
|
|
CollectPreconditions.a(k2, v2);
|
|
return new RegularImmutableBiMap(new Object[]{k, v, k2, v2}, 2);
|
|
}
|
|
|
|
@Override // com.google.common.collect.ImmutableMap, java.util.Map
|
|
public ImmutableSet<V> values() {
|
|
return inverse().keySet();
|
|
}
|
|
|
|
public static <K, V> ImmutableBiMap<K, V> copyOf(Iterable<? extends Map.Entry<? extends K, ? extends V>> iterable) {
|
|
Builder builder = new Builder(iterable instanceof Collection ? ((Collection) iterable).size() : 4);
|
|
builder.a((Iterable) iterable);
|
|
return builder.a();
|
|
}
|
|
|
|
public static <K, V> ImmutableBiMap<K, V> of(K k, V v, K k2, V v2, K k3, V v3) {
|
|
CollectPreconditions.a(k, v);
|
|
CollectPreconditions.a(k2, v2);
|
|
CollectPreconditions.a(k3, v3);
|
|
return new RegularImmutableBiMap(new Object[]{k, v, k2, v2, k3, v3}, 3);
|
|
}
|
|
|
|
public static <K, V> ImmutableBiMap<K, V> of(K k, V v, K k2, V v2, K k3, V v3, K k4, V v4) {
|
|
CollectPreconditions.a(k, v);
|
|
CollectPreconditions.a(k2, v2);
|
|
CollectPreconditions.a(k3, v3);
|
|
CollectPreconditions.a(k4, v4);
|
|
return new RegularImmutableBiMap(new Object[]{k, v, k2, v2, k3, v3, k4, v4}, 4);
|
|
}
|
|
|
|
public static <K, V> ImmutableBiMap<K, V> of(K k, V v, K k2, V v2, K k3, V v3, K k4, V v4, K k5, V v5) {
|
|
CollectPreconditions.a(k, v);
|
|
CollectPreconditions.a(k2, v2);
|
|
CollectPreconditions.a(k3, v3);
|
|
CollectPreconditions.a(k4, v4);
|
|
CollectPreconditions.a(k5, v5);
|
|
return new RegularImmutableBiMap(new Object[]{k, v, k2, v2, k3, v3, k4, v4, k5, v5}, 5);
|
|
}
|
|
}
|