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 * Common class for all nodes in the graph. The current nodes are: | 8 * Common class for all nodes in the graph. The current nodes are: |
9 * | 9 * |
10 * - Concrete types | 10 * - Concrete types |
(...skipping 167 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
178 Iterator<TypeInformation> get iterator => assignments.keys.iterator; | 178 Iterator<TypeInformation> get iterator => assignments.keys.iterator; |
179 Iterable<TypeInformation> where(Function f) => assignments.keys.where(f); | 179 Iterable<TypeInformation> where(Function f) => assignments.keys.where(f); |
180 | 180 |
181 bool contains(TypeInformation info) => assignments.containsKey(info); | 181 bool contains(TypeInformation info) => assignments.containsKey(info); |
182 | 182 |
183 String toString() => assignments.keys.toList().toString(); | 183 String toString() => assignments.keys.toList().toString(); |
184 } | 184 } |
185 | 185 |
186 /** | 186 /** |
187 * A node representing a resolved element of the program. The kind of | 187 * A node representing a resolved element of the program. The kind of |
188 * elements that need an [ElementTypeRepresentation] are: | 188 * elements that need an [ElementTypeInformation] are: |
189 * | 189 * |
190 * - Functions (including getters and setters) | 190 * - Functions (including getters and setters) |
191 * - Constructors (factory or generative) | 191 * - Constructors (factory or generative) |
192 * - Fields | 192 * - Fields |
193 * - Parameters | 193 * - Parameters |
194 * - Local variables mutated in closures | 194 * - Local variables mutated in closures |
195 * | 195 * |
196 * The [ElementTypeInformation] of a function and a constructor is its | 196 * The [ElementTypeInformation] of a function and a constructor is its |
197 * return type. | 197 * return type. |
198 * | 198 * |
(...skipping 714 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
913 T visitPhiElementTypeInformation(PhiElementTypeInformation info); | 913 T visitPhiElementTypeInformation(PhiElementTypeInformation info); |
914 T visitElementInContainerTypeInformation( | 914 T visitElementInContainerTypeInformation( |
915 ElementInContainerTypeInformation info); | 915 ElementInContainerTypeInformation info); |
916 T visitContainerTypeInformation(ContainerTypeInformation info); | 916 T visitContainerTypeInformation(ContainerTypeInformation info); |
917 T visitConcreteTypeInformation(ConcreteTypeInformation info); | 917 T visitConcreteTypeInformation(ConcreteTypeInformation info); |
918 T visitClosureCallSiteTypeInformation(ClosureCallSiteTypeInformation info); | 918 T visitClosureCallSiteTypeInformation(ClosureCallSiteTypeInformation info); |
919 T visitStaticCallSiteTypeInformation(StaticCallSiteTypeInformation info); | 919 T visitStaticCallSiteTypeInformation(StaticCallSiteTypeInformation info); |
920 T visitDynamicCallSiteTypeInformation(DynamicCallSiteTypeInformation info); | 920 T visitDynamicCallSiteTypeInformation(DynamicCallSiteTypeInformation info); |
921 T visitElementTypeInformation(ElementTypeInformation info); | 921 T visitElementTypeInformation(ElementTypeInformation info); |
922 } | 922 } |
OLD | NEW |