package dune
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=317bec6de4429b5dee157e9864294e1534b722a2acfc50480bd16c804ab790ca
sha512=17450333156622d4612816f9ad5a224c741d62b247d63c1d77b5359d37517c1f9bc598dd11fa024f4e02ccf7eef474cd532eef1d9c34ed13439db6c781f9fa7a
doc/dune._stdune/Stdune/Path/index.html
Module Stdune.Path
module Local : sig ... end
In the current workspace (anything under the current project root)
module External : sig ... end
In the outside world
module Kind : sig ... end
val to_sexp : t Sexp.Encoder.t
val compare : t -> t -> Ordering.t
a directory is smaller than its descendants
val hash : t -> int
module Set : sig ... end
val of_string : ?error_loc:Stdune__.Loc0.t -> string -> t
val to_string : t -> string
val to_string_maybe_quoted : t -> string
to_string_maybe_quoted t
is maybe_quoted (to_string t)
val root : t
val is_root : t -> bool
val is_managed : t -> bool
val of_filename_relative_to_initial_cwd : string -> t
Create an external path. If the argument is relative, assume it is relative to the initial directory dune was launched in.
val to_absolute_filename : t -> string
Convert a path to an absolute filename. Must be called after the workspace root has been set. root
is the root directory of local paths
val basename : t -> string
val is_suffix : t -> suffix:string -> bool
Extract the build context from a path. For instance, representing paths as strings:
extract_build_context "_build/blah/foo/bar" = Some ("blah", "foo/bar")
Same as extract_build_context
but return the build context as a path:
extract_build_context "_build/blah/foo/bar" = Some ("_build/blah", "foo/bar")
Drop the "_build/blah" prefix if present, return t
otherwise
Transform managed paths so that they are descedant of sandbox_dir
.
val explode : t -> string list option
val explode_exn : t -> string list
val build_dir : t
The build directory
val is_in_build_dir : t -> bool
is_in_build_dir t = is_descendant t ~of:build_dir
val is_in_source_tree : t -> bool
is_in_build_dir t = is_managed t && not (is_in_build_dir t)
val is_alias_stamp_file : t -> bool
val is_strict_descendant_of_build_dir : t -> bool
is_strict_descendant_of_build_dir t = is_in_build_dir t && t <> build_dir
val exists : t -> bool
val readdir_unsorted : t -> string list
val is_directory : t -> bool
val is_file : t -> bool
val rmdir : t -> unit
val unlink : t -> unit
val unlink_no_err : t -> unit
val rm_rf : t -> unit
val mkdir_p : t -> unit
val extension : t -> string
val pp : Format.formatter -> t -> unit
val pp_in_source : Format.formatter -> t -> unit
val pp_debug : Format.formatter -> t -> unit
val set_build_dir : Kind.t -> unit
set the build directory. Can only be called once and must be done before paths are converted to strings elsewhere.
val in_source : string -> t
paths guaranteed to be in the source directory
val set_root : External.t -> unit
Set the workspace root. Can only be called once and the path must be absolute
module Internal : sig ... end
Internal use only
module L : sig ... end
Return the "local part" of a path. For local paths (in build directory or source tree), this returns the path itself. For external paths, it returns a path that is relative to the current directory. For example, the local part of /a/b
is ./a/b
.
val stat : t -> Unix.stats