@@ -81,12 +81,11 @@ pub fn generate_lint_files(
8181 & mut |_, src, dst| {
8282 let mut searcher = RustSearcher :: new ( src) ;
8383 assert ! (
84- searcher. find_token( Token :: Ident ( "declare_with_version" ) )
85- && searcher. find_token( Token :: Ident ( "declare_with_version" ) ) ,
84+ searcher. find_token( Token :: Ident ( "deprecated" ) ) && searcher. find_token( Token :: Ident ( "deprecated" ) ) ,
8685 "error reading deprecated lints"
8786 ) ;
8887 dst. push_str ( & src[ ..searcher. pos ( ) as usize ] ) ;
89- dst. push_str ( "! { DEPRECATED(DEPRECATED_VERSION) = [\n " ) ;
88+ dst. push_str ( "![\n " ) ;
9089 for lint in deprecated {
9190 write ! (
9291 dst,
@@ -96,20 +95,15 @@ pub fn generate_lint_files(
9695 . unwrap ( ) ;
9796 }
9897 dst. push_str (
99- "]} \n \n \
98+ "]; \n \n \
10099 #[rustfmt::skip]\n \
101- declare_with_version! { RENAMED(RENAMED_VERSION) = [\n \
100+ pub const RENAMED: &[(&str, &str)] = & [\n \
102101 ",
103102 ) ;
104103 for lint in renamed {
105- write ! (
106- dst,
107- " #[clippy::version = \" {}\" ]\n (\" {}\" , \" {}\" ),\n " ,
108- lint. version, lint. old_name, lint. new_name,
109- )
110- . unwrap ( ) ;
104+ writeln ! ( dst, " (\" {}\" , \" {}\" )," , lint. old_name, lint. new_name) . unwrap ( ) ;
111105 }
112- dst. push_str ( "]} \n " ) ;
106+ dst. push_str ( "]; \n " ) ;
113107 UpdateStatus :: from_changed ( src != dst)
114108 } ,
115109 ) ;
@@ -220,7 +214,6 @@ pub struct DeprecatedLint {
220214pub struct RenamedLint {
221215 pub old_name : String ,
222216 pub new_name : String ,
223- pub version : String ,
224217}
225218
226219/// Finds all lint declarations (`declare_clippy_lint!`)
@@ -318,21 +311,14 @@ pub fn read_deprecated_lints() -> (Vec<DeprecatedLint>, Vec<RenamedLint>) {
318311 #[ allow( clippy:: enum_glob_use) ]
319312 use Token :: * ;
320313 #[ rustfmt:: skip]
321- static DECL_TOKENS : & [ Token < ' _ > ] = & [
314+ static VERSION_TOKENS : & [ Token < ' _ > ] = & [
322315 // #[clippy::version = "version"]
323316 Pound , OpenBracket , Ident ( "clippy" ) , DoubleColon , Ident ( "version" ) , Eq , CaptureLitStr , CloseBracket ,
324- // ("first", "second"),
325- OpenParen , CaptureLitStr , Comma , CaptureLitStr , CloseParen , Comma ,
326- ] ;
327- #[ rustfmt:: skip]
328- static DEPRECATED_TOKENS : & [ Token < ' _ > ] = & [
329- // !{ DEPRECATED(DEPRECATED_VERSION) = [
330- Bang , OpenBrace , Ident ( "DEPRECATED" ) , OpenParen , Ident ( "DEPRECATED_VERSION" ) , CloseParen , Eq , OpenBracket ,
331317 ] ;
332318 #[ rustfmt:: skip]
333- static RENAMED_TOKENS : & [ Token < ' _ > ] = & [
334- // !{ RENAMED(RENAMED_VERSION) = [
335- Bang , OpenBrace , Ident ( "RENAMED" ) , OpenParen , Ident ( "RENAMED_VERSION" ) , CloseParen , Eq , OpenBracket ,
319+ static DECL_TOKENS : & [ Token < ' _ > ] = & [
320+ // ("first", "second"),
321+ OpenParen , CaptureLitStr , Comma , CaptureLitStr , CloseParen , Comma ,
336322 ] ;
337323
338324 let path = "clippy_lints/src/deprecated_lints.rs" ;
@@ -345,15 +331,16 @@ pub fn read_deprecated_lints() -> (Vec<DeprecatedLint>, Vec<RenamedLint>) {
345331
346332 // First instance is the macro definition.
347333 assert ! (
348- searcher. find_token( Ident ( "declare_with_version " ) ) ,
334+ searcher. find_token( Ident ( "deprecated " ) ) ,
349335 "error reading deprecated lints"
350336 ) ;
351337
352- if searcher. find_token ( Ident ( "declare_with_version " ) ) && searcher. match_tokens ( DEPRECATED_TOKENS , & mut [ ] ) {
338+ if searcher. find_token ( Ident ( "deprecated " ) ) && searcher. match_tokens ( & [ Bang , OpenBracket ] , & mut [ ] ) {
353339 let mut version = "" ;
354340 let mut name = "" ;
355341 let mut reason = "" ;
356- while searcher. match_tokens ( DECL_TOKENS , & mut [ & mut version, & mut name, & mut reason] ) {
342+ while searcher. match_tokens ( VERSION_TOKENS , & mut [ & mut version] ) {
343+ assert ! ( searcher. match_tokens( DECL_TOKENS , & mut [ & mut name, & mut reason] ) ) ;
357344 deprecated. push ( DeprecatedLint {
358345 name : parse_str_single_line ( path. as_ref ( ) , name) ,
359346 reason : parse_str_single_line ( path. as_ref ( ) , reason) ,
@@ -364,15 +351,15 @@ pub fn read_deprecated_lints() -> (Vec<DeprecatedLint>, Vec<RenamedLint>) {
364351 panic ! ( "error reading deprecated lints" ) ;
365352 }
366353
367- if searcher. find_token ( Ident ( "declare_with_version" ) ) && searcher. match_tokens ( RENAMED_TOKENS , & mut [ ] ) {
368- let mut version = "" ;
354+ // pub const RENAMED: &[(&str, &str)] = &[
355+ // ^^^^^^^ ^ ^
356+ if searcher. find_token ( Ident ( "RENAMED" ) ) && searcher. find_token ( Eq ) && searcher. find_token ( OpenBracket ) {
369357 let mut old_name = "" ;
370358 let mut new_name = "" ;
371- while searcher. match_tokens ( DECL_TOKENS , & mut [ & mut version , & mut old_name, & mut new_name] ) {
359+ while searcher. match_tokens ( DECL_TOKENS , & mut [ & mut old_name, & mut new_name] ) {
372360 renamed. push ( RenamedLint {
373361 old_name : parse_str_single_line ( path. as_ref ( ) , old_name) ,
374362 new_name : parse_str_single_line ( path. as_ref ( ) , new_name) ,
375- version : parse_str_single_line ( path. as_ref ( ) , version) ,
376363 } ) ;
377364 }
378365 } else {
0 commit comments