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

Side by Side Diff: pkg/front_end/lib/src/fasta/scanner/precedence.dart

Issue 2691213005: Use identical in token operators. (Closed)
Patch Set: Ensure operator names are canonicalized by deserializer. Created 3 years, 10 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 fasta.scanner.precedence; 5 library fasta.scanner.precedence;
6 6
7 import 'token_constants.dart'; 7 import 'token_constants.dart';
8 8
9 class PrecedenceInfo { 9 class PrecedenceInfo {
10 final String value; 10 final String value;
11 final int precedence; 11 final int precedence;
12 final int kind; 12 final int kind;
13 13
14 const PrecedenceInfo(this.value, this.precedence, this.kind); 14 const PrecedenceInfo(this.value, this.precedence, this.kind);
15 15
16 toString() => 'PrecedenceInfo($value, $precedence, $kind)'; 16 toString() => 'PrecedenceInfo($value, $precedence, $kind)';
17
18 static const List<PrecedenceInfo> all = const <PrecedenceInfo>[
19 BACKPING_INFO,
20 BACKSLASH_INFO,
21 PERIOD_PERIOD_PERIOD_INFO,
22 PERIOD_PERIOD_INFO,
23 BANG_INFO,
24 COLON_INFO,
25 INDEX_INFO,
26 MINUS_MINUS_INFO,
27 PLUS_PLUS_INFO,
28 TILDE_INFO,
29 FUNCTION_INFO,
30 HASH_INFO,
31 INDEX_EQ_INFO,
32 SEMICOLON_INFO,
33 COMMA_INFO,
34 AT_INFO,
35 AMPERSAND_EQ_INFO,
36 BAR_EQ_INFO,
37 CARET_EQ_INFO,
38 EQ_INFO,
39 GT_GT_EQ_INFO,
40 LT_LT_EQ_INFO,
41 MINUS_EQ_INFO,
42 PERCENT_EQ_INFO,
43 PLUS_EQ_INFO,
44 SLASH_EQ_INFO,
45 STAR_EQ_INFO,
46 TILDE_SLASH_EQ_INFO,
47 QUESTION_QUESTION_EQ_INFO,
48 QUESTION_INFO,
49 QUESTION_QUESTION_INFO,
50 BAR_BAR_INFO,
51 AMPERSAND_AMPERSAND_INFO,
52 BAR_INFO,
53 CARET_INFO,
54 AMPERSAND_INFO,
55 BANG_EQ_EQ_INFO,
56 BANG_EQ_INFO,
57 EQ_EQ_EQ_INFO,
58 EQ_EQ_INFO,
59 GT_EQ_INFO,
60 GT_INFO,
61 IS_INFO,
62 AS_INFO,
63 LT_EQ_INFO,
64 LT_INFO,
65 GT_GT_INFO,
66 LT_LT_INFO,
67 MINUS_INFO,
68 PLUS_INFO,
69 PERCENT_INFO,
70 SLASH_INFO,
71 STAR_INFO,
72 TILDE_SLASH_INFO,
73 PERIOD_INFO,
74 QUESTION_PERIOD_INFO,
75 KEYWORD_INFO,
76 EOF_INFO,
77 IDENTIFIER_INFO,
78 BAD_INPUT_INFO,
79 OPEN_PAREN_INFO,
80 CLOSE_PAREN_INFO,
81 OPEN_CURLY_BRACKET_INFO,
82 CLOSE_CURLY_BRACKET_INFO,
83 INT_INFO,
84 STRING_INFO,
85 OPEN_SQUARE_BRACKET_INFO,
86 CLOSE_SQUARE_BRACKET_INFO,
87 DOUBLE_INFO,
88 STRING_INTERPOLATION_INFO,
89 STRING_INTERPOLATION_IDENTIFIER_INFO,
90 HEXADECIMAL_INFO,
91 COMMENT_INFO,
92 ];
17 } 93 }
18 94
19 // TODO(ahe): The following are not tokens in Dart. 95 // TODO(ahe): The following are not tokens in Dart.
20 const PrecedenceInfo BACKPING_INFO = 96 const PrecedenceInfo BACKPING_INFO =
21 const PrecedenceInfo('`', 0, BACKPING_TOKEN); 97 const PrecedenceInfo('`', 0, BACKPING_TOKEN);
22 const PrecedenceInfo BACKSLASH_INFO = 98 const PrecedenceInfo BACKSLASH_INFO =
23 const PrecedenceInfo('\\', 0, BACKSLASH_TOKEN); 99 const PrecedenceInfo('\\', 0, BACKSLASH_TOKEN);
24 const PrecedenceInfo PERIOD_PERIOD_PERIOD_INFO = 100 const PrecedenceInfo PERIOD_PERIOD_PERIOD_INFO =
25 const PrecedenceInfo('...', 0, PERIOD_PERIOD_PERIOD_TOKEN); 101 const PrecedenceInfo('...', 0, PERIOD_PERIOD_PERIOD_TOKEN);
26 102
(...skipping 162 matching lines...) Expand 10 before | Expand all | Expand 10 after
189 const PrecedenceInfo('\${', 0, STRING_INTERPOLATION_TOKEN); 265 const PrecedenceInfo('\${', 0, STRING_INTERPOLATION_TOKEN);
190 266
191 const PrecedenceInfo STRING_INTERPOLATION_IDENTIFIER_INFO = 267 const PrecedenceInfo STRING_INTERPOLATION_IDENTIFIER_INFO =
192 const PrecedenceInfo('\$', 0, STRING_INTERPOLATION_IDENTIFIER_TOKEN); 268 const PrecedenceInfo('\$', 0, STRING_INTERPOLATION_IDENTIFIER_TOKEN);
193 269
194 const PrecedenceInfo HEXADECIMAL_INFO = 270 const PrecedenceInfo HEXADECIMAL_INFO =
195 const PrecedenceInfo('hexadecimal', 0, HEXADECIMAL_TOKEN); 271 const PrecedenceInfo('hexadecimal', 0, HEXADECIMAL_TOKEN);
196 272
197 const PrecedenceInfo COMMENT_INFO = 273 const PrecedenceInfo COMMENT_INFO =
198 const PrecedenceInfo('comment', 0, COMMENT_TOKEN); 274 const PrecedenceInfo('comment', 0, COMMENT_TOKEN);
OLDNEW
« no previous file with comments | « pkg/compiler/lib/src/serialization/serialization.dart ('k') | pkg/front_end/lib/src/fasta/scanner/token.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698