Paths may be arbitrary sequences of bytes, so we cannot guarantee that they are utf8 or even convertible to utf8 and back. However, we do want to be able to convert the path to utf8, and vice versa.
LexicalPath
currently deals with manipulating paths and getting their parts. Do we roll this intoPath
?Core::Directory
deals with iteration, stat and open. Do we roll this intoPath
?Core::DeprecatedFile
has methods for other filesystem checks and operations. Do we roll this intoPath
?Core::StandardPaths
provides getters for the home directory path, and friends. Do we roll this intoPath
?
Rust has a Path
class for a path, allowing you to access its components and query if it's a directory etc; and PathBuf
class as a kind of StringBuilder thing?