ArrayParts represents a parsed but not-yet-decoded deserialized Array.
It contains all the information from the serialized form, without anything extra. i.e.
it is missing a DType and len, and the encoding_id is not yet resolved to a concrete
vtable.
To minimize the serialized form, arrays do not persist their own dtype and length. Instead,
parent arrays pass this information down during deserialization.