final class com.github.benmanes.caffeine.cache.UnboundedLocalCache$KeyIterator extends java.lang.Object implements java.util.Iterator
{
final com.github.benmanes.caffeine.cache.UnboundedLocalCache cache;
final java.util.Iterator iterator;
java.lang.Object current;
void <init>(com.github.benmanes.caffeine.cache.UnboundedLocalCache)
{
com.github.benmanes.caffeine.cache.UnboundedLocalCache v;
com.github.benmanes.caffeine.cache.UnboundedLocalCache$KeyIterator v;
java.util.Iterator v;
java.util.concurrent.ConcurrentHashMap$KeySetView v;
java.util.concurrent.ConcurrentHashMap v;
v := @this: com.github.benmanes.caffeine.cache.UnboundedLocalCache$KeyIterator;
v := @parameter: com.github.benmanes.caffeine.cache.UnboundedLocalCache;
specialinvoke v.<java.lang.Object: void <init>()>();
v = v.<com.github.benmanes.caffeine.cache.UnboundedLocalCache: java.util.concurrent.ConcurrentHashMap data>;
v = virtualinvoke v.<java.util.concurrent.ConcurrentHashMap: java.util.concurrent.ConcurrentHashMap$KeySetView keySet()>();
v = virtualinvoke v.<java.util.concurrent.ConcurrentHashMap$KeySetView: java.util.Iterator iterator()>();
v.<com.github.benmanes.caffeine.cache.UnboundedLocalCache$KeyIterator: java.util.Iterator iterator> = v;
v.<com.github.benmanes.caffeine.cache.UnboundedLocalCache$KeyIterator: com.github.benmanes.caffeine.cache.UnboundedLocalCache cache> = v;
return;
}
public boolean hasNext()
{
com.github.benmanes.caffeine.cache.UnboundedLocalCache$KeyIterator v;
java.util.Iterator v;
boolean v;
v := @this: com.github.benmanes.caffeine.cache.UnboundedLocalCache$KeyIterator;
v = v.<com.github.benmanes.caffeine.cache.UnboundedLocalCache$KeyIterator: java.util.Iterator iterator>;
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
return v;
}
public java.lang.Object next()
{
com.github.benmanes.caffeine.cache.UnboundedLocalCache$KeyIterator v;
java.util.Iterator v;
java.lang.Object v, v;
v := @this: com.github.benmanes.caffeine.cache.UnboundedLocalCache$KeyIterator;
v = v.<com.github.benmanes.caffeine.cache.UnboundedLocalCache$KeyIterator: java.util.Iterator iterator>;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v.<com.github.benmanes.caffeine.cache.UnboundedLocalCache$KeyIterator: java.lang.Object current> = v;
v = v.<com.github.benmanes.caffeine.cache.UnboundedLocalCache$KeyIterator: java.lang.Object current>;
return v;
}
public void remove()
{
java.lang.IllegalStateException v;
com.github.benmanes.caffeine.cache.UnboundedLocalCache v;
com.github.benmanes.caffeine.cache.UnboundedLocalCache$KeyIterator v;
java.lang.Object v, v;
v := @this: com.github.benmanes.caffeine.cache.UnboundedLocalCache$KeyIterator;
v = v.<com.github.benmanes.caffeine.cache.UnboundedLocalCache$KeyIterator: java.lang.Object current>;
if v != null goto label;
v = new java.lang.IllegalStateException;
specialinvoke v.<java.lang.IllegalStateException: void <init>()>();
throw v;
label:
v = v.<com.github.benmanes.caffeine.cache.UnboundedLocalCache$KeyIterator: com.github.benmanes.caffeine.cache.UnboundedLocalCache cache>;
v = v.<com.github.benmanes.caffeine.cache.UnboundedLocalCache$KeyIterator: java.lang.Object current>;
virtualinvoke v.<com.github.benmanes.caffeine.cache.UnboundedLocalCache: java.lang.Object remove(java.lang.Object)>(v);
v.<com.github.benmanes.caffeine.cache.UnboundedLocalCache$KeyIterator: java.lang.Object current> = null;
return;
}
}