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

Side by Side Diff: pkg/compiler/lib/src/parser/parser.dart

Issue 2535373003: Resolve type arguments to generic methods. (Closed)
Patch Set: Created 4 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) 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 library dart2js.parser; 5 library dart2js.parser;
6 6
7 import '../common.dart'; 7 import '../common.dart';
8 import '../tokens/keyword.dart' show Keyword; 8 import '../tokens/keyword.dart' show Keyword;
9 import '../tokens/precedence.dart' show PrecedenceInfo; 9 import '../tokens/precedence.dart' show PrecedenceInfo;
10 import '../tokens/precedence_constants.dart' 10 import '../tokens/precedence_constants.dart'
(...skipping 1339 matching lines...) Expand 10 before | Expand all | Expand 10 after
1350 return optional('factory', token); 1350 return optional('factory', token);
1351 } 1351 }
1352 1352
1353 Token parseMember(Token token) { 1353 Token parseMember(Token token) {
1354 token = parseMetadataStar(token); 1354 token = parseMetadataStar(token);
1355 Token start = token; 1355 Token start = token;
1356 listener.beginMember(token); 1356 listener.beginMember(token);
1357 if (isFactoryDeclaration(token)) { 1357 if (isFactoryDeclaration(token)) {
1358 token = parseFactoryMethod(token); 1358 token = parseFactoryMethod(token);
1359 listener.endMember(); 1359 listener.endMember();
1360 assert (token != null); 1360 assert(token != null);
eernst 2016/11/30 10:39:01 I tend to think `assert` is a separate syntactic f
Johnni Winther 2016/11/30 11:51:03 Acknowledged.
1361 return token; 1361 return token;
1362 } 1362 }
1363 1363
1364 Link<Token> identifiers = findMemberName(token); 1364 Link<Token> identifiers = findMemberName(token);
1365 if (identifiers.isEmpty) { 1365 if (identifiers.isEmpty) {
1366 return listener.expectedDeclaration(start); 1366 return listener.expectedDeclaration(start);
1367 } 1367 }
1368 Token afterName = identifiers.head; 1368 Token afterName = identifiers.head;
1369 identifiers = identifiers.tail; 1369 identifiers = identifiers.tail;
1370 1370
(...skipping 1620 matching lines...) Expand 10 before | Expand all | Expand 10 after
2991 } 2991 }
2992 listener.handleContinueStatement(hasTarget, continueKeyword, token); 2992 listener.handleContinueStatement(hasTarget, continueKeyword, token);
2993 return expectSemicolon(token); 2993 return expectSemicolon(token);
2994 } 2994 }
2995 2995
2996 Token parseEmptyStatement(Token token) { 2996 Token parseEmptyStatement(Token token) {
2997 listener.handleEmptyStatement(token); 2997 listener.handleEmptyStatement(token);
2998 return expectSemicolon(token); 2998 return expectSemicolon(token);
2999 } 2999 }
3000 } 3000 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698