final class UnsafeRowWriter extends UnsafeWriter
A helper class to write data into global row buffer using UnsafeRow format.
It will remember the offset of row buffer which it starts to write, and move the cursor of row
buffer while writing. If new data(can be the input record if this is the outermost writer, or
nested struct if this is an inner writer) comes, the starting cursor of row buffer may be
changed, so we need to call UnsafeRowWriter.resetRowWriter before writing, to update the
startingOffset and clear out null bits.
Note that if this is the outermost writer, which means we will always write from the very
beginning of the global row buffer, we don't need to update startingOffset and can just call
zeroOutNullBytes before writing new data.
- Alphabetic
- By Inheritance
- UnsafeRowWriter
- UnsafeWriter
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
- new UnsafeRowWriter(writer: UnsafeWriter, numFields: Int)
- new UnsafeRowWriter(numFields: Int, initialBufferSize: Int)
- new UnsafeRowWriter(numFields: Int)
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
final
def
cursor(): Int
- Definition Classes
- UnsafeWriter
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getBuffer(): Array[Byte]
- Definition Classes
- UnsafeWriter
-
final
def
getBufferHolder(): BufferHolder
Accessor methods are delegated from BufferHolder class
Accessor methods are delegated from BufferHolder class
- Definition Classes
- UnsafeWriter
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def getFieldOffset(ordinal: Int): Long
-
def
getRow(): UnsafeRow
Updates total size of the UnsafeRow using the size collected by BufferHolder, and returns the UnsafeRow created at a constructor
-
final
def
grow(neededSize: Int): Unit
- Definition Classes
- UnsafeWriter
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
final
def
increaseCursor(val: Int): Unit
- Definition Classes
- UnsafeWriter
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def isNullAt(ordinal: Int): Boolean
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
reset(): Unit
- Definition Classes
- UnsafeWriter
-
def
resetRowWriter(): Unit
Resets the
startingOffsetaccording to the current cursor of row buffer, and clear out null bits.Resets the
startingOffsetaccording to the current cursor of row buffer, and clear out null bits. This should be called before we write a new nested struct to the row buffer. -
def
setNull1Bytes(ordinal: Int): Unit
- Definition Classes
- UnsafeRowWriter → UnsafeWriter
-
def
setNull2Bytes(ordinal: Int): Unit
- Definition Classes
- UnsafeRowWriter → UnsafeWriter
-
def
setNull4Bytes(ordinal: Int): Unit
- Definition Classes
- UnsafeRowWriter → UnsafeWriter
-
def
setNull8Bytes(ordinal: Int): Unit
- Definition Classes
- UnsafeRowWriter → UnsafeWriter
- def setNullAt(ordinal: Int): Unit
-
def
setOffsetAndSize(ordinal: Int, currentCursor: Int, size: Int): Unit
- Attributes
- protected[codegen]
- Definition Classes
- UnsafeWriter
-
def
setOffsetAndSize(ordinal: Int, size: Int): Unit
- Attributes
- protected[codegen]
- Definition Classes
- UnsafeWriter
-
final
def
setOffsetAndSizeFromPreviousCursor(ordinal: Int, previousCursor: Int): Unit
- Definition Classes
- UnsafeWriter
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
totalSize(): Int
- Definition Classes
- UnsafeWriter
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
def
write(ordinal: Int, input: Decimal, precision: Int, scale: Int): Unit
- Definition Classes
- UnsafeRowWriter → UnsafeWriter
-
def
write(ordinal: Int, value: Double): Unit
- Definition Classes
- UnsafeRowWriter → UnsafeWriter
-
def
write(ordinal: Int, value: Float): Unit
- Definition Classes
- UnsafeRowWriter → UnsafeWriter
-
def
write(ordinal: Int, value: Long): Unit
- Definition Classes
- UnsafeRowWriter → UnsafeWriter
-
def
write(ordinal: Int, value: Int): Unit
- Definition Classes
- UnsafeRowWriter → UnsafeWriter
-
def
write(ordinal: Int, value: Short): Unit
- Definition Classes
- UnsafeRowWriter → UnsafeWriter
-
def
write(ordinal: Int, value: Byte): Unit
- Definition Classes
- UnsafeRowWriter → UnsafeWriter
-
def
write(ordinal: Int, value: Boolean): Unit
- Definition Classes
- UnsafeRowWriter → UnsafeWriter
-
final
def
write(array: UnsafeArrayData): Unit
- Definition Classes
- UnsafeWriter
-
final
def
write(ordinal: Int, map: UnsafeMapData): Unit
- Definition Classes
- UnsafeWriter
-
final
def
write(ordinal: Int, row: UnsafeRow): Unit
- Definition Classes
- UnsafeWriter
-
final
def
write(ordinal: Int, input: CalendarInterval): Unit
- Definition Classes
- UnsafeWriter
-
final
def
write(ordinal: Int, input: Array[Byte], offset: Int, numBytes: Int): Unit
- Definition Classes
- UnsafeWriter
-
final
def
write(ordinal: Int, input: Array[Byte]): Unit
- Definition Classes
- UnsafeWriter
-
final
def
write(ordinal: Int, input: UTF8String): Unit
- Definition Classes
- UnsafeWriter
-
final
def
writeBoolean(offset: Long, value: Boolean): Unit
- Attributes
- protected[codegen]
- Definition Classes
- UnsafeWriter
-
final
def
writeByte(offset: Long, value: Byte): Unit
- Attributes
- protected[codegen]
- Definition Classes
- UnsafeWriter
-
final
def
writeDouble(offset: Long, value: Double): Unit
- Attributes
- protected[codegen]
- Definition Classes
- UnsafeWriter
-
final
def
writeFloat(offset: Long, value: Float): Unit
- Attributes
- protected[codegen]
- Definition Classes
- UnsafeWriter
-
final
def
writeInt(offset: Long, value: Int): Unit
- Attributes
- protected[codegen]
- Definition Classes
- UnsafeWriter
-
final
def
writeLong(offset: Long, value: Long): Unit
- Attributes
- protected[codegen]
- Definition Classes
- UnsafeWriter
-
final
def
writeShort(offset: Long, value: Short): Unit
- Attributes
- protected[codegen]
- Definition Classes
- UnsafeWriter
-
def
zeroOutNullBytes(): Unit
Clears out null bits.
Clears out null bits. This should be called before we write a new row to row buffer.
-
final
def
zeroOutPaddingBytes(numBytes: Int): Unit
- Attributes
- protected[codegen]
- Definition Classes
- UnsafeWriter