SOURCE_FILE@0..112 FN@0..33 FN_KW@0..2 "fn" WHITESPACE@2..3 " " NAME@3..4 IDENT@3..4 "a" PARAM_LIST@4..6 L_PAREN@4..5 "(" R_PAREN@5..6 ")" WHITESPACE@6..7 " " BLOCK_EXPR@7..33 L_CURLY@7..8 "{" WHITESPACE@8..9 " " EXPR_STMT@9..17 ARRAY_EXPR@9..17 L_BRACK@9..10 "[" LITERAL@10..11 INT_NUMBER@10..11 "1" COMMA@11..12 "," WHITESPACE@12..13 " " LITERAL@13..14 INT_NUMBER@13..14 "2" COMMA@14..15 "," WHITESPACE@15..16 " " ERROR@16..17 AT@16..17 "@" EXPR_STMT@17..18 ERROR@17..18 COMMA@17..18 "," WHITESPACE@18..19 " " STRUCT@19..26 STRUCT_KW@19..25 "struct" ERROR@25..26 COMMA@25..26 "," WHITESPACE@26..27 " " LET_STMT@27..31 LET_KW@27..30 "let" ERROR@30..31 R_BRACK@30..31 "]" WHITESPACE@31..32 " " R_CURLY@32..33 "}" WHITESPACE@33..34 "\n" FN@34..68 FN_KW@34..36 "fn" WHITESPACE@36..37 " " NAME@37..38 IDENT@37..38 "b" PARAM_LIST@38..40 L_PAREN@38..39 "(" R_PAREN@39..40 ")" WHITESPACE@40..41 " " BLOCK_EXPR@41..68 L_CURLY@41..42 "{" WHITESPACE@42..43 " " EXPR_STMT@43..54 CALL_EXPR@43..54 PATH_EXPR@43..46 PATH@43..46 PATH_SEGMENT@43..46 NAME_REF@43..46 IDENT@43..46 "foo" ARG_LIST@46..54 L_PAREN@46..47 "(" LITERAL@47..48 INT_NUMBER@47..48 "1" COMMA@48..49 "," WHITESPACE@49..50 " " LITERAL@50..51 INT_NUMBER@50..51 "2" COMMA@51..52 "," WHITESPACE@52..53 " " ERROR@53..54 AT@53..54 "@" EXPR_STMT@54..55 ERROR@54..55 COMMA@54..55 "," WHITESPACE@55..56 " " IMPL_DEF@56..60 IMPL_KW@56..60 "impl" EXPR_STMT@60..61 ERROR@60..61 COMMA@60..61 "," WHITESPACE@61..62 " " LET_STMT@62..65 LET_KW@62..65 "let" ERROR@65..66 R_PAREN@65..66 ")" WHITESPACE@66..67 " " R_CURLY@67..68 "}" WHITESPACE@68..69 "\n" FN@69..111 FN_KW@69..71 "fn" WHITESPACE@71..72 " " NAME@72..73 IDENT@72..73 "c" PARAM_LIST@73..75 L_PAREN@73..74 "(" R_PAREN@74..75 ")" WHITESPACE@75..76 " " BLOCK_EXPR@76..111 L_CURLY@76..77 "{" WHITESPACE@77..78 " " EXPR_STMT@78..93 METHOD_CALL_EXPR@78..93 PATH_EXPR@78..81 PATH@78..81 PATH_SEGMENT@78..81 NAME_REF@78..81 IDENT@78..81 "foo" DOT@81..82 "." NAME_REF@82..85 IDENT@82..85 "bar" ARG_LIST@85..93 L_PAREN@85..86 "(" LITERAL@86..87 INT_NUMBER@86..87 "1" COMMA@87..88 "," WHITESPACE@88..89 " " LITERAL@89..90 INT_NUMBER@89..90 "2" COMMA@90..91 "," WHITESPACE@91..92 " " ERROR@92..93 AT@92..93 "@" EXPR_STMT@93..94 ERROR@93..94 COMMA@93..94 "," WHITESPACE@94..95 " " EXPR_STMT@95..96 ERROR@95..96 R_BRACK@95..96 "]" EXPR_STMT@96..97 ERROR@96..97 COMMA@96..97 "," WHITESPACE@97..98 " " TRAIT@98..104 TRAIT_KW@98..103 "trait" ERROR@103..104 COMMA@103..104 "," WHITESPACE@104..105 " " LET_STMT@105..108 LET_KW@105..108 "let" ERROR@108..109 R_PAREN@108..109 ")" WHITESPACE@109..110 " " R_CURLY@110..111 "}" WHITESPACE@111..112 "\n" error 16..16: expected expression error 17..17: expected R_BRACK error 17..17: expected SEMICOLON error 17..17: expected expression error 18..18: expected SEMICOLON error 25..25: expected a name error 26..26: expected `;`, `{`, or `(` error 30..30: expected pattern error 31..31: expected SEMICOLON error 53..53: expected expression error 54..54: expected SEMICOLON error 54..54: expected expression error 55..55: expected SEMICOLON error 60..60: expected type error 60..60: expected `{` error 60..60: expected expression error 61..61: expected SEMICOLON error 65..65: expected pattern error 65..65: expected SEMICOLON error 65..65: expected expression error 92..92: expected expression error 93..93: expected SEMICOLON error 93..93: expected expression error 94..94: expected SEMICOLON error 95..95: expected expression error 96..96: expected SEMICOLON error 96..96: expected expression error 97..97: expected SEMICOLON error 103..103: expected a name error 104..104: expected `{` error 108..108: expected pattern error 108..108: expected SEMICOLON error 108..108: expected expression