project: Rev 182
This commit is contained in:
@@ -3,32 +3,32 @@ import net.runelite.mapping.Implements;
|
||||
import net.runelite.mapping.ObfuscatedName;
|
||||
import net.runelite.mapping.ObfuscatedSignature;
|
||||
|
||||
@ObfuscatedName("ed")
|
||||
@ObfuscatedName("es")
|
||||
@Implements("DemotingHashTable")
|
||||
public final class DemotingHashTable {
|
||||
@ObfuscatedName("q")
|
||||
@ObfuscatedName("s")
|
||||
@Export("capacity")
|
||||
int capacity;
|
||||
@ObfuscatedName("w")
|
||||
@ObfuscatedName("j")
|
||||
@Export("remaining")
|
||||
int remaining;
|
||||
@ObfuscatedName("e")
|
||||
@ObfuscatedName("i")
|
||||
@ObfuscatedSignature(
|
||||
signature = "Lla;"
|
||||
signature = "Lln;"
|
||||
)
|
||||
@Export("hashTable")
|
||||
IterableNodeHashTable hashTable;
|
||||
@ObfuscatedName("p")
|
||||
@ObfuscatedName("k")
|
||||
@ObfuscatedSignature(
|
||||
signature = "Ljk;"
|
||||
signature = "Ljm;"
|
||||
)
|
||||
@Export("queue")
|
||||
IterableDualNodeQueue queue;
|
||||
@ObfuscatedName("k")
|
||||
@ObfuscatedName("u")
|
||||
@ObfuscatedSignature(
|
||||
signature = "Lep;"
|
||||
signature = "Lek;"
|
||||
)
|
||||
class146 field1966;
|
||||
class146 field1944;
|
||||
|
||||
public DemotingHashTable(int var1, int var2) {
|
||||
this.queue = new IterableDualNodeQueue();
|
||||
@@ -42,45 +42,47 @@ public final class DemotingHashTable {
|
||||
this.hashTable = new IterableNodeHashTable(var3);
|
||||
}
|
||||
|
||||
@ObfuscatedName("q")
|
||||
@ObfuscatedName("s")
|
||||
@Export("get")
|
||||
public Object get(long var1) {
|
||||
Wrapper var3 = (Wrapper)this.hashTable.get(var1);
|
||||
if (var3 == null) {
|
||||
return null;
|
||||
}
|
||||
Object var4 = var3.get();
|
||||
if (var4 == null) {
|
||||
var3.remove();
|
||||
var3.removeDual();
|
||||
this.remaining += var3.size;
|
||||
return null;
|
||||
}
|
||||
if (var3.isSoft()) {
|
||||
DirectWrapper var5 = new DirectWrapper(var4, var3.size);
|
||||
this.hashTable.put(var5, var3.key);
|
||||
this.queue.add(var5);
|
||||
var5.keyDual = 0L;
|
||||
var3.remove();
|
||||
var3.removeDual();
|
||||
} else {
|
||||
this.queue.add(var3);
|
||||
var3.keyDual = 0L;
|
||||
}
|
||||
Object var4 = var3.get();
|
||||
if (var4 == null) {
|
||||
var3.remove();
|
||||
var3.removeDual();
|
||||
this.remaining += var3.size;
|
||||
return null;
|
||||
} else {
|
||||
if (var3.isSoft()) {
|
||||
DirectWrapper var5 = new DirectWrapper(var4, var3.size);
|
||||
this.hashTable.put(var5, var3.key);
|
||||
this.queue.add(var5);
|
||||
var5.keyDual = 0L;
|
||||
var3.remove();
|
||||
var3.removeDual();
|
||||
} else {
|
||||
this.queue.add(var3);
|
||||
var3.keyDual = 0L;
|
||||
}
|
||||
|
||||
return var4;
|
||||
return var4;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ObfuscatedName("w")
|
||||
@ObfuscatedName("j")
|
||||
@Export("remove")
|
||||
void remove(long var1) {
|
||||
Wrapper var3 = (Wrapper)this.hashTable.get(var1);
|
||||
this.removeWrapper(var3);
|
||||
}
|
||||
|
||||
@ObfuscatedName("e")
|
||||
@ObfuscatedName("i")
|
||||
@ObfuscatedSignature(
|
||||
signature = "(Lew;)V"
|
||||
signature = "(Led;)V"
|
||||
)
|
||||
@Export("removeWrapper")
|
||||
void removeWrapper(Wrapper var1) {
|
||||
@@ -92,37 +94,38 @@ public final class DemotingHashTable {
|
||||
|
||||
}
|
||||
|
||||
@ObfuscatedName("p")
|
||||
@ObfuscatedName("k")
|
||||
@Export("put")
|
||||
public void put(Object var1, long var2, int var4) {
|
||||
if (var4 > this.capacity) {
|
||||
throw new IllegalStateException();
|
||||
} else {
|
||||
this.remove(var2);
|
||||
this.remaining -= var4;
|
||||
|
||||
while (this.remaining < 0) {
|
||||
Wrapper var5 = (Wrapper)this.queue.removeLast();
|
||||
if (var5 == null) {
|
||||
throw new RuntimeException("");
|
||||
}
|
||||
|
||||
if (!var5.isSoft()) {
|
||||
}
|
||||
|
||||
this.removeWrapper(var5);
|
||||
if (this.field1944 != null) {
|
||||
this.field1944.method3280(var5.get());
|
||||
}
|
||||
}
|
||||
|
||||
DirectWrapper var6 = new DirectWrapper(var1, var4);
|
||||
this.hashTable.put(var6, var2);
|
||||
this.queue.add(var6);
|
||||
var6.keyDual = 0L;
|
||||
}
|
||||
this.remove(var2);
|
||||
this.remaining -= var4;
|
||||
|
||||
while (this.remaining < 0) {
|
||||
Wrapper var5 = (Wrapper)this.queue.removeLast();
|
||||
if (var5 == null) {
|
||||
throw new RuntimeException("");
|
||||
}
|
||||
|
||||
if (!var5.isSoft()) {
|
||||
}
|
||||
|
||||
this.removeWrapper(var5);
|
||||
if (this.field1966 != null) {
|
||||
this.field1966.method3338(var5.get());
|
||||
}
|
||||
}
|
||||
|
||||
DirectWrapper var6 = new DirectWrapper(var1, var4);
|
||||
this.hashTable.put(var6, var2);
|
||||
this.queue.add(var6);
|
||||
var6.keyDual = 0L;
|
||||
}
|
||||
|
||||
@ObfuscatedName("k")
|
||||
@ObfuscatedName("u")
|
||||
@Export("demote")
|
||||
public void demote(int var1) {
|
||||
for (Wrapper var2 = (Wrapper)this.queue.last(); var2 != null; var2 = (Wrapper)this.queue.previous()) {
|
||||
@@ -143,7 +146,7 @@ public final class DemotingHashTable {
|
||||
|
||||
}
|
||||
|
||||
@ObfuscatedName("l")
|
||||
@ObfuscatedName("n")
|
||||
@Export("clear")
|
||||
public void clear() {
|
||||
this.queue.clear();
|
||||
|
||||
Reference in New Issue
Block a user