Commit f2e3fd9
committed
Auto merge of #645 - LeSeulArtichaut:visitor-controlflow, r=jackh726
Use `ControlFlow` in `Visitor`
This PR (almost) resolves one of the differences between rustc's `TypeVisitor` and chalk's `Visitor` by adopting rustc's design with `std::ops::ControlFlow`.
However as `std::ops::ControlFlow` is still unstable, this PR defines a duplicate of `ControlFlow` in `chalk_ir` along with a `try_break!` macro which behaves like `try!`.File tree
14 files changed
+331
-358
lines changed- chalk-derive/src
- chalk-engine/src
- chalk-ir/src
- visit
- chalk-solve/src
- clauses
- builtin_traits
- infer
- logging_db
- solve
14 files changed
+331
-358
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
162 | 162 | | |
163 | 163 | | |
164 | 164 | | |
165 | | - | |
166 | | - | |
167 | | - | |
168 | | - | |
| 165 | + | |
169 | 166 | | |
170 | 167 | | |
171 | 168 | | |
| |||
178 | 175 | | |
179 | 176 | | |
180 | 177 | | |
181 | | - | |
| 178 | + | |
182 | 179 | | |
183 | | - | |
| 180 | + | |
184 | 181 | | |
185 | | - | |
| 182 | + | |
186 | 183 | | |
187 | 184 | | |
188 | 185 | | |
189 | | - | |
190 | 186 | | |
191 | 187 | | |
192 | 188 | | |
193 | | - | |
| 189 | + | |
194 | 190 | | |
195 | 191 | | |
196 | 192 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
58 | 58 | | |
59 | 59 | | |
60 | 60 | | |
61 | | - | |
| 61 | + | |
62 | 62 | | |
63 | 63 | | |
64 | 64 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
9 | 9 | | |
10 | 10 | | |
11 | 11 | | |
12 | | - | |
| 12 | + | |
13 | 13 | | |
14 | 14 | | |
15 | 15 | | |
| |||
0 commit comments