138 lines
5.9 KiB
Java
138 lines
5.9 KiB
Java
package com.google.common.collect;
|
|
|
|
import com.google.common.base.Preconditions;
|
|
import java.io.IOException;
|
|
import java.io.ObjectInputStream;
|
|
import java.io.ObjectOutputStream;
|
|
import java.lang.Enum;
|
|
import java.util.Collection;
|
|
import java.util.Iterator;
|
|
import java.util.Set;
|
|
|
|
/* loaded from: classes.dex */
|
|
public final class EnumMultiset<E extends Enum<E>> extends AbstractMapBasedMultiset<E> {
|
|
private static final long serialVersionUID = 0;
|
|
private transient Class<E> type;
|
|
|
|
private EnumMultiset(Class<E> cls) {
|
|
super(new EnumCountHashMap(cls));
|
|
this.type = cls;
|
|
}
|
|
|
|
public static <E extends Enum<E>> EnumMultiset<E> create(Class<E> cls) {
|
|
return new EnumMultiset<>(cls);
|
|
}
|
|
|
|
private void readObject(ObjectInputStream objectInputStream) throws IOException, ClassNotFoundException {
|
|
objectInputStream.defaultReadObject();
|
|
this.type = (Class) objectInputStream.readObject();
|
|
setBackingMap(new EnumCountHashMap(this.type));
|
|
Serialization.a(this, objectInputStream);
|
|
}
|
|
|
|
private void writeObject(ObjectOutputStream objectOutputStream) throws IOException {
|
|
objectOutputStream.defaultWriteObject();
|
|
objectOutputStream.writeObject(this.type);
|
|
Serialization.a(this, objectOutputStream);
|
|
}
|
|
|
|
@Override // com.google.common.collect.AbstractMultiset, java.util.AbstractCollection, java.util.Collection
|
|
public /* bridge */ /* synthetic */ boolean addAll(Collection collection) {
|
|
return super.addAll(collection);
|
|
}
|
|
|
|
@Override // com.google.common.collect.AbstractMapBasedMultiset, com.google.common.collect.AbstractMultiset, java.util.AbstractCollection, java.util.Collection
|
|
public /* bridge */ /* synthetic */ void clear() {
|
|
super.clear();
|
|
}
|
|
|
|
@Override // com.google.common.collect.AbstractMultiset, java.util.AbstractCollection, java.util.Collection, com.google.common.collect.Multiset
|
|
public /* bridge */ /* synthetic */ boolean contains(Object obj) {
|
|
return super.contains(obj);
|
|
}
|
|
|
|
@Override // com.google.common.collect.AbstractMapBasedMultiset, com.google.common.collect.AbstractMultiset, com.google.common.collect.Multiset
|
|
public /* bridge */ /* synthetic */ int count(Object obj) {
|
|
return super.count(obj);
|
|
}
|
|
|
|
@Override // com.google.common.collect.AbstractMapBasedMultiset, com.google.common.collect.AbstractMultiset
|
|
public /* bridge */ /* synthetic */ Set createEntrySet() {
|
|
return super.createEntrySet();
|
|
}
|
|
|
|
@Override // com.google.common.collect.AbstractMultiset, com.google.common.collect.Multiset
|
|
public /* bridge */ /* synthetic */ Set elementSet() {
|
|
return super.elementSet();
|
|
}
|
|
|
|
@Override // com.google.common.collect.AbstractMultiset, com.google.common.collect.Multiset
|
|
public /* bridge */ /* synthetic */ Set entrySet() {
|
|
return super.entrySet();
|
|
}
|
|
|
|
@Override // com.google.common.collect.AbstractMultiset, java.util.Collection, com.google.common.collect.Multiset
|
|
public /* bridge */ /* synthetic */ boolean equals(Object obj) {
|
|
return super.equals(obj);
|
|
}
|
|
|
|
@Override // com.google.common.collect.AbstractMultiset, java.util.Collection, com.google.common.collect.Multiset
|
|
public /* bridge */ /* synthetic */ int hashCode() {
|
|
return super.hashCode();
|
|
}
|
|
|
|
@Override // com.google.common.collect.AbstractMultiset, java.util.AbstractCollection, java.util.Collection
|
|
public /* bridge */ /* synthetic */ boolean isEmpty() {
|
|
return super.isEmpty();
|
|
}
|
|
|
|
@Override // com.google.common.collect.AbstractMapBasedMultiset, com.google.common.collect.AbstractMultiset, java.util.AbstractCollection, java.util.Collection, java.lang.Iterable
|
|
public /* bridge */ /* synthetic */ Iterator iterator() {
|
|
return super.iterator();
|
|
}
|
|
|
|
@Override // com.google.common.collect.AbstractMapBasedMultiset, com.google.common.collect.AbstractMultiset, com.google.common.collect.Multiset
|
|
public /* bridge */ /* synthetic */ int remove(Object obj, int i) {
|
|
return super.remove(obj, i);
|
|
}
|
|
|
|
@Override // com.google.common.collect.AbstractMultiset, java.util.AbstractCollection, java.util.Collection
|
|
public /* bridge */ /* synthetic */ boolean removeAll(Collection collection) {
|
|
return super.removeAll(collection);
|
|
}
|
|
|
|
@Override // com.google.common.collect.AbstractMultiset, java.util.AbstractCollection, java.util.Collection
|
|
public /* bridge */ /* synthetic */ boolean retainAll(Collection collection) {
|
|
return super.retainAll(collection);
|
|
}
|
|
|
|
@Override // com.google.common.collect.AbstractMapBasedMultiset, com.google.common.collect.AbstractMultiset, java.util.AbstractCollection, java.util.Collection, com.google.common.collect.Multiset
|
|
public /* bridge */ /* synthetic */ int size() {
|
|
return super.size();
|
|
}
|
|
|
|
@Override // com.google.common.collect.AbstractMultiset, java.util.AbstractCollection
|
|
public /* bridge */ /* synthetic */ String toString() {
|
|
return super.toString();
|
|
}
|
|
|
|
public static <E extends Enum<E>> EnumMultiset<E> create(Iterable<E> iterable) {
|
|
Iterator<E> it = iterable.iterator();
|
|
Preconditions.a(it.hasNext(), "EnumMultiset constructor passed empty Iterable");
|
|
EnumMultiset<E> enumMultiset = new EnumMultiset<>(it.next().getDeclaringClass());
|
|
Iterables.a((Collection) enumMultiset, (Iterable) iterable);
|
|
return enumMultiset;
|
|
}
|
|
|
|
@Override // com.google.common.collect.AbstractMultiset, java.util.AbstractCollection, java.util.Collection, com.google.common.collect.Multiset
|
|
public /* bridge */ /* synthetic */ boolean remove(Object obj) {
|
|
return super.remove(obj);
|
|
}
|
|
|
|
public static <E extends Enum<E>> EnumMultiset<E> create(Iterable<E> iterable, Class<E> cls) {
|
|
EnumMultiset<E> create = create(cls);
|
|
Iterables.a((Collection) create, (Iterable) iterable);
|
|
return create;
|
|
}
|
|
}
|