dune/src/workspace.mli

48 lines
880 B
OCaml

(** Workspaces definitions *)
open! Import
module Context : sig
module Target : sig
type t =
| Native
| Named of string
end
module Opam : sig
type t =
{ loc : Loc.t
; name : string
; profile : string
; switch : string
; root : string option
; merlin : bool
; targets : Target.t list
}
end
module Default : sig
type t =
{ loc : Loc.t
; profile : string
; targets : Target.t list
}
end
type t = Default of Default.t | Opam of Opam.t
val name : t -> string
end
type t =
{ merlin_context : string option
; contexts : Context.t list
}
val load : ?x:string -> ?profile:string -> Path.t -> t
(** Default name of workspace files *)
val filename : string
(** Default configuration *)
val default : ?x:string -> ?profile:string -> unit -> t