64 } 65 ObjectValue result = new ObjectValue(id); 66 // Cache the object since an object field could reference it. 67 objectPool.add(result); 68 result.readObject(this); 69 return result; 70 } 71 72 ScopeValue getCachedObject() { 73 int id = readInt(); 74 Assert.that(objectPool != null, "object pool does not exist"); 75 for (Iterator itr = objectPool.iterator(); itr.hasNext();) { 76 ObjectValue ov = (ObjectValue) itr.next(); 77 if (ov.id() == id) { 78 return ov; 79 } 80 } 81 Assert.that(false, "should not reach here"); 82 return null; 83 } 84 85 public int readBCI() { 86 return readInt() + InvocationEntryBCI; 87 } 88 } | 64 } 65 ObjectValue result = new ObjectValue(id); 66 // Cache the object since an object field could reference it. 67 objectPool.add(result); 68 result.readObject(this); 69 return result; 70 } 71 72 ScopeValue getCachedObject() { 73 int id = readInt(); 74 Assert.that(objectPool != null, "object pool does not exist"); 75 for (Iterator itr = objectPool.iterator(); itr.hasNext();) { 76 ObjectValue ov = (ObjectValue) itr.next(); 77 if (ov.id() == id) { 78 return ov; 79 } 80 } 81 Assert.that(false, "should not reach here"); 82 return null; 83 } 84 } |