interface  com.github.benmanes.caffeine.cache.LocalCache extends java.lang.Object implements java.util.concurrent.ConcurrentMap
{
public abstract boolean isAsync();
public abstract boolean isRecordingStats();
public abstract com.github.benmanes.caffeine.cache.stats.StatsCounter statsCounter();
public abstract void notifyRemoval(java.lang.Object, java.lang.Object, com.github.benmanes.caffeine.cache.RemovalCause);
public abstract java.util.concurrent.Executor executor();
public abstract java.util.concurrent.ConcurrentMap refreshes();
public abstract com.github.benmanes.caffeine.cache.Expiry expiry();
public abstract com.github.benmanes.caffeine.cache.Ticker statsTicker();
public abstract long estimatedSize();
public abstract java.lang.Object referenceKey(java.lang.Object);
public abstract boolean isPendingEviction(java.lang.Object);
public abstract java.lang.Object getIfPresent(java.lang.Object, boolean);
public abstract java.lang.Object getIfPresentQuietly(java.lang.Object);
public abstract java.util.Map getAllPresent(java.lang.Iterable);
public abstract boolean replace(java.lang.Object, java.lang.Object, java.lang.Object, boolean);
public java.lang.Object compute(java.lang.Object, java.util.function.BiFunction)
{
java.util.function.BiFunction v;
com.github.benmanes.caffeine.cache.LocalCache v;
java.lang.Object v, v;
com.github.benmanes.caffeine.cache.Expiry v;
v := @this: com.github.benmanes.caffeine.cache.LocalCache;
v := @parameter: java.lang.Object;
v := @parameter: java.util.function.BiFunction;
v = interfaceinvoke v.<com.github.benmanes.caffeine.cache.LocalCache: com.github.benmanes.caffeine.cache.Expiry expiry()>();
v = interfaceinvoke v.<com.github.benmanes.caffeine.cache.LocalCache: java.lang.Object compute(java.lang.Object,java.util.function.BiFunction,com.github.benmanes.caffeine.cache.Expiry,boolean,boolean)>(v, v, v, 1, 1);
return v;
}
public abstract java.lang.Object compute(java.lang.Object, java.util.function.BiFunction, com.github.benmanes.caffeine.cache.Expiry, boolean, boolean);
public java.lang.Object computeIfAbsent(java.lang.Object, java.util.function.Function)
{
com.github.benmanes.caffeine.cache.LocalCache v;
java.lang.Object v, v;
java.util.function.Function v;
v := @this: com.github.benmanes.caffeine.cache.LocalCache;
v := @parameter: java.lang.Object;
v := @parameter: java.util.function.Function;
v = interfaceinvoke v.<com.github.benmanes.caffeine.cache.LocalCache: java.lang.Object computeIfAbsent(java.lang.Object,java.util.function.Function,boolean,boolean)>(v, v, 1, 1);
return v;
}
public abstract java.lang.Object computeIfAbsent(java.lang.Object, java.util.function.Function, boolean, boolean);
public void invalidateAll(java.lang.Iterable)
{
java.util.Iterator v;
com.github.benmanes.caffeine.cache.LocalCache v;
java.lang.Object v;
java.lang.Iterable v;
boolean v;
v := @this: com.github.benmanes.caffeine.cache.LocalCache;
v := @parameter: java.lang.Iterable;
v = interfaceinvoke v.<java.lang.Iterable: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
interfaceinvoke v.<com.github.benmanes.caffeine.cache.LocalCache: java.lang.Object remove(java.lang.Object)>(v);
goto label;
label:
return;
}
public abstract void cleanUp();
public void notifyOnReplace(java.lang.Object, java.lang.Object, java.lang.Object)
{
java.util.concurrent.Executor v;
java.util.function.BiConsumer v;
com.github.benmanes.caffeine.cache.LocalCache v;
java.lang.Object v, v, v;
boolean v;
com.github.benmanes.caffeine.cache.RemovalCause v;
v := @this: com.github.benmanes.caffeine.cache.LocalCache;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Object;
if v == null goto label;
if v != v goto label;
label:
return;
label:
v = interfaceinvoke v.<com.github.benmanes.caffeine.cache.LocalCache: boolean isAsync()>();
if v == 0 goto label;
v = staticinvoke <com.github.benmanes.caffeine.cache.LocalCache$lambda_notifyOnReplace_1__89: java.util.function.BiConsumer bootstrap$(com.github.benmanes.caffeine.cache.LocalCache,java.util.concurrent.CompletableFuture,java.lang.Object,java.lang.Object)>(v, v, v, v);
v = interfaceinvoke v.<com.github.benmanes.caffeine.cache.LocalCache: java.util.concurrent.Executor executor()>();
virtualinvoke v.<java.util.concurrent.CompletableFuture: java.util.concurrent.CompletableFuture whenCompleteAsync(java.util.function.BiConsumer,java.util.concurrent.Executor)>(v, v);
goto label;
label:
v = <com.github.benmanes.caffeine.cache.RemovalCause: com.github.benmanes.caffeine.cache.RemovalCause REPLACED>;
interfaceinvoke v.<com.github.benmanes.caffeine.cache.LocalCache: void notifyRemoval(java.lang.Object,java.lang.Object,com.github.benmanes.caffeine.cache.RemovalCause)>(v, v, v);
label:
return;
}
public java.util.function.Function statsAware(java.util.function.Function, boolean)
{
com.github.benmanes.caffeine.cache.LocalCache v;
java.util.function.Function v, v;
boolean v, v;
v := @this: com.github.benmanes.caffeine.cache.LocalCache;
v := @parameter: java.util.function.Function;
v := @parameter: boolean;
v = interfaceinvoke v.<com.github.benmanes.caffeine.cache.LocalCache: boolean isRecordingStats()>();
if v != 0 goto label;
return v;
label:
v = staticinvoke <com.github.benmanes.caffeine.cache.LocalCache$lambda_statsAware_2__90: java.util.function.Function bootstrap$(com.github.benmanes.caffeine.cache.LocalCache,java.util.function.Function,boolean)>(v, v, v);
return v;
}
public java.util.function.BiFunction statsAware(java.util.function.BiFunction)
{
com.github.benmanes.caffeine.cache.LocalCache v;
java.util.function.BiFunction v, v;
v := @this: com.github.benmanes.caffeine.cache.LocalCache;
v := @parameter: java.util.function.BiFunction;
v = interfaceinvoke v.<com.github.benmanes.caffeine.cache.LocalCache: java.util.function.BiFunction statsAware(java.util.function.BiFunction,boolean,boolean)>(v, 1, 1);
return v;
}
public java.util.function.BiFunction statsAware(java.util.function.BiFunction, boolean, boolean)
{
java.util.function.BiFunction v, v;
com.github.benmanes.caffeine.cache.LocalCache v;
boolean v, v, v;
v := @this: com.github.benmanes.caffeine.cache.LocalCache;
v := @parameter: java.util.function.BiFunction;
v := @parameter: boolean;
v := @parameter: boolean;
v = interfaceinvoke v.<com.github.benmanes.caffeine.cache.LocalCache: boolean isRecordingStats()>();
if v != 0 goto label;
return v;
label:
v = staticinvoke <com.github.benmanes.caffeine.cache.LocalCache$lambda_statsAware_3__91: java.util.function.BiFunction bootstrap$(com.github.benmanes.caffeine.cache.LocalCache,java.util.function.BiFunction,boolean,boolean)>(v, v, v, v);
return v;
}
}