OLD | NEW |
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 part of type_graph_inferrer; | 5 part of type_graph_inferrer; |
6 | 6 |
7 /** | 7 /** |
8 * A set of selector names that [List] implements, that we know do not | 8 * A set of selector names that [List] implements, that we know do not |
9 * change the element type of the list, or let the list escape to code | 9 * change the element type of the list, or let the list escape to code |
10 * that might change the element type. | 10 * that might change the element type. |
(...skipping 189 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
200 callsGrowableMethod = true; | 200 callsGrowableMethod = true; |
201 assignments.add(inferrer.types.nullType); | 201 assignments.add(inferrer.types.nullType); |
202 } | 202 } |
203 } else if (selector.isCall && | 203 } else if (selector.isCall && |
204 !info.targets.every((element) => element.isFunction)) { | 204 !info.targets.every((element) => element.isFunction)) { |
205 bailout('Passed to a closure'); | 205 bailout('Passed to a closure'); |
206 return; | 206 return; |
207 } | 207 } |
208 } | 208 } |
209 } | 209 } |
OLD | NEW |