@@ -424,47 +424,40 @@ mod tests {
424424 string_to_stream ( "macro_rules! zip (($a)=>($a))" . to_string ( ) ) . trees ( ) . collect ( ) ;
425425 let tts: & [ TokenTree ] = & tts[ ..] ;
426426
427- match ( tts. len ( ) , tts. get ( 0 ) , tts. get ( 1 ) , tts. get ( 2 ) , tts. get ( 3 ) ) {
428- (
429- 4 ,
430- Some ( & TokenTree :: Token ( Token {
431- kind : token:: Ident ( name_macro_rules, false ) , ..
432- } ) ) ,
433- Some ( & TokenTree :: Token ( Token { kind : token:: Not , .. } ) ) ,
434- Some ( & TokenTree :: Token ( Token { kind : token:: Ident ( name_zip, false ) , .. } ) ) ,
435- Some ( & TokenTree :: Delimited ( _, macro_delim, ref macro_tts) ) ,
436- )
427+ match tts {
428+ & [ TokenTree :: Token ( Token { kind : token:: Ident ( name_macro_rules, false ) , ..} ) ,
429+ TokenTree :: Token ( Token { kind : token:: Not , .. } ) ,
430+ TokenTree :: Token ( Token { kind : token:: Ident ( name_zip, false ) , .. } ) ,
431+ TokenTree :: Delimited ( _, macro_delim, ref macro_tts)
432+ ]
437433 if name_macro_rules == sym:: macro_rules && name_zip. as_str ( ) == "zip" => {
438434 let tts = & macro_tts. trees ( ) . collect :: < Vec < _ > > ( ) ;
439- match ( tts. len ( ) , tts. get ( 0 ) , tts. get ( 1 ) , tts. get ( 2 ) ) {
440- (
441- 3 ,
442- Some ( & TokenTree :: Delimited ( _, first_delim, ref first_tts) ) ,
443- Some ( & TokenTree :: Token ( Token { kind : token:: FatArrow , .. } ) ) ,
444- Some ( & TokenTree :: Delimited ( _, second_delim, ref second_tts) ) ,
445- )
435+ match tts {
436+ & [
437+ TokenTree :: Delimited ( _, first_delim, ref first_tts) ,
438+ TokenTree :: Token ( Token { kind : token:: FatArrow , .. } ) ,
439+ TokenTree :: Delimited ( _, second_delim, ref second_tts) ,
440+ ]
446441 if macro_delim == token:: Paren => {
447442 let tts = & first_tts. trees ( ) . collect :: < Vec < _ > > ( ) ;
448- match ( tts. len ( ) , tts. get ( 0 ) , tts. get ( 1 ) ) {
449- (
450- 2 ,
451- Some ( & TokenTree :: Token ( Token { kind : token:: Dollar , .. } ) ) ,
452- Some ( & TokenTree :: Token ( Token {
443+ match tts {
444+ & [
445+ TokenTree :: Token ( Token { kind : token:: Dollar , .. } ) ,
446+ TokenTree :: Token ( Token {
453447 kind : token:: Ident ( name, false ) , ..
454- } ) ) ,
455- )
448+ } ) ,
449+ ]
456450 if first_delim == token:: Paren && name. as_str ( ) == "a" => { } ,
457451 _ => panic ! ( "value 3: {:?} {:?}" , first_delim, first_tts) ,
458452 }
459453 let tts = & second_tts. trees ( ) . collect :: < Vec < _ > > ( ) ;
460- match ( tts. len ( ) , tts. get ( 0 ) , tts. get ( 1 ) ) {
461- (
462- 2 ,
463- Some ( & TokenTree :: Token ( Token { kind : token:: Dollar , .. } ) ) ,
464- Some ( & TokenTree :: Token ( Token {
454+ match tts {
455+ & [
456+ TokenTree :: Token ( Token { kind : token:: Dollar , .. } ) ,
457+ TokenTree :: Token ( Token {
465458 kind : token:: Ident ( name, false ) , ..
466- } ) ) ,
467- )
459+ } ) ,
460+ ]
468461 if second_delim == token:: Paren && name. as_str ( ) == "a" => { } ,
469462 _ => panic ! ( "value 4: {:?} {:?}" , second_delim, second_tts) ,
470463 }
0 commit comments