| 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 glob.single_component; | |
| 6 | |
| 7 import 'package:path/path.dart' as p; | 5 import 'package:path/path.dart' as p; |
| 8 import 'package:string_scanner/string_scanner.dart'; | 6 import 'package:string_scanner/string_scanner.dart'; |
| 9 | 7 |
| 10 import 'ast.dart'; | 8 import 'ast.dart'; |
| 11 import 'utils.dart'; | 9 import 'utils.dart'; |
| 12 | 10 |
| 13 const _HYPHEN = 0x2D; | 11 const _HYPHEN = 0x2D; |
| 14 const _SLASH = 0x2F; | 12 const _SLASH = 0x2F; |
| 15 | 13 |
| 16 /// A parser for globs. | 14 /// A parser for globs. |
| (...skipping 147 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 164 } | 162 } |
| 165 | 163 |
| 166 for (var char in const [']', '(', ')']) { | 164 for (var char in const [']', '(', ')']) { |
| 167 if (_scanner.matches(char)) _scanner.error('unexpected "$char"'); | 165 if (_scanner.matches(char)) _scanner.error('unexpected "$char"'); |
| 168 } | 166 } |
| 169 if (!inOptions && _scanner.matches('}')) _scanner.error('unexpected "}"'); | 167 if (!inOptions && _scanner.matches('}')) _scanner.error('unexpected "}"'); |
| 170 | 168 |
| 171 return new LiteralNode(buffer.toString(), _context); | 169 return new LiteralNode(buffer.toString(), _context); |
| 172 } | 170 } |
| 173 } | 171 } |
| OLD | NEW |