in src/table.jl [869:902]
function build(
f::Meta.Field,
L::ViewTypes,
batch,
rb,
de,
nodeidx,
bufferidx,
varbufferidx,
convert,
)
@debug "building array: L = $L"
validity = buildbitmap(batch, rb, nodeidx, bufferidx)
bufferidx += 1
buffer = rb.buffers[bufferidx]
inline, views = reinterp(ViewElement, batch, buffer, rb.compression)
bufferidx += 1
buffers = Vector{UInt8}[]
for i = 1:rb.variadicBufferCounts[varbufferidx]
buffer = rb.buffers[bufferidx]
_, A = reinterp(UInt8, batch, buffer, rb.compression)
push!(buffers, A)
bufferidx += 1
end
varbufferidx += 1
len = rb.nodes[nodeidx].length
nodeidx += 1
meta = buildmetadata(f.custom_metadata)
T = juliaeltype(f, meta, convert)
return View{T}(batch.bytes, validity, views, inline, buffers, len, meta),
nodeidx,
bufferidx,
varbufferidx
end