File: fpath_ext.ml

package info (click to toggle)
ocamlformat 0.27.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 12,068 kB
  • sloc: ml: 61,288; pascal: 4,739; lisp: 229; sh: 217; makefile: 121
file content (16 lines) | stat: -rw-r--r-- 445 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
include Fpath

let cwd () = Stdlib.Sys.getcwd () |> v

let exists p = to_string p |> Stdlib.Sys.file_exists

let to_absolute file = if is_rel file then append (cwd ()) file else file

let to_string ?(relativize = false) p =
  if relativize then
    Base.Option.value_map
      (Fpath.relativize ~root:(cwd ()) p)
      ~default:(to_string p) ~f:to_string
  else to_string p

let pp fmt p = Format.fprintf fmt "%s" (to_string ~relativize:true p)