tustvold commented on issue #5736:
URL: https://github.com/apache/arrow-rs/issues/5736#issuecomment-2139604972

   #5786 provides a high-level interface for constructing views, which mirrors 
the high-level interface exposed by ByteViewArray for accessing them.
   
   This means users shouldn't ever need to deal with the underlying 
representation. I think we therefore could just close this ticket.
   
   For completeness I have spent some time trying to come up with a better 
abstraction than u128 and have struggled.
   
   There are a couple of major challenges:
   
   * String prefixes are not necessarily valid unicode
   * Certain operations exploit the layout in ways LLVM seems unable to come up 
with, e.g.
     * Compare the length and prefix in a single u64 comparison
     * Elide length checking once checked length and prefix together
   
   That isn't to say a better abstraction isn't possible, but it is fiddly and 
the major forcing function of construction is resolved by #5786. I think a 
smaller incremental PR like #5735 may therefore be all we need for the time 
being
   


-- 
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]

Reply via email to