pub fn write_nested_pointer_array_list(
builder: &mut BufferBuilder<'_>,
field_name: &str,
inner_element: &TypeRepr,
items: &[Value],
) -> Result<(), BufferError>Expand description
Marshal a List<List<String>> / List<List<Schema>> (F5: a doubly-
nested pointer-array list, where each outer element is itself a
pointer-array list) into field_name’s tail area. inner_element is
the innermost element type (String / Schema / a deeper
List<…>), matching the marshal_list_list_in dispatch contract;
items are the outer Value::List rows (each itself a
List<inner_element>). The whole nested structure is written at
child-buffer-relative offsets and the field’s pointer slot patched to
the outer header — the relocation walker’s PtrArrayElem::InnerList
descriptor rebases the inner pointer arrays on the later arena rebase.
Shared by both compiled backends so they emit byte-identical input
buffers. The layout pass admits these shapes (inner_list_record_ alignment); the inline-fixed List<List<scalar>> case keeps using
write_nested_scalar_list.