blob: 09cf93cd78cd00db1c32dad553e6cfc74b2dc461 [file] [log] [blame]
package sun.jvm.hotspot.utilities;
import java.util.Observable;
import java.util.Observer;
import sun.jvm.hotspot.debugger.Address;
import sun.jvm.hotspot.runtime.VM;
import sun.jvm.hotspot.types.Type;
import sun.jvm.hotspot.types.TypeDataBase;
import sun.jvm.hotspot.types.WrongTypeException;
public class IntArray extends GenericArray {
static {
VM.registerVMInitializedObserver(new Observer() {
public void update(Observable o, Object data) {
initialize(VM.getVM().getTypeDataBase());
}
});
}
private static synchronized void initialize(TypeDataBase db) throws WrongTypeException {
elemType = db.lookupType("int");
Type type = db.lookupType("Array<int>");
dataFieldOffset = type.getAddressField("_data").getOffset();
}
private static long dataFieldOffset;
protected static Type elemType;
public IntArray(Address addr) {
super(addr, dataFieldOffset);
}
public int at(int i) {
return (int)getIntegerAt(i);
}
public Type getElemType() {
return elemType;
}
}