pathlib 0.3.0

Object oriented path manipulation.

To use this package, put the following dependency into your project's dependencies section:



Inspired by the python library pathlib.

Differences to the python library API

+ Addition | - Removal | $ Change

  • - There are no PureXPath base classes.
  • - No PureXPath base classes.
  • - No inheritance tree.
  • $ Most operations/functions are D module functions but can be called as if they were members (thanks to D's unified function call syntax UFCS).
  • $ as_posix() => posixData().
  • + asPosix() to convert between different paths.
  • + asNormalized() to normalize a path, without resolving it. This works for all types of paths, regardless of the current system.
  • as_posix() => posixData(). Additionally, there is also windowsData().
  • $ Instead of overloading operator /, the concatenation operator ~ is overloaded instead: Path("hello") ~ "world" ~ "goodBye // WindowsPath("hello\\world\\goodBye") or PosixPath("hello/world/goodBye")
  • $ Instead of suffix() and suffixes() there are extension(), extensions(), and fullExtension().
  • $ While pythons pathlib usually uses '/' as the path segment separator, we try to maintain the separator for the current type of path as much as possible.
  • $ Instead of providing rglob(), glob() accepts an optional SpanMode parameter. The type SpanMode is a public import from std.file.
  • + copyFileTo() To copy one file to some destination and copyTo() to copy either files or directories (not unlike cp -r).


Sub packages:pathlib:lib, pathlib:lib64

Dependencies: none

0.3.0 2015-Sep-15
0.2.0 2015-Jun-15
0.1.2 2015-May-22
0.1.1 2015-May-22
0.1.0 2015-May-22
Show all 6 versions
  • 0 downloads today

  • 0 downloads this week

  • 0 downloads this month

  • 215 downloads total