Commit graph

10 commits

Author SHA1 Message Date
Kevin Ballard
73d3d00ec4 path2: Replace the path module outright
Remove the old path.
Rename path2 to path.
Update all clients for the new path.

Also make some miscellaneous changes to the Path APIs to help the
adoption process.
2013-10-15 21:56:54 -07:00
Kevin Ballard
6741241f40 path2: Add format helpers .display() and .filename_display()
These methods return an object that can be formatted using {} to print
display strings.

Path itself does not implement fmt::Default to avoid accidental usage of
display strings in incorrect places (e.g. process arguments).
2013-10-15 20:10:11 -07:00
Kevin Ballard
3a2735cb11 path2: Convert typedefs to pub uses
Turns out you can't call static methods on typedefs. Use `pub use`
instead to work around this issue.
2013-10-15 20:10:11 -07:00
Kevin Ballard
179f50f7c8 path2: Rename pop_opt() to pop() and add each_parent() 2013-10-15 20:10:11 -07:00
Kevin Ballard
56b96a3bfc path2: Implement stat support 2013-10-15 20:10:11 -07:00
Kevin Ballard
33adf6dd6e path2: Implement .as_display_str() and .to_display_str()
These functions are for working with a string representation of the path
even if it's not UTF-8 encoded. They replace invalid UTF-8 sequences
with the replacement char.
2013-10-15 20:10:11 -07:00
Kevin Ballard
1dfe5088d8 path2: Add opt variants for from_vec/from_str 2013-10-15 20:10:11 -07:00
Kevin Ballard
f25835c221 path2: Implement WindowsPath 2013-10-15 20:10:11 -07:00
Kevin Ballard
3d80a2f1f1 path2: Update for changes from master 2013-10-15 20:10:11 -07:00
Kevin Ballard
6d29142219 path2: Extract posix/windows into their own files
Move PosixPath into posix::Path.
2013-10-15 20:10:11 -07:00