final class com.google.common.cache.LocalCache$AccessQueue extends java.util.AbstractQueue
{
final com.google.common.cache.ReferenceEntry head;
void <init>()
{
com.google.common.cache.LocalCache$AccessQueue v;
com.google.common.cache.LocalCache$AccessQueue$1 v;
v := @this: com.google.common.cache.LocalCache$AccessQueue;
specialinvoke v.<java.util.AbstractQueue: void <init>()>();
v = new com.google.common.cache.LocalCache$AccessQueue$1;
specialinvoke v.<com.google.common.cache.LocalCache$AccessQueue$1: void <init>(com.google.common.cache.LocalCache$AccessQueue)>(v);
v.<com.google.common.cache.LocalCache$AccessQueue: com.google.common.cache.ReferenceEntry head> = v;
return;
}
public boolean offer(com.google.common.cache.ReferenceEntry)
{
com.google.common.cache.LocalCache$AccessQueue v;
com.google.common.cache.ReferenceEntry v, v, v, v, v, v;
v := @this: com.google.common.cache.LocalCache$AccessQueue;
v := @parameter: com.google.common.cache.ReferenceEntry;
v = interfaceinvoke v.<com.google.common.cache.ReferenceEntry: com.google.common.cache.ReferenceEntry getPreviousInAccessQueue()>();
v = interfaceinvoke v.<com.google.common.cache.ReferenceEntry: com.google.common.cache.ReferenceEntry getNextInAccessQueue()>();
staticinvoke <com.google.common.cache.LocalCache: void connectAccessOrder(com.google.common.cache.ReferenceEntry,com.google.common.cache.ReferenceEntry)>(v, v);
v = v.<com.google.common.cache.LocalCache$AccessQueue: com.google.common.cache.ReferenceEntry head>;
v = interfaceinvoke v.<com.google.common.cache.ReferenceEntry: com.google.common.cache.ReferenceEntry getPreviousInAccessQueue()>();
staticinvoke <com.google.common.cache.LocalCache: void connectAccessOrder(com.google.common.cache.ReferenceEntry,com.google.common.cache.ReferenceEntry)>(v, v);
v = v.<com.google.common.cache.LocalCache$AccessQueue: com.google.common.cache.ReferenceEntry head>;
staticinvoke <com.google.common.cache.LocalCache: void connectAccessOrder(com.google.common.cache.ReferenceEntry,com.google.common.cache.ReferenceEntry)>(v, v);
return 1;
}
public com.google.common.cache.ReferenceEntry peek()
{
com.google.common.cache.LocalCache$AccessQueue v;
com.google.common.cache.ReferenceEntry v, v, v, v;
v := @this: com.google.common.cache.LocalCache$AccessQueue;
v = v.<com.google.common.cache.LocalCache$AccessQueue: com.google.common.cache.ReferenceEntry head>;
v = interfaceinvoke v.<com.google.common.cache.ReferenceEntry: com.google.common.cache.ReferenceEntry getNextInAccessQueue()>();
v = v.<com.google.common.cache.LocalCache$AccessQueue: com.google.common.cache.ReferenceEntry head>;
if v != v goto label;
v = null;
goto label;
label:
v = v;
label:
return v;
}
public com.google.common.cache.ReferenceEntry poll()
{
com.google.common.cache.LocalCache$AccessQueue v;
com.google.common.cache.ReferenceEntry v, v, v;
v := @this: com.google.common.cache.LocalCache$AccessQueue;
v = v.<com.google.common.cache.LocalCache$AccessQueue: com.google.common.cache.ReferenceEntry head>;
v = interfaceinvoke v.<com.google.common.cache.ReferenceEntry: com.google.common.cache.ReferenceEntry getNextInAccessQueue()>();
v = v.<com.google.common.cache.LocalCache$AccessQueue: com.google.common.cache.ReferenceEntry head>;
if v != v goto label;
return null;
label:
virtualinvoke v.<com.google.common.cache.LocalCache$AccessQueue: boolean remove(java.lang.Object)>(v);
return v;
}
public boolean remove(java.lang.Object)
{
com.google.common.cache.LocalCache$AccessQueue v;
com.google.common.cache.ReferenceEntry v, v;
com.google.common.cache.LocalCache$NullEntry v;
java.lang.Object v;
boolean v;
v := @this: com.google.common.cache.LocalCache$AccessQueue;
v := @parameter: java.lang.Object;
v = interfaceinvoke v.<com.google.common.cache.ReferenceEntry: com.google.common.cache.ReferenceEntry getPreviousInAccessQueue()>();
v = interfaceinvoke v.<com.google.common.cache.ReferenceEntry: com.google.common.cache.ReferenceEntry getNextInAccessQueue()>();
staticinvoke <com.google.common.cache.LocalCache: void connectAccessOrder(com.google.common.cache.ReferenceEntry,com.google.common.cache.ReferenceEntry)>(v, v);
staticinvoke <com.google.common.cache.LocalCache: void nullifyAccessOrder(com.google.common.cache.ReferenceEntry)>(v);
v = <com.google.common.cache.LocalCache$NullEntry: com.google.common.cache.LocalCache$NullEntry INSTANCE>;
if v == v goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public boolean contains(java.lang.Object)
{
com.google.common.cache.LocalCache$AccessQueue v;
com.google.common.cache.ReferenceEntry v;
com.google.common.cache.LocalCache$NullEntry v;
java.lang.Object v;
boolean v;
v := @this: com.google.common.cache.LocalCache$AccessQueue;
v := @parameter: java.lang.Object;
v = interfaceinvoke v.<com.google.common.cache.ReferenceEntry: com.google.common.cache.ReferenceEntry getNextInAccessQueue()>();
v = <com.google.common.cache.LocalCache$NullEntry: com.google.common.cache.LocalCache$NullEntry INSTANCE>;
if v == v goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public boolean isEmpty()
{
com.google.common.cache.LocalCache$AccessQueue v;
com.google.common.cache.ReferenceEntry v, v, v;
boolean v;
v := @this: com.google.common.cache.LocalCache$AccessQueue;
v = v.<com.google.common.cache.LocalCache$AccessQueue: com.google.common.cache.ReferenceEntry head>;
v = interfaceinvoke v.<com.google.common.cache.ReferenceEntry: com.google.common.cache.ReferenceEntry getNextInAccessQueue()>();
v = v.<com.google.common.cache.LocalCache$AccessQueue: com.google.common.cache.ReferenceEntry head>;
if v != v goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public int size()
{
com.google.common.cache.LocalCache$AccessQueue v;
com.google.common.cache.ReferenceEntry v, v, v;
int v;
v := @this: com.google.common.cache.LocalCache$AccessQueue;
v = 0;
v = v.<com.google.common.cache.LocalCache$AccessQueue: com.google.common.cache.ReferenceEntry head>;
v = interfaceinvoke v.<com.google.common.cache.ReferenceEntry: com.google.common.cache.ReferenceEntry getNextInAccessQueue()>();
label:
v = v.<com.google.common.cache.LocalCache$AccessQueue: com.google.common.cache.ReferenceEntry head>;
if v == v goto label;
v = v + 1;
v = interfaceinvoke v.<com.google.common.cache.ReferenceEntry: com.google.common.cache.ReferenceEntry getNextInAccessQueue()>();
goto label;
label:
return v;
}
public void clear()
{
com.google.common.cache.ReferenceEntry v, v, v, v, v, v, v, v;
com.google.common.cache.LocalCache$AccessQueue v;
v := @this: com.google.common.cache.LocalCache$AccessQueue;
v = v.<com.google.common.cache.LocalCache$AccessQueue: com.google.common.cache.ReferenceEntry head>;
v = interfaceinvoke v.<com.google.common.cache.ReferenceEntry: com.google.common.cache.ReferenceEntry getNextInAccessQueue()>();
label:
v = v.<com.google.common.cache.LocalCache$AccessQueue: com.google.common.cache.ReferenceEntry head>;
if v == v goto label;
v = interfaceinvoke v.<com.google.common.cache.ReferenceEntry: com.google.common.cache.ReferenceEntry getNextInAccessQueue()>();
staticinvoke <com.google.common.cache.LocalCache: void nullifyAccessOrder(com.google.common.cache.ReferenceEntry)>(v);
v = v;
goto label;
label:
v = v.<com.google.common.cache.LocalCache$AccessQueue: com.google.common.cache.ReferenceEntry head>;
v = v.<com.google.common.cache.LocalCache$AccessQueue: com.google.common.cache.ReferenceEntry head>;
interfaceinvoke v.<com.google.common.cache.ReferenceEntry: void setNextInAccessQueue(com.google.common.cache.ReferenceEntry)>(v);
v = v.<com.google.common.cache.LocalCache$AccessQueue: com.google.common.cache.ReferenceEntry head>;
v = v.<com.google.common.cache.LocalCache$AccessQueue: com.google.common.cache.ReferenceEntry head>;
interfaceinvoke v.<com.google.common.cache.ReferenceEntry: void setPreviousInAccessQueue(com.google.common.cache.ReferenceEntry)>(v);
return;
}
public java.util.Iterator iterator()
{
com.google.common.cache.LocalCache$AccessQueue v;
com.google.common.cache.ReferenceEntry v;
com.google.common.cache.LocalCache$AccessQueue$2 v;
v := @this: com.google.common.cache.LocalCache$AccessQueue;
v = new com.google.common.cache.LocalCache$AccessQueue$2;
v = virtualinvoke v.<com.google.common.cache.LocalCache$AccessQueue: com.google.common.cache.ReferenceEntry peek()>();
specialinvoke v.<com.google.common.cache.LocalCache$AccessQueue$2: void <init>(com.google.common.cache.LocalCache$AccessQueue,com.google.common.cache.ReferenceEntry)>(v, v);
return v;
}
}