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

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

Issue 2567133002: Add support for the new function-type syntax. (Closed)
Patch Set: Fixes after rebase. Created 3 years, 9 months 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) 2015, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2015, 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.partial_elements; 5 library dart2js.parser.partial_elements;
6 6
7 import '../common.dart'; 7 import '../common.dart';
8 import '../common/resolution.dart' show ParsingContext, Resolution; 8 import '../common/resolution.dart' show ParsingContext, Resolution;
9 import '../elements/resolution_types.dart' show ResolutionDynamicType; 9 import '../elements/resolution_types.dart' show ResolutionDynamicType;
10 import '../elements/elements.dart' 10 import '../elements/elements.dart'
(...skipping 24 matching lines...) Expand all
35 import 'package:front_end/src/fasta/scanner.dart' as Tokens show EOF_TOKEN; 35 import 'package:front_end/src/fasta/scanner.dart' as Tokens show EOF_TOKEN;
36 import '../tree/tree.dart'; 36 import '../tree/tree.dart';
37 import 'package:front_end/src/fasta/parser.dart' 37 import 'package:front_end/src/fasta/parser.dart'
38 show ClassMemberParser, Listener, Parser, ParserError; 38 show ClassMemberParser, Listener, Parser, ParserError;
39 import 'member_listener.dart' show MemberListener; 39 import 'member_listener.dart' show MemberListener;
40 import 'node_listener.dart' show NodeListener; 40 import 'node_listener.dart' show NodeListener;
41 41
42 class ClassElementParser extends ClassMemberParser { 42 class ClassElementParser extends ClassMemberParser {
43 ClassElementParser(Listener listener) : super(listener); 43 ClassElementParser(Listener listener) : super(listener);
44 44
45 Token parseFormalParameters(Token token) => skipFormalParameters(token); 45 Token parseFormalParameters(Token token, {bool inFunctionType: false}) {
46 return skipFormalParameters(token);
47 }
46 } 48 }
47 49
48 abstract class PartialElement implements DeclarationSite { 50 abstract class PartialElement implements DeclarationSite {
49 Token beginToken; 51 Token beginToken;
50 Token endToken; 52 Token endToken;
51 53
52 bool hasParseError = false; 54 bool hasParseError = false;
53 55
54 bool get isMalformed => hasParseError; 56 bool get isMalformed => hasParseError;
55 57
(...skipping 394 matching lines...) Expand 10 before | Expand all | Expand 10 after
450 } on ParserError catch (e) { 452 } on ParserError catch (e) {
451 partial.hasParseError = true; 453 partial.hasParseError = true;
452 return new ErrorNode(element.position, e.kind, e.arguments); 454 return new ErrorNode(element.position, e.kind, e.arguments);
453 } 455 }
454 Node node = listener.popNode(); 456 Node node = listener.popNode();
455 assert(listener.nodes.isEmpty); 457 assert(listener.nodes.isEmpty);
456 return node; 458 return node;
457 }); 459 });
458 }); 460 });
459 } 461 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698