OLD | NEW |
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, 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 part of utils; | 5 library path; |
| 6 |
| 7 import 'dart:io'; |
| 8 import 'dart:math'; |
6 | 9 |
7 class Path { | 10 class Path { |
8 final String _path; | 11 final String _path; |
9 final bool isWindowsShare; | 12 final bool isWindowsShare; |
10 | 13 |
11 Path(String source) | 14 Path(String source) |
12 : _path = _clean(source), isWindowsShare = _isWindowsShare(source); | 15 : _path = _clean(source), isWindowsShare = _isWindowsShare(source); |
13 | 16 |
14 Path.raw(String source) : _path = source, isWindowsShare = false; | 17 Path.raw(String source) : _path = source, isWindowsShare = false; |
15 | 18 |
(...skipping 288 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
304 while (pos > 0 && _path[pos - 1] == '/') --pos; | 307 while (pos > 0 && _path[pos - 1] == '/') --pos; |
305 var dirPath = (pos > 0) ? _path.substring(0, pos) : '/'; | 308 var dirPath = (pos > 0) ? _path.substring(0, pos) : '/'; |
306 return new Path._internal(dirPath, isWindowsShare); | 309 return new Path._internal(dirPath, isWindowsShare); |
307 } | 310 } |
308 | 311 |
309 String get filename { | 312 String get filename { |
310 int pos = _path.lastIndexOf('/'); | 313 int pos = _path.lastIndexOf('/'); |
311 return _path.substring(pos + 1); | 314 return _path.substring(pos + 1); |
312 } | 315 } |
313 } | 316 } |
OLD | NEW |