Advertisement
Guest User

Untitled

a guest
Jan 9th, 2018
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Rust 0.83 KB | None | 0 0
  1. jobj.iter()
  2.     .map(|name, x| {
  3.         let jbook_parse = |x| {
  4.             let entry_parse = |x| -> Option<[f32; 3]> {
  5.                 if let Value::Array(x) = x.as_array() {
  6.                     let a = x.next();
  7.                     let b = x.next();
  8.                     let c = x.next();
  9.                     match (a, b, c) {
  10.                         (Some(a), Some(b), Some(c)) => Some([a, b, c]),
  11.                         _ => None
  12.                     }
  13.                 }
  14.             };
  15.             x.as_array()
  16.                 .filter_map(|x| x)
  17.                 .iter()
  18.                 .map(|x| entry_parse(x))
  19.                 .filter_map(|x| x)
  20.         }
  21.         Orderbook {
  22.             name : name
  23.             ask : jbook_parse(x, "ask").collect(),
  24.             bid : jbook_parse(y, "bid").collect(),
  25.         }
  26.     })
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement