@@ -17,12 +17,12 @@ use proc_macro::TokenStream;
17
17
use proc_macro2:: TokenStream as TokenStream2 ;
18
18
use quote:: quote;
19
19
use syn:: {
20
- parse_macro_input, spanned:: Spanned , AttributeArgs , Error , Expr , Ident , ItemStatic , Meta ,
21
- NestedMeta , Token , Type ,
20
+ parse_macro_input, spanned:: Spanned , Error , Expr , Ident , ItemStatic , Meta ,
21
+ Token , Type , punctuated :: Punctuated , parse :: Parser ,
22
22
} ;
23
23
24
24
pub fn lazy_static ( metadata : TokenStream , input : TokenStream ) -> TokenStream {
25
- let args = parse_macro_input ! ( metadata as AttributeArgs ) ;
25
+ let args = Punctuated :: < Meta , Token ! [ , ] > :: parse_terminated . parse ( metadata) . unwrap ( ) ;
26
26
let input = parse_macro_input ! ( input as ItemStatic ) ;
27
27
28
28
let ItemStatic {
@@ -39,7 +39,7 @@ pub fn lazy_static(metadata: TokenStream, input: TokenStream) -> TokenStream {
39
39
& name,
40
40
* ty,
41
41
* expr,
42
- mutability. is_some ( ) ,
42
+ matches ! ( mutability, syn :: StaticMutability :: Mut ( _ ) ) ,
43
43
is_cbindgen_mode ( & args) ,
44
44
)
45
45
. map_err ( |e| e. into_compile_error ( ) )
@@ -242,9 +242,9 @@ fn produce_custom_ty(
242
242
// For example, it will return true for
243
243
//#[attr(cbindgen)]
244
244
#[ allow( clippy:: ptr_arg) ]
245
- fn is_cbindgen_mode ( args : & AttributeArgs ) -> bool {
245
+ fn is_cbindgen_mode ( args : & Punctuated < Meta , Token ! [ , ] > ) -> bool {
246
246
for arg in args {
247
- if let NestedMeta :: Meta ( Meta :: Path ( path) ) = arg {
247
+ if let Meta :: Path ( path) = arg {
248
248
if path
249
249
. segments
250
250
. iter ( )
0 commit comments