Set the default path depending on the current platform.
Exception that will be thrown when any path operations fail.
Copy a file to some destination. If the destination exists and is a file, it is overwritten. If it is an existing directory, the actual destination will be ($D dest ~ src.name). Behaves like std.file.copy except that dest does not have to be a file.
Copy a file or directory to a target file or directory.
The path to the current executable.
The absolute path to the current working directory with symlinks and friends resolved.
The drive of the path p. Note: Non-Windows platforms have no concept of "drives".
Whether the path exists or not. It does not matter whether it is a file or not.
The extension of the path including the leading dot.
All extensions of the path.
The full extension of the path.
Generate an input range of Paths that match the given pattern.
Whether the path is absolute.
Whether the path is an existing directory.
Whether str can be represented by ".".
Whether the path is either "" or ".".
Whether the path is an existing file.
Whether the given path p points to a symbolic link (or junction point in Windows).
Whether the given path matches the given glob-style pattern
The name of the path without any of its parents.
Remove duplicate directory separators and stand-alone dots, on a textual basis. Does not resolve ".."s in paths, since this would be wrong when dealing with symlinks. Given the symlink "/foo" pointing to "/what/ever", the path "/foo/../baz.exe" would 'physically' be "/what/baz.exe". If "/foo" was no symlink, the actual path would be "/baz.exe".
/foo/bar/baz/hurr.durr => { Path("/foo/bar/baz"), Path("/foo/bar"), Path("/foo"), Path("/") }
Create a path from p that is relative to parent.
Remove path from filesystem. Similar to unix rm. If the path is a dir, will reecursively remove all subdirs by default.
The name of the path without its extension.
Helper struct to change the directory for the current scope.