pub mod bandersnatch;
pub mod ed25519;
pub mod hashing;
pub mod mmr;
fn concat<'res>(res: &'res mut [u8], parts: &[&[u8]]) -> &'res mut [u8] {
let mut remaining = &mut *res;
for part in parts {
let (head, tail) = remaining.split_at_mut(part.len());
head.copy_from_slice(part);
remaining = tail;
}
assert!(remaining.is_empty());
res
}