OLD | NEW |
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 part of scanner; | 5 library dart2js.parser; |
| 6 |
| 7 import '../diagnostics/messages.dart' show |
| 8 MessageKind; |
| 9 import '../util/characters.dart' show |
| 10 $CLOSE_CURLY_BRACKET; |
| 11 import '../util/util.dart' show |
| 12 Link; |
| 13 |
| 14 import 'keyword.dart' show |
| 15 Keyword; |
| 16 import 'listener.dart' show |
| 17 Listener; |
| 18 import 'token.dart' show |
| 19 AS_INFO, |
| 20 ASSIGNMENT_PRECEDENCE, |
| 21 BAD_INPUT_TOKEN, |
| 22 BeginGroupToken, |
| 23 CASCADE_PRECEDENCE, |
| 24 COMMA_TOKEN, |
| 25 DOUBLE_TOKEN, |
| 26 EOF_TOKEN, |
| 27 EQ_TOKEN, |
| 28 EQUALITY_PRECEDENCE, |
| 29 FUNCTION_TOKEN, |
| 30 GT_INFO, |
| 31 GT_GT_INFO, |
| 32 HASH_TOKEN, |
| 33 HEXADECIMAL_TOKEN, |
| 34 IDENTIFIER_TOKEN, |
| 35 INT_TOKEN, |
| 36 IS_INFO, |
| 37 isUserDefinableOperator, |
| 38 KEYWORD_TOKEN, |
| 39 KeywordToken, |
| 40 LT_TOKEN, |
| 41 MINUS_MINUS_INFO, |
| 42 OPEN_CURLY_BRACKET_TOKEN, |
| 43 OPEN_PAREN_INFO, |
| 44 OPEN_PAREN_TOKEN, |
| 45 OPEN_SQUARE_BRACKET_INFO, |
| 46 OPEN_SQUARE_BRACKET_TOKEN, |
| 47 PERIOD_INFO, |
| 48 PERIOD_TOKEN, |
| 49 PLUS_PLUS_INFO, |
| 50 PrecedenceInfo, |
| 51 POSTFIX_PRECEDENCE, |
| 52 QUESTION_INFO, |
| 53 QUESTION_PERIOD_INFO, |
| 54 RELATIONAL_PRECEDENCE, |
| 55 SEMICOLON_TOKEN, |
| 56 STRING_INTERPOLATION_IDENTIFIER_TOKEN, |
| 57 STRING_INTERPOLATION_TOKEN, |
| 58 STRING_TOKEN, |
| 59 SymbolToken, |
| 60 Token; |
6 | 61 |
7 class FormalParameterType { | 62 class FormalParameterType { |
8 final String type; | 63 final String type; |
9 const FormalParameterType(this.type); | 64 const FormalParameterType(this.type); |
10 bool get isRequired => this == REQUIRED; | 65 bool get isRequired => this == REQUIRED; |
11 bool get isPositional => this == POSITIONAL; | 66 bool get isPositional => this == POSITIONAL; |
12 bool get isNamed => this == NAMED; | 67 bool get isNamed => this == NAMED; |
13 static final REQUIRED = const FormalParameterType('required'); | 68 static final REQUIRED = const FormalParameterType('required'); |
14 static final POSITIONAL = const FormalParameterType('positional'); | 69 static final POSITIONAL = const FormalParameterType('positional'); |
15 static final NAMED = const FormalParameterType('named'); | 70 static final NAMED = const FormalParameterType('named'); |
(...skipping 2641 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2657 } | 2712 } |
2658 listener.handleContinueStatement(hasTarget, continueKeyword, token); | 2713 listener.handleContinueStatement(hasTarget, continueKeyword, token); |
2659 return expectSemicolon(token); | 2714 return expectSemicolon(token); |
2660 } | 2715 } |
2661 | 2716 |
2662 Token parseEmptyStatement(Token token) { | 2717 Token parseEmptyStatement(Token token) { |
2663 listener.handleEmptyStatement(token); | 2718 listener.handleEmptyStatement(token); |
2664 return expectSemicolon(token); | 2719 return expectSemicolon(token); |
2665 } | 2720 } |
2666 } | 2721 } |
OLD | NEW |