Is your feature request related to a problem or challenge?
The record_batch! macro (added in #6588) currently only supports literal values for array data. This limitation makes it less useful in scenarios where array data is computed or passed as variables.
For example, this doesn't work:
let data = vec![1, 2, 3];
let batch = record_batch![
("col", Int32, data) // Error: expected literal
]?;
Describe the solution you'd like
Extend the record_batch! macro to accept both literals and expressions/variables for array data. Something like:
let data = vec![1, 2, 3];
let batch = record_batch![
("col", Int32, data) // Should work
]?;
Describe alternatives you've considered
Currently using both the upstream macro (for literals) and datafusion's original implementation (for variables) side by side
Additional context
Related:
Is your feature request related to a problem or challenge?
The
record_batch!macro (added in #6588) currently only supports literal values for array data. This limitation makes it less useful in scenarios where array data is computed or passed as variables.For example, this doesn't work:
Describe the solution you'd like
Extend the
record_batch!macro to accept both literals and expressions/variables for array data. Something like:Describe alternatives you've considered
Currently using both the upstream macro (for literals) and datafusion's original implementation (for variables) side by side
Additional context
Related: