aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_syntax/test_data/parser/inline/ok/0102_record_field_pat_list.rast
blob: d8e04bd9027f00a0e09fcb4e1f333881b1817bdb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
SOURCE_FILE@[0; 119)
  FN_DEF@[0; 118)
    FN_KW@[0; 2) "fn"
    WHITESPACE@[2; 3) " "
    NAME@[3; 6)
      IDENT@[3; 6) "foo"
    PARAM_LIST@[6; 8)
      L_PAREN@[6; 7) "("
      R_PAREN@[7; 8) ")"
    WHITESPACE@[8; 9) " "
    BLOCK_EXPR@[9; 118)
      BLOCK@[9; 118)
        L_CURLY@[9; 10) "{"
        WHITESPACE@[10; 15) "\n    "
        LET_STMT@[15; 29)
          LET_KW@[15; 18) "let"
          WHITESPACE@[18; 19) " "
          RECORD_PAT@[19; 23)
            PATH@[19; 20)
              PATH_SEGMENT@[19; 20)
                NAME_REF@[19; 20)
                  IDENT@[19; 20) "S"
            WHITESPACE@[20; 21) " "
            RECORD_FIELD_PAT_LIST@[21; 23)
              L_CURLY@[21; 22) "{"
              R_CURLY@[22; 23) "}"
          WHITESPACE@[23; 24) " "
          EQ@[24; 25) "="
          WHITESPACE@[25; 26) " "
          TUPLE_EXPR@[26; 28)
            L_PAREN@[26; 27) "("
            R_PAREN@[27; 28) ")"
          SEMI@[28; 29) ";"
        WHITESPACE@[29; 34) "\n    "
        LET_STMT@[34; 62)
          LET_KW@[34; 37) "let"
          WHITESPACE@[37; 38) " "
          RECORD_PAT@[38; 56)
            PATH@[38; 39)
              PATH_SEGMENT@[38; 39)
                NAME_REF@[38; 39)
                  IDENT@[38; 39) "S"
            WHITESPACE@[39; 40) " "
            RECORD_FIELD_PAT_LIST@[40; 56)
              L_CURLY@[40; 41) "{"
              WHITESPACE@[41; 42) " "
              BIND_PAT@[42; 43)
                NAME@[42; 43)
                  IDENT@[42; 43) "f"
              COMMA@[43; 44) ","
              WHITESPACE@[44; 45) " "
              BIND_PAT@[45; 54)
                REF_KW@[45; 48) "ref"
                WHITESPACE@[48; 49) " "
                MUT_KW@[49; 52) "mut"
                WHITESPACE@[52; 53) " "
                NAME@[53; 54)
                  IDENT@[53; 54) "g"
              WHITESPACE@[54; 55) " "
              R_CURLY@[55; 56) "}"
          WHITESPACE@[56; 57) " "
          EQ@[57; 58) "="
          WHITESPACE@[58; 59) " "
          TUPLE_EXPR@[59; 61)
            L_PAREN@[59; 60) "("
            R_PAREN@[60; 61) ")"
          SEMI@[61; 62) ";"
        WHITESPACE@[62; 67) "\n    "
        LET_STMT@[67; 90)
          LET_KW@[67; 70) "let"
          WHITESPACE@[70; 71) " "
          RECORD_PAT@[71; 84)
            PATH@[71; 72)
              PATH_SEGMENT@[71; 72)
                NAME_REF@[71; 72)
                  IDENT@[71; 72) "S"
            WHITESPACE@[72; 73) " "
            RECORD_FIELD_PAT_LIST@[73; 84)
              L_CURLY@[73; 74) "{"
              WHITESPACE@[74; 75) " "
              RECORD_FIELD_PAT@[75; 79)
                NAME@[75; 76)
                  IDENT@[75; 76) "h"
                COLON@[76; 77) ":"
                WHITESPACE@[77; 78) " "
                PLACEHOLDER_PAT@[78; 79)
                  UNDERSCORE@[78; 79) "_"
              COMMA@[79; 80) ","
              WHITESPACE@[80; 81) " "
              DOTDOT@[81; 83) ".."
              R_CURLY@[83; 84) "}"
          WHITESPACE@[84; 85) " "
          EQ@[85; 86) "="
          WHITESPACE@[86; 87) " "
          TUPLE_EXPR@[87; 89)
            L_PAREN@[87; 88) "("
            R_PAREN@[88; 89) ")"
          SEMI@[89; 90) ";"
        WHITESPACE@[90; 95) "\n    "
        LET_STMT@[95; 116)
          LET_KW@[95; 98) "let"
          WHITESPACE@[98; 99) " "
          RECORD_PAT@[99; 110)
            PATH@[99; 100)
              PATH_SEGMENT@[99; 100)
                NAME_REF@[99; 100)
                  IDENT@[99; 100) "S"
            WHITESPACE@[100; 101) " "
            RECORD_FIELD_PAT_LIST@[101; 110)
              L_CURLY@[101; 102) "{"
              WHITESPACE@[102; 103) " "
              RECORD_FIELD_PAT@[103; 107)
                NAME@[103; 104)
                  IDENT@[103; 104) "h"
                COLON@[104; 105) ":"
                WHITESPACE@[105; 106) " "
                PLACEHOLDER_PAT@[106; 107)
                  UNDERSCORE@[106; 107) "_"
              COMMA@[107; 108) ","
              WHITESPACE@[108; 109) " "
              R_CURLY@[109; 110) "}"
          WHITESPACE@[110; 111) " "
          EQ@[111; 112) "="
          WHITESPACE@[112; 113) " "
          TUPLE_EXPR@[113; 115)
            L_PAREN@[113; 114) "("
            R_PAREN@[114; 115) ")"
          SEMI@[115; 116) ";"
        WHITESPACE@[116; 117) "\n"
        R_CURLY@[117; 118) "}"
  WHITESPACE@[118; 119) "\n"