dirname static method

String dirname(
  1. String name
)

Returns name with its trailing component removed.

If name does not contains the component separators returns '.' (meaning the current directory).

Implementation

static String dirname(String name) {
  if (name.isEmpty) {
    return '.';
  }

  final segments = pathos.split(name);
  if (segments.length == 1) {
    if (pathos.isAbsolute(name)) {
      var rootPrefix = pathos.rootPrefix(name);
      if (_isWindows) {
        rootPrefix = rootPrefix.replaceAll('\\', '/');
      }

      return rootPrefix;
    } else {
      return '.';
    }
  }

  var result = pathos.dirname(name);
  if (_isWindows) {
    result = result.replaceAll('\\', '/');
  }

  return result;
}