jrevels commented on PR #103:
URL: https://github.com/apache/arrow-julia/pull/103#issuecomment-2079633616
> BTW the PR title here says FixedSizeBinary, but what was implemented was
FixedSizeList; why is that?
IIRC back when this PR was authored, Arrow.jl would (de)serialize Julia
values with type `FixedSizeList` w/ `UInt8` eltype as Arrow `FixedSizeBinary`
values, and for w/e reason, that seemed like the right/easiest path to use in
this PR (can't really remember the rationale for that, or whether there even
was one 😅)
idk if that is still true nowadays though
here's the relevant `arrowtype` definition that existed when this PR was
authored:
```
function arrowtype(b, x::FixedSizeList{T, A}) where {T, A}
N = ArrowTypes.getsize(Base.nonmissingtype(T))
if eltype(A) == UInt8
Meta.fixedSizeBinaryStart(b)
Meta.fixedSizeBinaryAddByteWidth(b, Int32(N))
return Meta.FixedSizeBinary, Meta.fixedSizeBinaryEnd(b), nothing
else
children = [fieldoffset(b, "", x.data)]
Meta.fixedSizeListStart(b)
Meta.fixedSizeListAddListSize(b, Int32(N))
return Meta.FixedSizeList, Meta.fixedSizeListEnd(b), children
end
end
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]