Guest User

Untitled

a guest
May 23rd, 2018
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.87 KB | None | 0 0
  1. pub fn list(output: String) -> Option<Vec<String>> {
  2. let mut list = Vec::new();
  3. for line in output.lines() {
  4. let name = line.split_whitespace().next();
  5. if let Some(snap_name) = name {
  6. list.push(snap_name.to_string());
  7. }
  8. }
  9. Some(list.into_iter().filter(|x| x != "NAME").collect())
  10. }
  11.  
  12. fn main() {
  13. let output = "NAME USED AVAIL REFER MOUNTPOINT
  14. rpool@gitlab 0 - 128K -
  15. rpool/ROOT/ubuntu@version1 6,20M - 643M -
  16. rpool/ROOT/ubuntu@gitlab1 211M - 898M -"
  17. .to_string();
  18.  
  19. let s = list(output);
  20.  
  21. assert_eq!(Some([
  22. "rpool@gitlab",
  23. "rpool/ROOT/ubuntu@version1",
  24. "rpool/ROOT/ubuntu@gitlab1"
  25. ].iter().map(|s| s.to_string()).collect()), s);
  26.  
  27. println!("{:?}", s);
  28. }
Add Comment
Please, Sign In to add comment