| OLD | NEW |
| 1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2014, 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 library engine.resolver; | 5 library engine.resolver; |
| 6 | 6 |
| 7 import 'dart:collection'; | 7 import 'dart:collection'; |
| 8 | 8 |
| 9 import '../task/strong/info.dart' show InferredType, StaticInfo; | 9 import '../task/strong/info.dart' show InferredType, StaticInfo; |
| 10 import '../task/strong/rules.dart' show TypeRules; | 10 import '../task/strong/rules.dart' show TypeRules; |
| (...skipping 11803 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 11814 return null; | 11814 return null; |
| 11815 } | 11815 } |
| 11816 | 11816 |
| 11817 @override | 11817 @override |
| 11818 Object visitMethodInvocation(MethodInvocation node) { | 11818 Object visitMethodInvocation(MethodInvocation node) { |
| 11819 // | 11819 // |
| 11820 // We visit the target and argument list, but do not visit the method name | 11820 // We visit the target and argument list, but do not visit the method name |
| 11821 // because it needs to be visited in the context of the invocation. | 11821 // because it needs to be visited in the context of the invocation. |
| 11822 // | 11822 // |
| 11823 safelyVisit(node.target); | 11823 safelyVisit(node.target); |
| 11824 safelyVisit(node.typeArguments); |
| 11824 node.accept(elementResolver); | 11825 node.accept(elementResolver); |
| 11825 _inferFunctionExpressionsParametersTypes(node.argumentList); | 11826 _inferFunctionExpressionsParametersTypes(node.argumentList); |
| 11826 Element methodElement = node.methodName.staticElement; | 11827 Element methodElement = node.methodName.staticElement; |
| 11827 if (methodElement is ExecutableElement) { | 11828 if (methodElement is ExecutableElement) { |
| 11828 InferenceContext.setType(node.argumentList, methodElement.type); | 11829 InferenceContext.setType(node.argumentList, methodElement.type); |
| 11829 } | 11830 } |
| 11830 safelyVisit(node.argumentList); | 11831 safelyVisit(node.argumentList); |
| 11831 node.accept(typeAnalyzer); | 11832 node.accept(typeAnalyzer); |
| 11832 return null; | 11833 return null; |
| 11833 } | 11834 } |
| (...skipping 4236 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 16070 nonFields.add(node); | 16071 nonFields.add(node); |
| 16071 return null; | 16072 return null; |
| 16072 } | 16073 } |
| 16073 | 16074 |
| 16074 @override | 16075 @override |
| 16075 Object visitNode(AstNode node) => node.accept(TypeResolverVisitor_this); | 16076 Object visitNode(AstNode node) => node.accept(TypeResolverVisitor_this); |
| 16076 | 16077 |
| 16077 @override | 16078 @override |
| 16078 Object visitWithClause(WithClause node) => null; | 16079 Object visitWithClause(WithClause node) => null; |
| 16079 } | 16080 } |
| OLD | NEW |