rmorgans opened a new pull request, #586:
URL: https://github.com/apache/arrow-go/pull/586

   ## Summary
   - Extracts common logic for LIST, MAP, and FIXED_SIZE_LIST into a shared 
`visitListLike` helper function
   - Ensures `nullableInParent` is always set correctly before visiting child 
values, making it impossible to forget this step when adding new list-like type 
handling
   - Uses `defLevelOffset` parameter to calculate `defLevelIfEmpty` after all 
increments
   
   ## Rationale
   
   This refactoring follows the principle of "making invalid states 
unrepresentable". The original bug in #584 (fixed in #585) was caused by the 
FIXED_SIZE_LIST case forgetting to set `nullableInParent`. By extracting the 
common pattern into a helper function, future additions of list-like types 
cannot omit this critical step.
   
   ## Test plan
   - [x] All existing tests pass
   - [x] Regression test from #585 (`TestFixedSizeListNullableElements`) 
continues to pass
   
   🤖 Generated with [Claude Code](https://claude.com/claude-code)


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