Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(193)

Side by Side Diff: pkg/analyzer/lib/src/generated/resolver.dart

Issue 1504483002: Allow explicitly passing generic function type args (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: format Created 5 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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
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
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 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698