)
}
+ fn findp<'p, PI:Idx>(pieces: &'p mut Pieces<PI>, piece: &'_ str)
+ -> Option<&'p mut PieceInfo<JsV>> {
+ pieces.iter_mut().find(|p| p.id == piece)
+ }
+
+ let v = v.as_object().unwrap();
+
if k == "Piece" {
- let v = v.as_object().unwrap();
- let piece = v["piece"].as_str().unwrap();
- let p = pieces.iter_mut().find(|p| p.id == piece);
- let (op, d) = v["op"].as_object().unwrap().iter().next().unwrap();
+ let p = findp(pieces, v["piece"].as_str().unwrap());
if_let!{ Some(p) = p; else return }
+ let (op, d) = v["op"].as_object().unwrap().iter().next().unwrap();
match op.as_str() {
"Move" => {