OLD | NEW |
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, 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 dart2js; | 5 part of dart2js; |
6 | 6 |
7 /// Enum for the visit methods added in [ResolvedVisitor]. | 7 /// Enum for the visit methods added in [ResolvedVisitor]. |
8 // TODO(johnniwinther): Remove this. | 8 // TODO(johnniwinther): Remove this. |
9 enum ResolvedKind { | 9 enum ResolvedKind { |
10 ASSERT, | 10 ASSERT, |
11 TYPE_LITERAL, | 11 TYPE_LITERAL, |
12 SUPER, | 12 SUPER, |
13 OPERATOR, | 13 OPERATOR, |
14 TYPE_PREFIX, | 14 TYPE_PREFIX, |
15 GETTER, | 15 GETTER, |
16 STATIC, | 16 STATIC, |
17 CLOSURE, | 17 CLOSURE, |
18 DYNAMIC, | 18 DYNAMIC, |
19 ERROR, | 19 ERROR, |
20 SEND_SET, | 20 SEND_SET, |
21 NEW, | 21 NEW, |
22 } | 22 } |
23 | 23 |
24 /// Abstract interface for a [ResolvedVisitor]. | 24 /// Abstract interface for a [ResolvedVisitor]. |
25 // TODO(johnniwinther): Remove this. | 25 // TODO(johnniwinther): Remove this. |
26 abstract class ResolvedKindVisitor<R> { | 26 abstract class ResolvedKindVisitor<R> { |
27 R visitSuperSend(Send node); | 27 R visitSuperSend(Send node); |
| 28 |
| 29 @deprecated |
28 R visitOperatorSend(Send node); | 30 R visitOperatorSend(Send node); |
29 R visitGetterSend(Send node); | 31 R visitGetterSend(Send node); |
30 R visitClosureSend(Send node); | 32 R visitClosureSend(Send node); |
31 R visitDynamicSend(Send node); | 33 R visitDynamicSend(Send node); |
32 R visitStaticSend(Send node); | 34 R visitStaticSend(Send node); |
33 R handleSendSet(SendSet node); | 35 R handleSendSet(SendSet node); |
34 R handleNewExpression(NewExpression node); | 36 R handleNewExpression(NewExpression node); |
35 | 37 |
36 /// Visitor callback for a type literal. | 38 /// Visitor callback for a type literal. |
37 @deprecated | 39 @deprecated |
(...skipping 139 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
177 if (sendStructure != null) { | 179 if (sendStructure != null) { |
178 var arg = sendVisitor == _resolvedKindDispatcher | 180 var arg = sendVisitor == _resolvedKindDispatcher |
179 ? kindVisitor : sendStructure; | 181 ? kindVisitor : sendStructure; |
180 return sendStructure.dispatch(sendVisitor, node, arg); | 182 return sendStructure.dispatch(sendVisitor, node, arg); |
181 } else { | 183 } else { |
182 return kindVisitor.visitStaticSend(node); | 184 return kindVisitor.visitStaticSend(node); |
183 } | 185 } |
184 } | 186 } |
185 } | 187 } |
186 | 188 |
187 @deprecated | 189 @override |
| 190 R visitOperatorSend(Send node) { |
| 191 return internalError(node, "visitOperaterSend is deprecated"); |
| 192 } |
| 193 |
| 194 @override |
188 R visitTypeLiteralSend(Send node) { | 195 R visitTypeLiteralSend(Send node) { |
189 return internalError(node, "visitTypeLiteralSend is deprecated"); | 196 return internalError(node, "visitTypeLiteralSend is deprecated"); |
190 } | 197 } |
191 | 198 |
192 @deprecated | 199 @override |
193 R visitTypePrefixSend(Send node) { | 200 R visitTypePrefixSend(Send node) { |
194 return internalError(node, "visitTypePrefixSend is deprecated"); | 201 return internalError(node, "visitTypePrefixSend is deprecated"); |
195 } | 202 } |
196 | 203 |
197 @deprecated | 204 @override |
198 R visitAssertSend(Send node) { | 205 R visitAssertSend(Send node) { |
199 return internalError(node, "visitAssertSend is deprecated"); | 206 return internalError(node, "visitAssertSend is deprecated"); |
200 } | 207 } |
201 | 208 |
202 bool checkResolvedKind(Node node, | 209 bool checkResolvedKind(Node node, |
203 ResolvedKind oldKind, | 210 ResolvedKind oldKind, |
204 ResolvedKind newKind) { | 211 ResolvedKind newKind) { |
205 return invariant(node, oldKind == newKind, message: '$oldKind != $newKind'); | 212 return invariant(node, oldKind == newKind, message: '$oldKind != $newKind'); |
206 } | 213 } |
207 | 214 |
(...skipping 560 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
768 | 775 |
769 @override | 776 @override |
770 R errorUnresolvedSuperIndex( | 777 R errorUnresolvedSuperIndex( |
771 Send node, | 778 Send node, |
772 Element function, | 779 Element function, |
773 Node index, | 780 Node index, |
774 ResolvedKindVisitor<R> visitor) { | 781 ResolvedKindVisitor<R> visitor) { |
775 return visitor.visitSuperSend(node); | 782 return visitor.visitSuperSend(node); |
776 } | 783 } |
777 } | 784 } |
OLD | NEW |