letmut chained = (&mut buff[..]).chain_mut(&mut vec).chain_mut(Vec::new()); // Required for potential overflow because remaining_mut for Vec is isize::MAX - vec.len(), but for chain_mut is usize::MAX
#[test] fn chain_get_bytes() { letmut ab = Bytes::copy_from_slice(b"ab"); letmut cd = Bytes::copy_from_slice(b"cd"); let ab_ptr = ab.as_ptr(); let cd_ptr = cd.as_ptr(); letmut chain = (&mut ab).chain(&mut cd); let a = chain.copy_to_bytes(1); let bc = chain.copy_to_bytes(2); let d = chain.copy_to_bytes(1);
// assert `get_bytes` did not allocate
assert_eq!(ab_ptr, a.as_ptr()); // assert `get_bytes` did not allocate
assert_eq!(cd_ptr.wrapping_offset(1), d.as_ptr());
}
Messung V0.5 in Prozent
¤ Dauer der Verarbeitung: 0.10 Sekunden
(vorverarbeitet am 2026-06-17)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.