Base class for encoding and decoding in columnar form. Memory layout of
the bytes for a set of column values is:
.----------------------- Encoding scheme (4 bytes)
| .------------------- Null bitset size as number of longs N (4 bytes)
| |
| | .---------------- Null bitset longs (8 x N bytes,
| | | empty ifnull count is zero)
| | | .---------- Encoded non-null elements
V V V V
+---+---+-----+---------+
| | | ... | ... ... |
+---+---+-----+---------+
\-----/ \-------------/
header body
Base class for encoding and decoding in columnar form. Memory layout of the bytes for a set of column values is: