Module Topkg.Fpath

File system paths.

Note. Only use "/" as a directory separator, even on Windows platforms.

File system paths

type t = fpath

The type for file system paths.

val append : t -> t -> t

append p q appends q to p as follows:

  • If q is absolute then q is returned
  • Otherwise appends q's segments to p using a "/" if needed.
val (//) : t -> t -> t

p // q is append p q.

val is_dir_path : t -> bool

is_dir_path p is true iff p represents a directory. This means that p is ., .. or ends with /, /.. or /..

val is_file_path : t -> bool

is_file_path p is not (is_dir_path true).

val basename : t -> string

basename p is p's basename, the last non empty segment of p.

val dirname : t -> string

dirname p is p's dirname, p without its last non empty segment.

File extensions

val get_ext : t -> string

get_ext p is p's filename extension (including the '.') or the empty string if there is no extension

val has_ext : string -> t -> bool

has_ext e p is true iff e is a suffix of p.

val rem_ext : t -> t

rem_ext p is p without its filename extension.