public static VarLenIntDecoder createDecoder() { return new VarLenIntDecoder(); }
@Override public void resetByTupleOffset(byte[] buf, int tupleStartOff) { this.buf = buf; this.tupleStartOff = tupleStartOff; // decode field slots int field = 0; int cumul = 0; int end = fieldStartIndex + fieldCount; encDec.reset(buf, tupleStartOff + nullFlagsBytes); for (int i = fieldStartIndex; i < end; i++) { if (!typeTraits[i].isFixedLength()) { cumul += encDec.decode(); decodedFieldSlots[field++] = cumul; } else { cumul += typeTraits[i].getFixedLength(); decodedFieldSlots[field++] = cumul; } } dataStartOff = encDec.getPos(); }