OLD | NEW |
1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2014, 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 string_scanner.string_scanner; | |
6 | |
7 import 'package:source_span/source_span.dart'; | 5 import 'package:source_span/source_span.dart'; |
8 | 6 |
9 import 'exception.dart'; | 7 import 'exception.dart'; |
10 import 'utils.dart'; | 8 import 'utils.dart'; |
11 | 9 |
12 /// When compiled to JS, forward slashes are always escaped in [RegExp.pattern]. | 10 /// When compiled to JS, forward slashes are always escaped in [RegExp.pattern]. |
13 /// | 11 /// |
14 /// See issue 17998. | 12 /// See issue 17998. |
15 final _slashAutoEscape = new RegExp("/").pattern == "\\/"; | 13 final _slashAutoEscape = new RegExp("/").pattern == "\\/"; |
16 | 14 |
(...skipping 150 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
167 throw new StringScannerException(message, span, string); | 165 throw new StringScannerException(message, span, string); |
168 } | 166 } |
169 | 167 |
170 // TODO(nweiz): Make this handle long lines more gracefully. | 168 // TODO(nweiz): Make this handle long lines more gracefully. |
171 /// Throws a [FormatException] describing that [name] is expected at the | 169 /// Throws a [FormatException] describing that [name] is expected at the |
172 /// current position in the string. | 170 /// current position in the string. |
173 void _fail(String name) { | 171 void _fail(String name) { |
174 error("expected $name.", position: this.position, length: 0); | 172 error("expected $name.", position: this.position, length: 0); |
175 } | 173 } |
176 } | 174 } |
OLD | NEW |