blob: 387f96634676ee4d19d416485e8ee2b163df10e1 [file] [log] [blame] [edit]
// Copyright (c) 2023, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
import 'dart:io';
/// Provides utility extensions for file system uris.
extension UriExtension on Uri {
/// Get the file s system entity associated with this uri.
FileSystemEntity get fileSystemEntity {
if (path.endsWith(Platform.pathSeparator) || path.endsWith('/')) {
return Directory.fromUri(this);
}
return File.fromUri(this);
}
}
/// Convert a file system path to a uri.
Uri fileSystemPathToUri(String path) {
if (path.endsWith(Platform.pathSeparator) || path.endsWith('/')) {
return Uri.directory(path);
}
return Uri.file(path);
}