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

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

Issue 2744843003: Create a special PrecedenceInfo for use during parser recovery. (Closed)
Patch Set: 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 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;
(...skipping 211 matching lines...) Expand 10 before | Expand all | Expand 10 after
222 const PrecedenceInfo PERIOD_INFO = 222 const PrecedenceInfo PERIOD_INFO =
223 const PrecedenceInfo('.', POSTFIX_PRECEDENCE, PERIOD_TOKEN); 223 const PrecedenceInfo('.', POSTFIX_PRECEDENCE, PERIOD_TOKEN);
224 const PrecedenceInfo QUESTION_PERIOD_INFO = 224 const PrecedenceInfo QUESTION_PERIOD_INFO =
225 const PrecedenceInfo('?.', POSTFIX_PRECEDENCE, QUESTION_PERIOD_TOKEN); 225 const PrecedenceInfo('?.', POSTFIX_PRECEDENCE, QUESTION_PERIOD_TOKEN);
226 226
227 const PrecedenceInfo KEYWORD_INFO = 227 const PrecedenceInfo KEYWORD_INFO =
228 const PrecedenceInfo('keyword', 0, KEYWORD_TOKEN); 228 const PrecedenceInfo('keyword', 0, KEYWORD_TOKEN);
229 229
230 const PrecedenceInfo EOF_INFO = const PrecedenceInfo('EOF', 0, EOF_TOKEN); 230 const PrecedenceInfo EOF_INFO = const PrecedenceInfo('EOF', 0, EOF_TOKEN);
231 231
232 /// Precedence info used by synthetic tokens that are created during parser
233 /// recovery (non-analyzer use case).
234 const PrecedenceInfo RECOVERY_INFO =
235 const PrecedenceInfo('recovery', 0, RECOVERY_TOKEN);
236
232 const PrecedenceInfo IDENTIFIER_INFO = 237 const PrecedenceInfo IDENTIFIER_INFO =
233 const PrecedenceInfo('identifier', 0, IDENTIFIER_TOKEN); 238 const PrecedenceInfo('identifier', 0, IDENTIFIER_TOKEN);
234 239
235 const PrecedenceInfo SCRIPT_INFO = 240 const PrecedenceInfo SCRIPT_INFO =
236 const PrecedenceInfo('script', 0, SCRIPT_TOKEN); 241 const PrecedenceInfo('script', 0, SCRIPT_TOKEN);
237 242
238 const PrecedenceInfo BAD_INPUT_INFO = 243 const PrecedenceInfo BAD_INPUT_INFO =
239 const PrecedenceInfo('malformed input', 0, BAD_INPUT_TOKEN); 244 const PrecedenceInfo('malformed input', 0, BAD_INPUT_TOKEN);
240 245
241 const PrecedenceInfo OPEN_PAREN_INFO = 246 const PrecedenceInfo OPEN_PAREN_INFO =
(...skipping 26 matching lines...) Expand all
268 const PrecedenceInfo('\${', 0, STRING_INTERPOLATION_TOKEN); 273 const PrecedenceInfo('\${', 0, STRING_INTERPOLATION_TOKEN);
269 274
270 const PrecedenceInfo STRING_INTERPOLATION_IDENTIFIER_INFO = 275 const PrecedenceInfo STRING_INTERPOLATION_IDENTIFIER_INFO =
271 const PrecedenceInfo('\$', 0, STRING_INTERPOLATION_IDENTIFIER_TOKEN); 276 const PrecedenceInfo('\$', 0, STRING_INTERPOLATION_IDENTIFIER_TOKEN);
272 277
273 const PrecedenceInfo HEXADECIMAL_INFO = 278 const PrecedenceInfo HEXADECIMAL_INFO =
274 const PrecedenceInfo('hexadecimal', 0, HEXADECIMAL_TOKEN); 279 const PrecedenceInfo('hexadecimal', 0, HEXADECIMAL_TOKEN);
275 280
276 const PrecedenceInfo COMMENT_INFO = 281 const PrecedenceInfo COMMENT_INFO =
277 const PrecedenceInfo('comment', 0, COMMENT_TOKEN); 282 const PrecedenceInfo('comment', 0, COMMENT_TOKEN);
OLDNEW
« no previous file with comments | « pkg/front_end/lib/src/fasta/parser/listener.dart ('k') | pkg/front_end/lib/src/fasta/scanner/token_constants.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698