wgtmac opened a new pull request, #598:
URL: https://github.com/apache/iceberg-cpp/pull/598

   Adds StructLikeSet<bool kValidate = true>, a hash set for StructLike rows 
backed by an internal arena allocator.
   
   Key design points:
   - Deep-copies inserted rows into a monotonic_buffer_resource arena; string 
data and nested struct/list/map scalars are fully materialized so the set owns 
its memory independently of the caller
   - Transparent heterogeneous lookup: Contains() does not allocate a temporary 
key
   - Hash and equality semantics match the Java reference implementation 
(String.hashCode, StructLikeHash, ListHash; float/double use canonical NaN bits 
and distinguish ±0.0)
   - Schema validation (field count + scalar type) on Insert/Contains; can be 
disabled via kValidate=false (UncheckedStructLikeSet) when the caller 
guarantees conformance
   - Internal Arena wrapper containers use std::pmr::vector


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


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to