decodeArrayFromHeader function

List<Object?> decodeArrayFromHeader(
  1. ArrayHeaderInfo header,
  2. String? inlineValues,
  3. LineCursor cursor,
  4. int baseDepth,
  5. ResolvedDecodeOptions options,
)

Decodes an array from header information

Implementation

List<Object?> decodeArrayFromHeader(
  ArrayHeaderInfo header,
  String? inlineValues,
  LineCursor cursor,
  int baseDepth,
  ResolvedDecodeOptions options,
) {
  // Inline primitive array
  if (inlineValues != null) {
    // For inline arrays, cursor should already be advanced or will be by caller
    return decodeInlinePrimitiveArray(header, inlineValues, options);
  }

  // For multi-line arrays (tabular or list), the cursor should already be positioned
  // at the array header line, but we haven't advanced past it yet

  // Tabular array
  if (header.fields != null && header.fields!.isNotEmpty) {
    return decodeTabularArray(header, cursor, baseDepth, options);
  }

  // List array
  return decodeListArray(header, cursor, baseDepth, options);
}