stdune

Dune's unstable standard library
Legend:
Library
Module
Module type
Parameter
Class
Class type
Library stdune
Module Stdune . Path . Build
type w
type t = w Local_gen.t
val hash : t -> int
val to_string : t -> string
val of_string : string -> t
val parse_string_exn : loc:Stdune__Loc0.t -> string -> t

a directory is smaller than its descendants

include Comparator.S with type t := t
val compare : t -> t -> Ordering.t
include Comparator.OPS with type t := t
val equal : t -> t -> bool
val (=) : t -> t -> bool
val (>=) : t -> t -> bool
val (>) : t -> t -> bool
val (<=) : t -> t -> bool
val (<) : t -> t -> bool
val (<>) : t -> t -> bool
val to_dyn : t -> Dyn.t
val extension : t -> string
val set_extension : t -> ext:string -> t

set_extension path ~ext replaces extension of path by ext

val map_extension : t -> f:( string -> string ) -> t

map_extension path ~f replaces extension of path by f extension

val split_extension : t -> t * string
val basename : t -> string
val basename_opt : t -> string option
val extend_basename : t -> suffix:string -> t
module Map : Map.S with type key = t
module Set : sig ... end
module Table : Hashtbl.S with type key = t
val to_string_maybe_quoted : t -> string
val is_descendant : t -> of_:t -> bool
val is_root : t -> bool
val parent_exn : t -> t
val parent : t -> t option
val root : t
val append_source : t -> Source.t -> t
val append_local : t -> Local.t -> t
val append : t -> t -> t

append x y is append_local x (local y)

module L : sig ... end
val relative : ?error_loc:Stdune__Loc0.t -> t -> string -> t
val split_first_component : t -> (string * Local.t) option
val explode : t -> string list
val local : t -> Local.t
val drop_build_context : t -> Source.t option
val drop_build_context_exn : t -> Source.t
val drop_build_context_maybe_sandboxed_exn : t -> Source.t
val extract_build_context : t -> (string * Source.t) option

Source.t here is a lie in some cases: consider when the context name happens to be "install" or ".alias".

val extract_build_context_exn : t -> string * Source.t
val extract_build_context_dir : t -> (t * Source.t) option
val extract_build_context_dir_exn : t -> t * Source.t
val extract_first_component : t -> (string * Local.t) option

This function does the same as extract_build_context, but has a "righter" type.

module Kind : sig ... end
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 split_sandbox_root : t -> t option * t
val of_local : Local.t -> t
val chmod : t -> mode:int -> unit

Set permissions for a given path. You can use the Permissions module if you need to modify existing permissions in a non-trivial way.

val lstat : t -> Unix.stats