INNER CODE UNIT · Rust
push
TheMaxMur/RS-Key · crates/rsk-devconf/src/lib.rs:382
let mut push = |src: &[u8], out: &mut [u8]| -> Result<(), DevConfError> {
if n + src.len() > out.len() {
return Err(DevConfError::TooLong);
}
out[n..n + src.len()].copy_from_slice(src);
n += src.len();
Ok(())
};
// Stored entries first, minus any tag the request restates.
let mut i = 0;
while i + 1 < stored.len() {
let len = stored[i + 1] as usize;
let end = i + 2 + len;
if end > stored.len() {
break;
}
if !has_tag(incoming, stored[i]) {
push(&stored[i..end], out)?;