package org.spigotmc;
import java.util.Locale;
import org.torch.server.cache.Caches;
import gnu.trove.strategy.HashingStrategy;
class CaseInsensitiveHashingStrategy implements HashingStrategy<String> {
private static final long serialVersionUID = -1L;
static final CaseInsensitiveHashingStrategy INSTANCE = new CaseInsensitiveHashingStrategy();
@Override
public int computeHashCode(String object) {
return Caches.toLowerCase(object, Locale.ROOT).hashCode();
}
@Override
public boolean equals(String o1, String o2) {
return o1.equals(o2) || (o1 instanceof String && o2 instanceof String && Caches.toLowerCase(o1, Locale.ROOT).equals(Caches.toLowerCase(o2, Locale.ROOT)));
}
}