]> git.lizzy.rs Git - rust.git/blob - crates/syntax/test_data/parser/inline/ok/0056_where_clause.rast
Merge #7321
[rust.git] / crates / syntax / test_data / parser / inline / ok / 0056_where_clause.rast
1 SOURCE_FILE@0..116
2   FN@0..115
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 "\n"
11     WHERE_CLAUSE@9..112
12       WHERE_KW@9..14 "where"
13       WHITESPACE@14..18 "\n   "
14       WHERE_PRED@18..29
15         LIFETIME@18..20
16           LIFETIME_IDENT@18..20 "\'a"
17         COLON@20..21 ":"
18         WHITESPACE@21..22 " "
19         TYPE_BOUND_LIST@22..29
20           TYPE_BOUND@22..24
21             LIFETIME@22..24
22               LIFETIME_IDENT@22..24 "\'b"
23           WHITESPACE@24..25 " "
24           PLUS@25..26 "+"
25           WHITESPACE@26..27 " "
26           TYPE_BOUND@27..29
27             LIFETIME@27..29
28               LIFETIME_IDENT@27..29 "\'c"
29       COMMA@29..30 ","
30       WHITESPACE@30..34 "\n   "
31       WHERE_PRED@34..59
32         PATH_TYPE@34..35
33           PATH@34..35
34             PATH_SEGMENT@34..35
35               NAME_REF@34..35
36                 IDENT@34..35 "T"
37         COLON@35..36 ":"
38         WHITESPACE@36..37 " "
39         TYPE_BOUND_LIST@37..59
40           TYPE_BOUND@37..42
41             PATH_TYPE@37..42
42               PATH@37..42
43                 PATH_SEGMENT@37..42
44                   NAME_REF@37..42
45                     IDENT@37..42 "Clone"
46           WHITESPACE@42..43 " "
47           PLUS@43..44 "+"
48           WHITESPACE@44..45 " "
49           TYPE_BOUND@45..49
50             PATH_TYPE@45..49
51               PATH@45..49
52                 PATH_SEGMENT@45..49
53                   NAME_REF@45..49
54                     IDENT@45..49 "Copy"
55           WHITESPACE@49..50 " "
56           PLUS@50..51 "+"
57           WHITESPACE@51..52 " "
58           TYPE_BOUND@52..59
59             LIFETIME@52..59
60               LIFETIME_IDENT@52..59 "\'static"
61       COMMA@59..60 ","
62       WHITESPACE@60..64 "\n   "
63       WHERE_PRED@64..82
64         PATH_TYPE@64..78
65           PATH@64..78
66             PATH@64..72
67               PATH_SEGMENT@64..72
68                 NAME_REF@64..72
69                   IDENT@64..72 "Iterator"
70             COLON2@72..74 "::"
71             PATH_SEGMENT@74..78
72               NAME_REF@74..78
73                 IDENT@74..78 "Item"
74         COLON@78..79 ":"
75         WHITESPACE@79..80 " "
76         TYPE_BOUND_LIST@80..82
77           TYPE_BOUND@80..82
78             LIFETIME@80..82
79               LIFETIME_IDENT@80..82 "\'a"
80       COMMA@82..83 ","
81       WHITESPACE@83..87 "\n   "
82       WHERE_PRED@87..112
83         PATH_TYPE@87..108
84           PATH@87..108
85             PATH@87..102
86               PATH_SEGMENT@87..102
87                 L_ANGLE@87..88 "<"
88                 PATH_TYPE@88..89
89                   PATH@88..89
90                     PATH_SEGMENT@88..89
91                       NAME_REF@88..89
92                         IDENT@88..89 "T"
93                 WHITESPACE@89..90 " "
94                 AS_KW@90..92 "as"
95                 WHITESPACE@92..93 " "
96                 PATH_TYPE@93..101
97                   PATH@93..101
98                     PATH_SEGMENT@93..101
99                       NAME_REF@93..101
100                         IDENT@93..101 "Iterator"
101                 R_ANGLE@101..102 ">"
102             COLON2@102..104 "::"
103             PATH_SEGMENT@104..108
104               NAME_REF@104..108
105                 IDENT@104..108 "Item"
106         COLON@108..109 ":"
107         WHITESPACE@109..110 " "
108         TYPE_BOUND_LIST@110..112
109           TYPE_BOUND@110..112
110             LIFETIME@110..112
111               LIFETIME_IDENT@110..112 "\'a"
112     WHITESPACE@112..113 "\n"
113     BLOCK_EXPR@113..115
114       L_CURLY@113..114 "{"
115       R_CURLY@114..115 "}"
116   WHITESPACE@115..116 "\n"