Convenience shortcut
Return the serialized length of input
Resets all dynamic arrays in all elements of array to null.
Serializes the data in src.
In-place serialization that takes advantage of the fact Contiguous instances already have required data layout. All arrays within src will be reset to null (and their length to 0) making their data unreachable from original struct. This is done to minimize risk of dangling array pointers.
Binary serializer that generates contiguous structs. It recursively iterates over struct fields copying any array contents into the same byte buffer and clear the array pointer field. Latter is done to avoid accidental access via dangling pointer once that data is read from external source.
Arrays of arrays are stored with small optimization, keeping only length part of the slice (as .ptr will be always null)
Deserializer later does similar iteration updating all internal pointers.