maltzsama opened a new pull request, #181:
URL: https://github.com/apache/arrow-swift/pull/181

   ## What's Changed
   
   `BaseBufferBuilder.isNull(_:)` was returning the inverse of the null state. 
When `append()` writes a non-null value, it calls `setBit`; when writing null, 
it calls `clearBit`. So a set bit means valid. The function was returning 
`isSet()`, which means it reported valid values as null and null values as 
valid.
   
   This fix removes the inverted logic and aligns with `ArrowData.isNull()`, 
which correctly uses `!isSet()`.
   
   Removed redundant `ListBufferBuilder.isNull()` override that is now 
identical to the base implementation.
   
   ## Testing
   
   Added comprehensive unit tests covering:
   - Single null and non-null values
   - Multiple mixed nulls and values
   - All-null cases
   - All-non-null cases
   
   All 7 new tests pass. Existing test suite continues to pass.
   
   ## Impact
   
   No code inside the library calls the builders' `isNull` — all internal 
readers go through `ArrowData.isNull` — so this affects external users of the 
public builder API only.
   
   Closes #180 


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