Facilities for splitting apart binary Protocol Buffer messages into individual fields, and combining the parts again into whole (or partial) Protocol Buffer messages.
The motivation is to enable Protocol Buffers to be used as a storage format, where fields need to be addressable on-disk individually to enable projection, selection, and so on.