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

Side by Side Diff: pkg/front_end/lib/src/fasta/source/outline_builder.dart

Issue 2978063002: Move parser helper classes to own files and clean them up. (Closed)
Patch Set: Don't use problems.dart in parser. Created 3 years, 5 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) 2016, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2016, 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 fasta.outline_builder; 5 library fasta.outline_builder;
6 6
7 import 'package:kernel/ast.dart' show ProcedureKind; 7 import 'package:kernel/ast.dart' show ProcedureKind;
8 8
9 import '../../scanner/token.dart' show Token; 9 import '../../scanner/token.dart' show Token;
10 10
(...skipping 13 matching lines...) Expand all
24 24
25 import '../modifier.dart' show abstractMask, externalMask, Modifier; 25 import '../modifier.dart' show abstractMask, externalMask, Modifier;
26 26
27 import '../operator.dart' 27 import '../operator.dart'
28 show 28 show
29 Operator, 29 Operator,
30 operatorFromString, 30 operatorFromString,
31 operatorToString, 31 operatorToString,
32 operatorRequiredArgumentCount; 32 operatorRequiredArgumentCount;
33 33
34 import '../parser/identifier_context.dart' show IdentifierContext;
35
36 import '../parser/native_support.dart' 34 import '../parser/native_support.dart'
37 show extractNativeMethodName, removeNativeClause, skipNativeClause; 35 show extractNativeMethodName, removeNativeClause, skipNativeClause;
38 36
39 import '../parser/parser.dart' show FormalParameterType, MemberKind, optional; 37 import '../parser.dart'
38 show FormalParameterKind, IdentifierContext, MemberKind, optional;
40 39
41 import '../problems.dart' show unhandled, unimplemented; 40 import '../problems.dart' show unhandled, unimplemented;
42 41
43 import '../quote.dart' show unescapeString; 42 import '../quote.dart' show unescapeString;
44 43
45 import '../util/link.dart' show Link; 44 import '../util/link.dart' show Link;
46 45
47 import 'source_library_builder.dart' show SourceLibraryBuilder; 46 import 'source_library_builder.dart' show SourceLibraryBuilder;
48 47
49 import 'unhandled_listener.dart' show NullValue, Unhandled, UnhandledListener; 48 import 'unhandled_listener.dart' show NullValue, Unhandled, UnhandledListener;
(...skipping 438 matching lines...) Expand 10 before | Expand all | Expand 10 after
488 } 487 }
489 488
490 @override 489 @override
491 void handleVoidKeyword(Token token) { 490 void handleVoidKeyword(Token token) {
492 debugEvent("VoidKeyword"); 491 debugEvent("VoidKeyword");
493 push(library.addVoidType(token.charOffset)); 492 push(library.addVoidType(token.charOffset));
494 } 493 }
495 494
496 @override 495 @override
497 void endFormalParameter(Token thisKeyword, Token nameToken, 496 void endFormalParameter(Token thisKeyword, Token nameToken,
498 FormalParameterType kind, MemberKind memberKind) { 497 FormalParameterKind kind, MemberKind memberKind) {
499 debugEvent("FormalParameter"); 498 debugEvent("FormalParameter");
500 int charOffset = pop(); 499 int charOffset = pop();
501 String name = pop(); 500 String name = pop();
502 TypeBuilder type = pop(); 501 TypeBuilder type = pop();
503 int modifiers = Modifier.validate(pop()); 502 int modifiers = Modifier.validate(pop());
504 List<MetadataBuilder> metadata = pop(); 503 List<MetadataBuilder> metadata = pop();
505 push(library.addFormalParameter( 504 push(library.addFormalParameter(
506 metadata, modifiers, type, name, thisKeyword != null, charOffset)); 505 metadata, modifiers, type, name, thisKeyword != null, charOffset));
507 } 506 }
508 507
509 @override 508 @override
510 void handleValuedFormalParameter(Token equals, Token token) { 509 void handleValuedFormalParameter(Token equals, Token token) {
511 debugEvent("ValuedFormalParameter"); 510 debugEvent("ValuedFormalParameter");
512 // Ignored for now. 511 // Ignored for now.
513 } 512 }
514 513
515 @override 514 @override
516 void handleFormalParameterWithoutValue(Token token) { 515 void handleFormalParameterWithoutValue(Token token) {
517 debugEvent("FormalParameterWithoutValue"); 516 debugEvent("FormalParameterWithoutValue");
518 // Ignored for now. 517 // Ignored for now.
519 } 518 }
520 519
521 @override 520 @override
522 void endOptionalFormalParameters( 521 void endOptionalFormalParameters(
523 int count, Token beginToken, Token endToken) { 522 int count, Token beginToken, Token endToken) {
524 debugEvent("OptionalFormalParameters"); 523 debugEvent("OptionalFormalParameters");
525 FormalParameterType kind = optional("{", beginToken) 524 FormalParameterKind kind = optional("{", beginToken)
526 ? FormalParameterType.NAMED 525 ? FormalParameterKind.optionalNamed
527 : FormalParameterType.POSITIONAL; 526 : FormalParameterKind.optionalPositional;
528 // When recovering from an empty list of optional arguments, count may be 527 // When recovering from an empty list of optional arguments, count may be
529 // 0. It might be simpler if the parser didn't call this method in that 528 // 0. It might be simpler if the parser didn't call this method in that
530 // case, however, then [beginOptionalFormalParameters] wouldn't always be 529 // case, however, then [beginOptionalFormalParameters] wouldn't always be
531 // matched by this method. 530 // matched by this method.
532 List parameters = popList(count) ?? []; 531 List parameters = popList(count) ?? [];
533 for (FormalParameterBuilder parameter in parameters) { 532 for (FormalParameterBuilder parameter in parameters) {
534 parameter.kind = kind; 533 parameter.kind = kind;
535 } 534 }
536 push(parameters); 535 push(parameters);
537 } 536 }
(...skipping 355 matching lines...) Expand 10 before | Expand all | Expand 10 after
893 Link<Token> handleMemberName(Link<Token> identifiers) { 892 Link<Token> handleMemberName(Link<Token> identifiers) {
894 if (!enableNative || identifiers.isEmpty) return identifiers; 893 if (!enableNative || identifiers.isEmpty) return identifiers;
895 return removeNativeClause(identifiers, stringExpectedAfterNative); 894 return removeNativeClause(identifiers, stringExpectedAfterNative);
896 } 895 }
897 896
898 @override 897 @override
899 void debugEvent(String name) { 898 void debugEvent(String name) {
900 // printEvent(name); 899 // printEvent(name);
901 } 900 }
902 } 901 }
OLDNEW
« no previous file with comments | « pkg/front_end/lib/src/fasta/source/diet_parser.dart ('k') | pkg/front_end/lib/src/incremental/unlinked_unit.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698