Protobuf map<K, V> fields are encoded as repeated sub-messages, each
containing a key (field 1) and value (field 2). This type stores the
decoded entries in a Vec<(K, V)>, borrowing string and bytes keys/values
directly from the input buffer.
Lookup is O(n) linear scan, which is appropriate for the typically small
maps found in protobuf messages (metadata labels, headers, etc.).
If duplicate keys appear on the wire, get returns the
last occurrence (last-write-wins, per the protobuf spec).
For larger maps where O(1) lookup matters, collect into a HashMap:
Like RepeatedView, the Vec backing store requires allocation.
The individual keys and values borrow from the input buffer where possible
(string keys as &'a str, bytes values as &'a [u8]).