Module Filepath.Normalized

module Normalized: sig .. end

The Normalized module is simply a wrapper that ensures that paths are always normalized. Used by Datatype.Filepath.


type t = private string 

The normalized (absolute) path.

val of_string : ?existence:Filepath.existence ->
?base_name:string -> string -> t

of_string s converts s into a normalized path.

val concat : ?existence:Filepath.existence ->
t -> string -> t

concat ~existence dir file returns the normalized path resulting from the concatenation of dir ^ "/" ^ file. The resulting path must respect existence.

val to_pretty_string : t -> string

to_pretty_string p returns p prettified, that is, a relative path-like string. Note that this prettified string may contain symbolic dirs and is thus is not a path. See pretty for details about usage.

val to_string_list : t list -> string list

to_string_list l returns l as a list of strings containing the absolute paths to the elements of l.

val equal : t -> t -> bool
val compare : t -> t -> int

Compares normalized paths

val compare_pretty : ?case_sensitive:bool -> t -> t -> int

Compares prettified (i.e. relative) paths, with or without case sensitivity (by default, case_sensitive = false).

val pretty : Stdlib.Format.formatter -> t -> unit

Pretty-print a path according to these rules:

val pp_abs : Stdlib.Format.formatter -> t -> unit

Pretty-prints the normalized (absolute) path.

val unknown : t
Deprecated.23.0-Vanadium use 'empty' instead

Unknown filepath, used as 'dummy' for Datatype.Filepath.

val is_unknown : t -> bool
Deprecated.23.0-Vanadium use 'is_empty' instead
val empty : t

Empty filepath, used as 'dummy' for Datatype.Filepath.

val is_empty : t -> bool
val is_special_stdout : t -> bool

is_special_stdout f returns true iff f is '-' (a single dash), which is a special notation for 'stdout'.

val is_file : t -> bool

is_file f returns true iff f points to a regular file (or a symbolic link pointing to a file). Returns false if any errors happen when stat'ing the file.

val to_base_uri : t -> string option * string

to_base_uri path returns a pair prefix, rest, according to the prettified value of path: