aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_syntax/tests/data/parser/err/0018_incomplete_fn.txt
blob: 9996cf8241d9853c42557aa226fde8e86c823857 (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; 183)
  IMPL_BLOCK@[0; 182)
    IMPL_KW@[0; 4) "impl"
    WHITESPACE@[4; 5) " "
    PATH_TYPE@[5; 13)
      PATH@[5; 13)
        PATH_SEGMENT@[5; 13)
          NAME_REF@[5; 13)
            IDENT@[5; 13) "FnScopes"
    WHITESPACE@[13; 14) " "
    ITEM_LIST@[14; 182)
      L_CURLY@[14; 15) "{"
      WHITESPACE@[15; 20) "\n    "
      FN_DEF@[20; 161)
        FN_KW@[20; 22) "fn"
        WHITESPACE@[22; 23) " "
        NAME@[23; 32)
          IDENT@[23; 32) "new_scope"
        PARAM_LIST@[32; 35)
          L_PAREN@[32; 33) "("
          PARAM@[33; 34)
            REF_PAT@[33; 34)
              AMP@[33; 34) "&"
              err: `expected pattern`
              err: `expected COLON`
              err: `expected type`
          R_PAREN@[34; 35) ")"
        WHITESPACE@[35; 36) " "
        RET_TYPE@[36; 46)
          THIN_ARROW@[36; 38) "->"
          WHITESPACE@[38; 39) " "
          PATH_TYPE@[39; 46)
            PATH@[39; 46)
              PATH_SEGMENT@[39; 46)
                NAME_REF@[39; 46)
                  IDENT@[39; 46) "ScopeId"
        WHITESPACE@[46; 47) " "
        BLOCK@[47; 161)
          L_CURLY@[47; 48) "{"
          WHITESPACE@[48; 57) "\n        "
          LET_STMT@[57; 85)
            LET_KW@[57; 60) "let"
            WHITESPACE@[60; 61) " "
            BIND_PAT@[61; 64)
              NAME@[61; 64)
                IDENT@[61; 64) "res"
            WHITESPACE@[64; 65) " "
            EQ@[65; 66) "="
            WHITESPACE@[66; 67) " "
            METHOD_CALL_EXPR@[67; 84)
              FIELD_EXPR@[67; 78)
                PATH_EXPR@[67; 71)
                  PATH@[67; 71)
                    PATH_SEGMENT@[67; 71)
                      SELF_KW@[67; 71) "self"
                DOT@[71; 72) "."
                NAME_REF@[72; 78)
                  IDENT@[72; 78) "scopes"
              DOT@[78; 79) "."
              NAME_REF@[79; 82)
                IDENT@[79; 82) "len"
              ARG_LIST@[82; 84)
                L_PAREN@[82; 83) "("
                R_PAREN@[83; 84) ")"
            SEMI@[84; 85) ";"
          WHITESPACE@[85; 94) "\n        "
          METHOD_CALL_EXPR@[94; 155)
            FIELD_EXPR@[94; 105)
              PATH_EXPR@[94; 98)
                PATH@[94; 98)
                  PATH_SEGMENT@[94; 98)
                    SELF_KW@[94; 98) "self"
              DOT@[98; 99) "."
              NAME_REF@[99; 105)
                IDENT@[99; 105) "scopes"
            DOT@[105; 106) "."
            NAME_REF@[106; 110)
              IDENT@[106; 110) "push"
            ARG_LIST@[110; 155)
              L_PAREN@[110; 111) "("
              STRUCT_LIT@[111; 154)
                PATH@[111; 120)
                  PATH_SEGMENT@[111; 120)
                    NAME_REF@[111; 120)
                      IDENT@[111; 120) "ScopeData"
                WHITESPACE@[120; 121) " "
                NAMED_FIELD_LIST@[121; 154)
                  L_CURLY@[121; 122) "{"
                  WHITESPACE@[122; 123) " "
                  NAMED_FIELD@[123; 135)
                    NAME_REF@[123; 129)
                      IDENT@[123; 129) "parent"
                    COLON@[129; 130) ":"
                    WHITESPACE@[130; 131) " "
                    PATH_EXPR@[131; 135)
                      PATH@[131; 135)
                        PATH_SEGMENT@[131; 135)
                          NAME_REF@[131; 135)
                            IDENT@[131; 135) "None"
                  COMMA@[135; 136) ","
                  WHITESPACE@[136; 137) " "
                  NAMED_FIELD@[137; 152)
                    NAME_REF@[137; 144)
                      IDENT@[137; 144) "entries"
                    COLON@[144; 145) ":"
                    WHITESPACE@[145; 146) " "
                    MACRO_CALL@[146; 152)
                      PATH@[146; 149)
                        PATH_SEGMENT@[146; 149)
                          NAME_REF@[146; 149)
                            IDENT@[146; 149) "vec"
                      EXCL@[149; 150) "!"
                      TOKEN_TREE@[150; 152)
                        L_BRACK@[150; 151) "["
                        R_BRACK@[151; 152) "]"
                  WHITESPACE@[152; 153) " "
                  R_CURLY@[153; 154) "}"
              R_PAREN@[154; 155) ")"
          WHITESPACE@[155; 160) "\n    "
          R_CURLY@[160; 161) "}"
      WHITESPACE@[161; 167) "\n\n    "
      FN_DEF@[167; 180)
        FN_KW@[167; 169) "fn"
        WHITESPACE@[169; 170) " "
        NAME@[170; 180)
          IDENT@[170; 180) "set_parent"
          err: `expected function arguments`
          err: `expected a block`
      WHITESPACE@[180; 181) "\n"
      R_CURLY@[181; 182) "}"
  WHITESPACE@[182; 183) "\n"