@@ -2,7 +2,7 @@ use quote2::{proc_macro2::TokenStream, quote, utils::quote_rep, Quote, ToTokens}
2
2
use syn:: {
3
3
parse:: { Parse , ParseStream , Parser } ,
4
4
punctuated:: Punctuated ,
5
- Attribute , Lit , Meta , MetaNameValue , Signature , Token , Visibility ,
5
+ Attribute , Meta , MetaNameValue , Signature , Token , Visibility ,
6
6
} ;
7
7
8
8
type AttributeArgs = Punctuated < Meta , Token ! [ , ] > ;
@@ -34,10 +34,10 @@ pub fn tokio_test(args: TokenStream, item_fn: ItemFn) -> TokenStream {
34
34
let has_miri_cfg = metadata. iter ( ) . any ( |meta| meta. path ( ) . is_ident ( "miri" ) ) ;
35
35
let id_multi_thread = metadata. iter ( ) . any ( |meta| match meta {
36
36
Meta :: NameValue ( meta) if meta. path . is_ident ( "flavor" ) => {
37
- match parse_string ( & meta. lit , "flavor" ) . as_str ( ) {
37
+ match meta. value . to_token_stream ( ) . to_string ( ) . as_str ( ) {
38
38
"multi_thread" => true ,
39
39
"current_thread" => false ,
40
- _ => panic ! ( "unknown `flavor`, expected: multi_thread | current_thread" ) ,
40
+ val => panic ! ( "unknown `flavor = {val} `, expected: multi_thread | current_thread" ) ,
41
41
}
42
42
}
43
43
_ => false ,
@@ -48,10 +48,10 @@ pub fn tokio_test(args: TokenStream, item_fn: ItemFn) -> TokenStream {
48
48
return ;
49
49
}
50
50
}
51
- if let Meta :: NameValue ( MetaNameValue { path, lit , .. } ) = & meta {
51
+ if let Meta :: NameValue ( MetaNameValue { path, value , .. } ) = & meta {
52
52
for key in [ "worker_threads" , "start_paused" ] {
53
53
if path. is_ident ( key) {
54
- quote ! ( t, { . #path( #lit ) } ) ;
54
+ quote ! ( t, { . #path( #value ) } ) ;
55
55
return ;
56
56
}
57
57
}
@@ -119,11 +119,3 @@ pub fn tokio_test(args: TokenStream, item_fn: ItemFn) -> TokenStream {
119
119
} ) ;
120
120
out
121
121
}
122
-
123
- fn parse_string ( int : & Lit , field : & str ) -> String {
124
- match int {
125
- Lit :: Str ( s) => s. value ( ) ,
126
- Lit :: Verbatim ( s) => s. to_string ( ) ,
127
- _ => panic ! ( "Failed to parse value of `{}` as string." , field) ,
128
- }
129
- }
0 commit comments