• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 use crate::ARBITRARY_ATTRIBUTE_NAME;
2 use syn::*;
3 
not_skipped(variant: &&Variant) -> bool4 pub fn not_skipped(variant: &&Variant) -> bool {
5     !should_skip(variant)
6 }
7 
8 fn should_skip(Variant { attrs, .. }: &Variant) -> bool {
9     attrs
10         .iter()
11         .filter_map(|attr| {
12             attr.path()
13                 .is_ident(ARBITRARY_ATTRIBUTE_NAME)
14                 .then(|| attr.parse_args::<Meta>())
15                 .and_then(Result::ok)
16         })
17         .any(|meta| match meta {
18             Meta::Path(path) => path.is_ident("skip"),
19             _ => false,
20         })
21 }
22