in src/arraytypes/arraytypes.jl [36:66]
function toarrowvector(
x,
i=1,
de=Dict{Int64,Any}(),
ded=DictEncoding[],
meta=getmetadata(x);
compression::Union{Nothing,Symbol,LZ4FrameCompressor,ZstdCompressor}=nothing,
kw...,
)
@debug "converting top-level column to arrow format: col = $(typeof(x)), compression = $compression, kw = $(values(kw))"
@debug x
A = arrowvector(x, i, 0, 0, de, ded, meta; compression=compression, kw...)
if compression isa LZ4FrameCompressor
A = compress(Meta.CompressionType.LZ4_FRAME, compression, A)
elseif compression isa ZstdCompressor
A = compress(Meta.CompressionType.ZSTD, compression, A)
elseif compression isa Symbol && compression == :lz4
comp = lz4_frame_compressor()
A = Base.@lock comp begin
compress(Meta.CompressionType.LZ4_FRAME, comp[], A)
end
elseif compression isa Symbol && compression == :zstd
comp = zstd_compressor()
A = Base.@lock comp begin
compress(Meta.CompressionType.ZSTD, comp[], A)
end
end
@debug "converted top-level column to arrow format: $(typeof(A))"
@debug A
return A
end