function arrowvector()

in src/arraytypes/list.jl [224:245]


function arrowvector(::ListKind, x, i, nl, fi, de, ded, meta; largelists::Bool=false, kw...)
    len = length(x)
    validity = ValidityBitmap(x)
    flat = ToList(x; largelists=largelists)
    offsets = Offsets(UInt8[], flat.inds)
    if liststringtype(typeof(flat)) && eltype(flat) == UInt8 
        data = flat
        T = origtype(flat)
    else
        data =
            arrowvector(flat, i, nl + 1, fi, de, ded, nothing; largelists=largelists, kw...)
        T = withmissing(eltype(x), Vector{eltype(data)})
    end
    return List{T,eltype(flat.inds),typeof(data)}(
        UInt8[],
        validity,
        offsets,
        data,
        len,
        meta,
    )
end