protobuf/rt/repeated.rs
1use crate::CodedInputStream;
2use crate::Enum;
3use crate::EnumOrUnknown;
4
5/// Read repeated enum field when the wire format is length-delimited.
6pub fn read_repeated_packed_enum_or_unknown_into<E: Enum>(
7 is: &mut CodedInputStream,
8 target: &mut Vec<EnumOrUnknown<E>>,
9) -> crate::Result<()> {
10 let len = is.read_raw_varint64()?;
11 let old_limit = is.push_limit(len)?;
12 while !is.eof()? {
13 target.push(is.read_enum_or_unknown()?);
14 }
15 is.pop_limit(old_limit);
16 Ok(())
17}