aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_syntax/test_data/parser/ok/0029_range_forms.rast
blob: 95dae4870bcfd429aff8f43336475bf8da909de7 (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
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
SOURCE_FILE@[0; 153)
  FN_DEF@[0; 152)
    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; 152)
      BLOCK@[9; 152)
        L_CURLY@[9; 10) "{"
        WHITESPACE@[10; 15) "\n    "
        EXPR_STMT@[15; 23)
          RANGE_EXPR@[15; 22)
            DOTDOT@[15; 17) ".."
            BIN_EXPR@[17; 22)
              LITERAL@[17; 18)
                INT_NUMBER@[17; 18) "1"
              WHITESPACE@[18; 19) " "
              PLUS@[19; 20) "+"
              WHITESPACE@[20; 21) " "
              LITERAL@[21; 22)
                INT_NUMBER@[21; 22) "1"
          SEMI@[22; 23) ";"
        WHITESPACE@[23; 28) "\n    "
        EXPR_STMT@[28; 36)
          BIN_EXPR@[28; 35)
            RANGE_EXPR@[28; 31)
              DOTDOT@[28; 30) ".."
              PATH_EXPR@[30; 31)
                PATH@[30; 31)
                  PATH_SEGMENT@[30; 31)
                    NAME_REF@[30; 31)
                      IDENT@[30; 31) "z"
            WHITESPACE@[31; 32) " "
            EQ@[32; 33) "="
            WHITESPACE@[33; 34) " "
            LITERAL@[34; 35)
              INT_NUMBER@[34; 35) "2"
          SEMI@[35; 36) ";"
        WHITESPACE@[36; 41) "\n    "
        EXPR_STMT@[41; 59)
          BIN_EXPR@[41; 58)
            PATH_EXPR@[41; 42)
              PATH@[41; 42)
                PATH_SEGMENT@[41; 42)
                  NAME_REF@[41; 42)
                    IDENT@[41; 42) "x"
            WHITESPACE@[42; 43) " "
            EQ@[43; 44) "="
            WHITESPACE@[44; 45) " "
            RANGE_EXPR@[45; 58)
              LITERAL@[45; 50)
                FALSE_KW@[45; 50) "false"
              DOTDOT@[50; 52) ".."
              BIN_EXPR@[52; 58)
                LITERAL@[52; 53)
                  INT_NUMBER@[52; 53) "1"
                WHITESPACE@[53; 54) " "
                EQEQ@[54; 56) "=="
                WHITESPACE@[56; 57) " "
                LITERAL@[57; 58)
                  INT_NUMBER@[57; 58) "1"
          SEMI@[58; 59) ";"
        WHITESPACE@[59; 64) "\n    "
        LET_STMT@[64; 76)
          LET_KW@[64; 67) "let"
          WHITESPACE@[67; 68) " "
          BIND_PAT@[68; 69)
            NAME@[68; 69)
              IDENT@[68; 69) "x"
          WHITESPACE@[69; 70) " "
          EQ@[70; 71) "="
          WHITESPACE@[71; 72) " "
          RANGE_EXPR@[72; 75)
            LITERAL@[72; 73)
              INT_NUMBER@[72; 73) "1"
            DOTDOT@[73; 75) ".."
          SEMI@[75; 76) ";"
        WHITESPACE@[76; 86) "\n    \n    "
        EXPR_STMT@[86; 95)
          RANGE_EXPR@[86; 94)
            DOTDOTEQ@[86; 89) "..="
            BIN_EXPR@[89; 94)
              LITERAL@[89; 90)
                INT_NUMBER@[89; 90) "1"
              WHITESPACE@[90; 91) " "
              PLUS@[91; 92) "+"
              WHITESPACE@[92; 93) " "
              LITERAL@[93; 94)
                INT_NUMBER@[93; 94) "1"
          SEMI@[94; 95) ";"
        WHITESPACE@[95; 100) "\n    "
        EXPR_STMT@[100; 109)
          BIN_EXPR@[100; 108)
            RANGE_EXPR@[100; 104)
              DOTDOTEQ@[100; 103) "..="
              PATH_EXPR@[103; 104)
                PATH@[103; 104)
                  PATH_SEGMENT@[103; 104)
                    NAME_REF@[103; 104)
                      IDENT@[103; 104) "z"
            WHITESPACE@[104; 105) " "
            EQ@[105; 106) "="
            WHITESPACE@[106; 107) " "
            LITERAL@[107; 108)
              INT_NUMBER@[107; 108) "2"
          SEMI@[108; 109) ";"
        WHITESPACE@[109; 114) "\n    "
        EXPR_STMT@[114; 133)
          BIN_EXPR@[114; 132)
            PATH_EXPR@[114; 115)
              PATH@[114; 115)
                PATH_SEGMENT@[114; 115)
                  NAME_REF@[114; 115)
                    IDENT@[114; 115) "x"
            WHITESPACE@[115; 116) " "
            EQ@[116; 117) "="
            WHITESPACE@[117; 118) " "
            RANGE_EXPR@[118; 132)
              LITERAL@[118; 123)
                FALSE_KW@[118; 123) "false"
              DOTDOTEQ@[123; 126) "..="
              BIN_EXPR@[126; 132)
                LITERAL@[126; 127)
                  INT_NUMBER@[126; 127) "1"
                WHITESPACE@[127; 128) " "
                EQEQ@[128; 130) "=="
                WHITESPACE@[130; 131) " "
                LITERAL@[131; 132)
                  INT_NUMBER@[131; 132) "1"
          SEMI@[132; 133) ";"
        WHITESPACE@[133; 138) "\n    "
        LET_STMT@[138; 150)
          LET_KW@[138; 141) "let"
          WHITESPACE@[141; 142) " "
          BIND_PAT@[142; 143)
            NAME@[142; 143)
              IDENT@[142; 143) "x"
          WHITESPACE@[143; 144) " "
          EQ@[144; 145) "="
          WHITESPACE@[145; 146) " "
          RANGE_EXPR@[146; 149)
            LITERAL@[146; 147)
              INT_NUMBER@[146; 147) "1"
            DOTDOT@[147; 149) ".."
          SEMI@[149; 150) ";"
        WHITESPACE@[150; 151) "\n"
        R_CURLY@[151; 152) "}"
  WHITESPACE@[152; 153) "\n"