| OLD | NEW |
| 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 Loading... |
| 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 Loading... |
| 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 Loading... |
| 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 } |
| OLD | NEW |