blob: 51def2d8fc6b656070870b89a36f164217cd9b7e (
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) "&"
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"
WHITESPACE@[180; 181) "\n"
R_CURLY@[181; 182) "}"
WHITESPACE@[182; 183) "\n"
error 34: expected pattern
error 34: expected COLON
error 34: expected type
error 180: expected function arguments
error 180: expected a block
|