public static boolean oopLooksValid(OopHandle oop) { if (oop == null) { return false; } if (!VM.getVM().getUniverse().isIn(oop)) { return false; } try { for (int i = 0; i < 4; ++i) { OopHandle next = klassField.getValue(oop); if (next == null) { return false; } if (next.equals(oop)) { return true; } oop = next; } return false; } catch (AddressException e) { return false; } }
public Symbol getSourceDebugExtension() { return (Symbol) sourceDebugExtension.getValue(this); }
public Symbol getSourceFileName() { return (Symbol) sourceFileName.getValue(this); }
public Klass getBottomKlass() { return (Klass) bottomKlass.getValue(this); }
public Oop getComponentMirror() { return componentMirror.getValue(this); }
public Klass getHigherDimension() { return (Klass) higherDimension.getValue(this); }
public Klass getPoolHolder() { return (Klass) poolHolder.getValue(this); }
public TypeArray getTags() { return (TypeArray) tags.getValue(this); }
public ObjArray getLocalInterfaces() { return (ObjArray) localInterfaces.getValue(this); }
public TypeArray getMethodOrdering() { return (TypeArray) methodOrdering.getValue(this); }
public ObjArray getMethods() { return (ObjArray) methods.getValue(this); }
// Accessors for declared fields public Klass getArrayKlasses() { return (Klass) arrayKlasses.getValue(this); }
// Accessor public Oop loader() { return VM.getVM().getObjectHeap().newOop(loaderField.getValue(addr)); }
// Accessors for declared fields public ConstMethod getConstMethod() { return (ConstMethod) constMethod.getValue(this); }
public TypeArray getInnerClasses() { return (TypeArray) innerClasses.getValue(this); }
public Symbol getGenericSignature() { return (Symbol) genericSignature.getValue(this); }
public ObjArray getTransitiveInterfaces() { return (ObjArray) transitiveInterfaces.getValue(this); }
public ConstantPoolCache getCache() { return (ConstantPoolCache) cache.getValue(this); }
public TypeArray getFields() { return (TypeArray) fields.getValue(this); }
public Oop getClassLoader() { return classLoader.getValue(this); }
public Oop getProtectionDomain() { return protectionDomain.getValue(this); }
public Klass getLowerDimension() { return (Klass) lowerDimension.getValue(this); }
public ObjArray getSigners() { return (ObjArray) signers.getValue(this); }
public ConstantPool getConstants() { return (ConstantPool) constants.getValue(this); }
public Klass getElementKlass() { return (Klass) elementKlass.getValue(this); }