apache / apache/arrow

[Ruby] Add `ArrowFormat::FixedSizeListArray.new(type, values)`

Open
#51,273 1 comment 0 reactions 1 assignee Claimed by @emecii View on GitHub
Component: Ruby
Dominant language
C++
Stars
17.1k
Forks
4.3k
Avg merge
3d 13h
Merged PRs (30d)
88

Description

### Describe the enhancement requested

GH-50382 tracks a public builder API for `red-arrow-format`. In [the maintainer discussion](https://github.com/apache/arrow/issues/50382#issuecomment-5597093908), the requested direction is to support explicit constructors for all existing `ArrowFormat::Type` subclasses before exposing the broader builder API, with nested types handled as separate tasks.

`ArrowFormat::FixedSizeListArray` currently only accepts the low-level reader/writer form:

```ruby
ArrowFormat::FixedSizeListArray.new(type, size, validity_buffer, child)
```

Add the object-oriented values form:

```ruby
ArrowFormat::FixedSizeListArray.new(type, values)
```

The constructor should preserve the existing low-level form, validate that every non-null list has exactly the declared fixed size, build the parent validity bitmap, preserve the required fixed number of child slots for null parents, and delegate child construction to the declared child field type.

This is a focused prerequisite for GH-50382 and is separate from variable-size `ListArray` support in GH-51262.

### Component(s)

Ruby

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.