Advertisement
Guest User

Untitled

a guest
Mar 2nd, 2019
110
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Rust 0.42 KB | None | 0 0
  1. fn parse<T>(bytes: &[u8], n: usize) -> File<T> {
  2.     let bytes = bytes.into_iter();
  3.  
  4.     // Skip first byte
  5.     let _ = bytes.next();
  6.    
  7.     // Take n next bytes and do something with them    
  8.     let vec1: Vec<T> = bytes.take(n).map(|v| f(v)).collect();
  9.  
  10.     // Continue with the rest of the byte iterator, from after the n+1 first elements
  11.     let vec2: Vec<usize> = bytes.skip(n).map(|v| v as usize).collect();
  12.  
  13.     File{ vec1, vec2 }
  14. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement