List of usage examples for org.apache.spark.sql.catalyst.expressions.codegen BufferHolder grow
void grow(int neededSize)
From source file:com.splicemachine.db.iapi.types.SQLTime.java
License:Apache License
/** * * Write to a Project Tungsten Format (UnsafeRow). We encode Time as * 2 ints./*from www . j av a 2 s .co m*/ * * @param unsafeRowWriter * @param ordinal */ @Override public void write(UnsafeRowWriter unsafeRowWriter, int ordinal) { if (isNull()) unsafeRowWriter.setNullAt(ordinal); else { BufferHolder holder = unsafeRowWriter.holder(); holder.grow(8); Platform.putInt(holder.buffer, holder.cursor, encodedTime); Platform.putInt(holder.buffer, holder.cursor + 4, encodedTimeFraction); unsafeRowWriter.setOffsetAndSize(ordinal, 8); holder.cursor = 8; } }
From source file:com.splicemachine.db.iapi.types.SQLTimestamp.java
License:Apache License
/** * * Write to Project Tungsten format (UnsafeRow). Timestamp is * written as 3 ints./*from w ww . j ava 2 s .c om*/ * * * @param unsafeRowWriter * @param ordinal */ @Override public void write(UnsafeRowWriter unsafeRowWriter, int ordinal) { if (isNull()) unsafeRowWriter.setNullAt(ordinal); else { BufferHolder holder = unsafeRowWriter.holder(); holder.grow(12); Platform.putInt(holder.buffer, holder.cursor, encodedDate); Platform.putInt(holder.buffer, holder.cursor + 4, encodedTime); Platform.putInt(holder.buffer, holder.cursor + 8, nanos); unsafeRowWriter.setOffsetAndSize(ordinal, 12); holder.cursor = 12; } }