1SOURCE_FILE@0..156 2 FN@0..155 3 FN_KW@0..2 "fn" 4 WHITESPACE@2..3 " " 5 NAME@3..6 6 IDENT@3..6 "foo" 7 PARAM_LIST@6..8 8 L_PAREN@6..7 "(" 9 R_PAREN@7..8 ")" 10 WHITESPACE@8..9 " " 11 BLOCK_EXPR@9..155 12 STMT_LIST@9..155 13 L_CURLY@9..10 "{" 14 WHITESPACE@10..15 "\n " 15 LET_STMT@15..29 16 LET_KW@15..18 "let" 17 WHITESPACE@18..19 " " 18 RECORD_PAT@19..23 19 PATH@19..20 20 PATH_SEGMENT@19..20 21 NAME_REF@19..20 22 IDENT@19..20 "S" 23 WHITESPACE@20..21 " " 24 RECORD_PAT_FIELD_LIST@21..23 25 L_CURLY@21..22 "{" 26 R_CURLY@22..23 "}" 27 WHITESPACE@23..24 " " 28 EQ@24..25 "=" 29 WHITESPACE@25..26 " " 30 TUPLE_EXPR@26..28 31 L_PAREN@26..27 "(" 32 R_PAREN@27..28 ")" 33 SEMICOLON@28..29 ";" 34 WHITESPACE@29..34 "\n " 35 LET_STMT@34..62 36 LET_KW@34..37 "let" 37 WHITESPACE@37..38 " " 38 RECORD_PAT@38..56 39 PATH@38..39 40 PATH_SEGMENT@38..39 41 NAME_REF@38..39 42 IDENT@38..39 "S" 43 WHITESPACE@39..40 " " 44 RECORD_PAT_FIELD_LIST@40..56 45 L_CURLY@40..41 "{" 46 WHITESPACE@41..42 " " 47 RECORD_PAT_FIELD@42..43 48 IDENT_PAT@42..43 49 NAME@42..43 50 IDENT@42..43 "f" 51 COMMA@43..44 "," 52 WHITESPACE@44..45 " " 53 RECORD_PAT_FIELD@45..54 54 IDENT_PAT@45..54 55 REF_KW@45..48 "ref" 56 WHITESPACE@48..49 " " 57 MUT_KW@49..52 "mut" 58 WHITESPACE@52..53 " " 59 NAME@53..54 60 IDENT@53..54 "g" 61 WHITESPACE@54..55 " " 62 R_CURLY@55..56 "}" 63 WHITESPACE@56..57 " " 64 EQ@57..58 "=" 65 WHITESPACE@58..59 " " 66 TUPLE_EXPR@59..61 67 L_PAREN@59..60 "(" 68 R_PAREN@60..61 ")" 69 SEMICOLON@61..62 ";" 70 WHITESPACE@62..67 "\n " 71 LET_STMT@67..90 72 LET_KW@67..70 "let" 73 WHITESPACE@70..71 " " 74 RECORD_PAT@71..84 75 PATH@71..72 76 PATH_SEGMENT@71..72 77 NAME_REF@71..72 78 IDENT@71..72 "S" 79 WHITESPACE@72..73 " " 80 RECORD_PAT_FIELD_LIST@73..84 81 L_CURLY@73..74 "{" 82 WHITESPACE@74..75 " " 83 RECORD_PAT_FIELD@75..79 84 NAME_REF@75..76 85 IDENT@75..76 "h" 86 COLON@76..77 ":" 87 WHITESPACE@77..78 " " 88 WILDCARD_PAT@78..79 89 UNDERSCORE@78..79 "_" 90 COMMA@79..80 "," 91 WHITESPACE@80..81 " " 92 REST_PAT@81..83 93 DOT2@81..83 ".." 94 R_CURLY@83..84 "}" 95 WHITESPACE@84..85 " " 96 EQ@85..86 "=" 97 WHITESPACE@86..87 " " 98 TUPLE_EXPR@87..89 99 L_PAREN@87..88 "(" 100 R_PAREN@88..89 ")" 101 SEMICOLON@89..90 ";" 102 WHITESPACE@90..95 "\n " 103 LET_STMT@95..116 104 LET_KW@95..98 "let" 105 WHITESPACE@98..99 " " 106 RECORD_PAT@99..110 107 PATH@99..100 108 PATH_SEGMENT@99..100 109 NAME_REF@99..100 110 IDENT@99..100 "S" 111 WHITESPACE@100..101 " " 112 RECORD_PAT_FIELD_LIST@101..110 113 L_CURLY@101..102 "{" 114 WHITESPACE@102..103 " " 115 RECORD_PAT_FIELD@103..107 116 NAME_REF@103..104 117 IDENT@103..104 "h" 118 COLON@104..105 ":" 119 WHITESPACE@105..106 " " 120 WILDCARD_PAT@106..107 121 UNDERSCORE@106..107 "_" 122 COMMA@107..108 "," 123 WHITESPACE@108..109 " " 124 R_CURLY@109..110 "}" 125 WHITESPACE@110..111 " " 126 EQ@111..112 "=" 127 WHITESPACE@112..113 " " 128 TUPLE_EXPR@113..115 129 L_PAREN@113..114 "(" 130 R_PAREN@114..115 ")" 131 SEMICOLON@115..116 ";" 132 WHITESPACE@116..121 "\n " 133 LET_STMT@121..153 134 LET_KW@121..124 "let" 135 WHITESPACE@124..125 " " 136 RECORD_PAT@125..147 137 PATH@125..126 138 PATH_SEGMENT@125..126 139 NAME_REF@125..126 140 IDENT@125..126 "S" 141 WHITESPACE@126..127 " " 142 RECORD_PAT_FIELD_LIST@127..147 143 L_CURLY@127..128 "{" 144 WHITESPACE@128..129 " " 145 REST_PAT@129..145 146 ATTR@129..142 147 POUND@129..130 "#" 148 L_BRACK@130..131 "[" 149 META@131..141 150 PATH@131..134 151 PATH_SEGMENT@131..134 152 NAME_REF@131..134 153 IDENT@131..134 "cfg" 154 TOKEN_TREE@134..141 155 L_PAREN@134..135 "(" 156 IDENT@135..138 "any" 157 TOKEN_TREE@138..140 158 L_PAREN@138..139 "(" 159 R_PAREN@139..140 ")" 160 R_PAREN@140..141 ")" 161 R_BRACK@141..142 "]" 162 WHITESPACE@142..143 " " 163 DOT2@143..145 ".." 164 WHITESPACE@145..146 " " 165 R_CURLY@146..147 "}" 166 WHITESPACE@147..148 " " 167 EQ@148..149 "=" 168 WHITESPACE@149..150 " " 169 TUPLE_EXPR@150..152 170 L_PAREN@150..151 "(" 171 R_PAREN@151..152 ")" 172 SEMICOLON@152..153 ";" 173 WHITESPACE@153..154 "\n" 174 R_CURLY@154..155 "}" 175 WHITESPACE@155..156 "\n" 176