udp/utils/list/fn.rs
1/// Removes trailing zeros from a byte vector.
2///
3/// # Arguments
4///
5/// - `&mut Vec<u8>` - Mutable reference to the byte vector.
6///
7/// # Returns
8///
9/// - `Vec<u8>` - New vector with trailing zeros removed.
10pub fn remove_trailing_zeros(data: &mut Vec<u8>) -> Vec<u8> {
11 if let Some(last_non_zero_pos) = data.iter().rposition(|&x| x != 0) {
12 data.truncate(last_non_zero_pos + 1);
13 } else {
14 data.clear();
15 }
16 data.clone()
17}