| OLD | NEW |
| 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 package_config.packages_file; | 5 library package_config.packages_file; |
| 6 | 6 |
| 7 import "package:charcode/ascii.dart"; | 7 import "package:charcode/ascii.dart"; |
| 8 |
| 8 import "src/util.dart" show isValidPackageName; | 9 import "src/util.dart" show isValidPackageName; |
| 9 | 10 |
| 10 /// Parses a `.packages` file into a map from package name to base URI. | 11 /// Parses a `.packages` file into a map from package name to base URI. |
| 11 /// | 12 /// |
| 12 /// The [source] is the byte content of a `.packages` file, assumed to be | 13 /// The [source] is the byte content of a `.packages` file, assumed to be |
| 13 /// UTF-8 encoded. In practice, all significant parts of the file must be ASCII, | 14 /// UTF-8 encoded. In practice, all significant parts of the file must be ASCII, |
| 14 /// so Latin-1 or Windows-1252 encoding will also work fine. | 15 /// so Latin-1 or Windows-1252 encoding will also work fine. |
| 15 /// | 16 /// |
| 16 /// If the file content is available as a string, its [String.codeUnits] can | 17 /// If the file content is available as a string, its [String.codeUnits] can |
| 17 /// be used as the `source` argument of this function. | 18 /// be used as the `source` argument of this function. |
| (...skipping 163 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 181 } else if (index > 0) { | 182 } else if (index > 0) { |
| 182 return new Uri( | 183 return new Uri( |
| 183 path: '../' * (base.length - index) + target.skip(index).join('/')); | 184 path: '../' * (base.length - index) + target.skip(index).join('/')); |
| 184 } else { | 185 } else { |
| 185 return uri; | 186 return uri; |
| 186 } | 187 } |
| 187 } | 188 } |
| 188 | 189 |
| 189 // TODO: inline to uri.normalizePath() when we move to 1.11 | 190 // TODO: inline to uri.normalizePath() when we move to 1.11 |
| 190 Uri _normalizePath(Uri uri) => new Uri().resolveUri(uri); | 191 Uri _normalizePath(Uri uri) => new Uri().resolveUri(uri); |
| OLD | NEW |