SOURCE_FILE@[0; 54) FN_DEF@[0; 31) ATTR@[0; 18) POUND@[0; 1) TOKEN_TREE@[1; 18) L_BRACK@[1; 2) IDENT@[2; 5) "foo" TOKEN_TREE@[5; 17) L_PAREN@[5; 6) IDENT@[6; 9) "foo" COMMA@[9; 10) WHITESPACE@[10; 11) PLUS@[11; 12) COMMA@[12; 13) WHITESPACE@[13; 14) INT_NUMBER@[14; 16) "92" R_PAREN@[16; 17) R_BRACK@[17; 18) WHITESPACE@[18; 19) FN_KW@[19; 21) WHITESPACE@[21; 22) NAME@[22; 25) IDENT@[22; 25) "foo" PARAM_LIST@[25; 27) L_PAREN@[25; 26) R_PAREN@[26; 27) WHITESPACE@[27; 28) BLOCK@[28; 31) L_CURLY@[28; 29) WHITESPACE@[29; 30) R_CURLY@[30; 31) WHITESPACE@[31; 34) ATTR@[34; 53) POUND@[34; 35) TOKEN_TREE@[35; 53) L_BRACK@[35; 36) IDENT@[36; 39) "foo" TOKEN_TREE@[39; 53) L_PAREN@[39; 40) WHITESPACE@[40; 41) FN_KW@[41; 43) WHITESPACE@[43; 44) IDENT@[44; 47) "foo" TOKEN_TREE@[47; 49) L_PAREN@[47; 48) R_PAREN@[48; 49) WHITESPACE@[49; 50) TOKEN_TREE@[50; 53) L_CURLY@[50; 51) WHITESPACE@[51; 52) R_CURLY@[52; 53) err: `expected R_PAREN` err: `expected R_BRACK` err: `expected an item` WHITESPACE@[53; 54)