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

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

Issue 2895803002: add fasta.scanner support for lazy assignment operators (Closed)
Patch Set: address comments Created 3 years, 7 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) 2011, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2011, 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.array_based_scanner; 5 library fasta.scanner.array_based_scanner;
6 6
7 import 'error_token.dart' show ErrorToken, UnmatchedToken; 7 import 'error_token.dart' show ErrorToken, UnmatchedToken;
8 8
9 import '../../scanner/token.dart' 9 import '../../scanner/token.dart'
10 show Keyword, KeywordTokenWithComment, Token, TokenType; 10 show Keyword, KeywordTokenWithComment, Token, TokenType;
(...skipping 11 matching lines...) Expand all
22 import 'characters.dart' show $LF, $STX; 22 import 'characters.dart' show $LF, $STX;
23 23
24 import 'abstract_scanner.dart' show AbstractScanner, closeBraceInfoFor; 24 import 'abstract_scanner.dart' show AbstractScanner, closeBraceInfoFor;
25 25
26 import '../util/link.dart' show Link; 26 import '../util/link.dart' show Link;
27 27
28 abstract class ArrayBasedScanner extends AbstractScanner { 28 abstract class ArrayBasedScanner extends AbstractScanner {
29 bool hasErrors = false; 29 bool hasErrors = false;
30 30
31 ArrayBasedScanner(bool includeComments, bool scanGenericMethodComments, 31 ArrayBasedScanner(bool includeComments, bool scanGenericMethodComments,
32 {int numberOfBytesHint}) 32 bool scanLazyAssignmentOperators, {int numberOfBytesHint})
33 : super(includeComments, scanGenericMethodComments, 33 : super(includeComments, scanGenericMethodComments,
34 scanLazyAssignmentOperators,
34 numberOfBytesHint: numberOfBytesHint); 35 numberOfBytesHint: numberOfBytesHint);
35 36
36 /** 37 /**
37 * The stack of open groups, e.g [: { ... ( .. :] 38 * The stack of open groups, e.g [: { ... ( .. :]
38 * Each BeginGroupToken has a pointer to the token where the group 39 * Each BeginGroupToken has a pointer to the token where the group
39 * ends. This field is set when scanning the end group token. 40 * ends. This field is set when scanning the end group token.
40 */ 41 */
41 Link<BeginGroupToken> groupingStack = const Link<BeginGroupToken>(); 42 Link<BeginGroupToken> groupingStack = const Link<BeginGroupToken>();
42 43
43 /** 44 /**
(...skipping 250 matching lines...) Expand 10 before | Expand all | Expand 10 after
294 // | 295 // |
295 // next 296 // next
296 // v 297 // v
297 // EOF 298 // EOF
298 TokenType type = closeBraceInfoFor(begin); 299 TokenType type = closeBraceInfoFor(begin);
299 appendToken(new SyntheticSymbolToken(type, tokenStart, comments)); 300 appendToken(new SyntheticSymbolToken(type, tokenStart, comments));
300 begin.endGroup = tail; 301 begin.endGroup = tail;
301 appendErrorToken(new UnmatchedToken(begin)); 302 appendErrorToken(new UnmatchedToken(begin));
302 } 303 }
303 } 304 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698