Files
adif-api-reverse-engineering/apk_decompiled/sources/kotlin/reflect/jvm/internal/ClassValueCache.java

42 lines
2.6 KiB
Java

package kotlin.reflect.jvm.internal;
import java.lang.ref.SoftReference;
import kotlin.Metadata;
import kotlin.jvm.functions.Function1;
import kotlin.jvm.internal.Intrinsics;
import kotlin.jvm.internal.SourceDebugExtension;
@Metadata(d1 = {"\u0000&\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\b\u0002\n\u0002\u0018\u0002\n\u0000\n\u0002\u0010\u0002\n\u0002\b\u0004\b\u0003\u0018\u0000*\u0004\b\u0000\u0010\u00012\b\u0012\u0004\u0012\u0002H\u00010\u0002B\u001d\u0012\u0016\u0010\u0003\u001a\u0012\u0012\b\u0012\u0006\u0012\u0002\b\u00030\u0005\u0012\u0004\u0012\u00028\u00000\u0004¢\u0006\u0002\u0010\u0006J\b\u0010\t\u001a\u00020\nH\u0016J\u0019\u0010\u000b\u001a\u00028\u00002\n\u0010\f\u001a\u0006\u0012\u0002\b\u00030\u0005H\u0016¢\u0006\u0002\u0010\rR\u0014\u0010\u0007\u001a\b\u0012\u0004\u0012\u00028\u00000\bX\u0082\u000e¢\u0006\u0002\n\u0000¨\u0006\u000e"}, d2 = {"Lkotlin/reflect/jvm/internal/ClassValueCache;", "V", "Lkotlin/reflect/jvm/internal/CacheByClass;", "compute", "Lkotlin/Function1;", "Ljava/lang/Class;", "(Lkotlin/jvm/functions/Function1;)V", "classValue", "Lkotlin/reflect/jvm/internal/ComputableClassValue;", "clear", "", "get", "key", "(Ljava/lang/Class;)Ljava/lang/Object;", "kotlin-reflection"}, k = 1, mv = {1, 9, 0}, xi = 48)
@SourceDebugExtension({"SMAP\nCacheByClass.kt\nKotlin\n*S Kotlin\n*F\n+ 1 CacheByClass.kt\nkotlin/reflect/jvm/internal/ClassValueCache\n+ 2 fake.kt\nkotlin/jvm/internal/FakeKt\n*L\n1#1,98:1\n1#2:99\n*E\n"})
/* loaded from: classes3.dex */
final class ClassValueCache<V> extends CacheByClass<V> {
private volatile ComputableClassValue<V> classValue;
public ClassValueCache(Function1<? super Class<?>, ? extends V> compute) {
Intrinsics.checkNotNullParameter(compute, "compute");
this.classValue = new ComputableClassValue<>(compute);
}
@Override // kotlin.reflect.jvm.internal.CacheByClass
public void clear() {
this.classValue = this.classValue.createNewCopy();
}
@Override // kotlin.reflect.jvm.internal.CacheByClass
public V get(Class<?> key) {
Object obj;
Object obj2;
Intrinsics.checkNotNullParameter(key, "key");
ComputableClassValue<V> computableClassValue = this.classValue;
obj = computableClassValue.get(key);
V v3 = (V) ((SoftReference) obj).get();
if (v3 != null) {
return v3;
}
computableClassValue.remove(key);
obj2 = computableClassValue.get(key);
V v4 = (V) ((SoftReference) obj2).get();
return v4 != null ? v4 : computableClassValue.compute.invoke(key);
}
}