public FSTStruct createPrimitiveArrayBasePointer(Bytez base, long objectBaseOffset /*offset of object containing array*/, int arrayStructIndex /*position of array header in struct*/) { int arrayElementZeroindex = base.getInt(objectBaseOffset+arrayStructIndex); // int len = unsafe.getInt(base,objectBaseOffset+arrayStructIndex+4); FSTStruct structPointer = new FSTStruct(); structPointer.baseOn(base,objectBaseOffset+arrayElementZeroindex,this); return structPointer; }
public FSTStruct createPrimitiveArrayBasePointer(Bytez base, long objectBaseOffset /*offset of object containing array*/, int arrayStructIndex /*position of array header in struct*/) { int arrayElementZeroindex = base.getInt(objectBaseOffset+arrayStructIndex); // int len = unsafe.getInt(base,objectBaseOffset+arrayStructIndex+4); FSTStruct structPointer = new FSTStruct(); structPointer.baseOn(base,objectBaseOffset+arrayElementZeroindex,this); return structPointer; }
public FSTStruct createTypedArrayBasePointer(Bytez base, long objectBaseOffset /*offset of object containing array*/, int arrayStructIndex /*position of array header in struct*/) { int arrayElementZeroindex = base.getInt(objectBaseOffset + arrayStructIndex); int elemSiz = base.getInt(objectBaseOffset+arrayStructIndex+8); int len = base.getInt(objectBaseOffset+arrayStructIndex+4); int clId = base.getInt(objectBaseOffset+arrayStructIndex+12); FSTStruct structPointer = null; if ( clId <= 0 ) { // untyped array structPointer = new FSTStruct(); structPointer.baseOn(base,objectBaseOffset+arrayElementZeroindex,this); } else { structPointer = createStructPointer(base, (int) (objectBaseOffset+arrayElementZeroindex), clId); } structPointer.___elementSize = elemSiz; return structPointer; }
public FSTStruct createTypedArrayBasePointer(Bytez base, long objectBaseOffset /*offset of object containing array*/, int arrayStructIndex /*position of array header in struct*/) { int arrayElementZeroindex = base.getInt(objectBaseOffset + arrayStructIndex); int elemSiz = base.getInt(objectBaseOffset+arrayStructIndex+8); int len = base.getInt(objectBaseOffset+arrayStructIndex+4); int clId = base.getInt(objectBaseOffset+arrayStructIndex+12); FSTStruct structPointer = null; if ( clId <= 0 ) { // untyped array structPointer = new FSTStruct(); structPointer.baseOn(base,objectBaseOffset+arrayElementZeroindex,this); } else { structPointer = createStructPointer(base, (int) (objectBaseOffset+arrayElementZeroindex), clId); } structPointer.___elementSize = elemSiz; return structPointer; }