Module type
Class type

Infix operators for path construction. They are in separate module, so one can open Path.Operators to use them.

@documents Future.Path.Operators

val (/:) : t -> ustring -> t

path/:name is a path of name located in a directory path. For example:

  • PathType.root/:"var"/:"log" builds absolute path "/var/log"
  • [user]/:".ssh" can be either:

    • absolute path "/.ssh" in case user is an empty string
    • relative path otherwise

PathType.default_validator is applied to the argument. name must not contain path separator (causes Illegal_char exception).

  • raises Illegal_char

    (raised by validator on any bad character)

val (//@) : t -> t -> t

basepath//\@relpath catenates two paths.

Windows: As a special exception it is possible to pass absolute path as relpath, provided that basepath is simple absolute path (i.e. of the form [...; ""]) and relpath is not simple absolute path.

  • raises Invalid_argument

    if the second argument is an absolute path (Windows: see above).