Mark all serde attributes as used

This commit is contained in:
David Tolnay
2016-09-26 23:17:43 -07:00
parent 8e77960e3a
commit 8ee8c07090
+14
View File
@@ -140,6 +140,20 @@ macro_rules! shim {
}
};
use syntax::{attr, ast, visit};
struct MarkSerdeAttributesUsed;
impl visit::Visitor for MarkSerdeAttributesUsed {
fn visit_attribute(&mut self, attr: &ast::Attribute) {
match attr.node.value.node {
ast::MetaItemKind::List(ref name, _) if name == "serde" => {
attr::mark_used(attr);
}
_ => {}
}
}
}
visit::walk_item(&mut MarkSerdeAttributesUsed, item);
use syntax::print::pprust;
let s = pprust::item_to_string(item);