Fix usages not being cleared in usb_hid_item tree example

This commit is contained in:
David Hoppenbrouwers
2022-09-09 18:51:19 +02:00
parent c0d3aa0719
commit 5e4b2fdb1d

View File

@ -39,7 +39,10 @@ let mut usages = Usages::new();
fn f(val: Value, fields: &mut Vec<(Usages, Field)>, usages: &mut Usages) { fn f(val: Value, fields: &mut Vec<(Usages, Field)>, usages: &mut Usages) {
match val { match val {
Value::Collection(c) => c.for_each(|c| f(val.unwrap(), fields, usages)), Value::Collection(c) => {
usages.clear();
c.for_each(|c| f(val.unwrap(), fields, usages));
}
Value::Usage { page, ids } => usages.push((page, ids)), Value::Usage { page, ids } => usages.push((page, ids)),
Value::Field(f) => fields.push((mem::take(usages), f)), Value::Field(f) => fields.push((mem::take(usages), f)),
} }