withExtension method

UnixPath withExtension(
  1. String extension
)

Creates an Path like this but with the given extension.

Implementation

UnixPath withExtension(String extension) {
  final stem = fileStemOpt().unwrapOr("");
  final parentN = parent();
  if (parentN == null) {
    if (stem.isEmpty) {
      return UnixPath(extension);
    } else {
      if (extension.isEmpty) {
        return UnixPath(stem);
      }
      return UnixPath("$stem.$extension");
    }
  }
  if (stem.isEmpty) {
    return parentN.join(UnixPath(extension));
  }
  if (extension.isEmpty) {
    return parentN.join(UnixPath(stem));
  }
  return parentN.join(UnixPath("$stem.$extension"));
}