Module Solver


module Solver: sig .. end


type backtrace =
| Leaf of Pathname.t
| Choice of backtrace list
| Depth of Pathname.t * backtrace
| Target of string * backtrace
exception Failed of backtrace
exception Circular of Pathname.t * Pathname.t list
val failed : Pathname.t -> backtrace -> 'a
val pp_repeat : Format.formatter -> int * string -> unit
val self : int -> Pathname.t list -> Pathname.t -> unit
val self_first : int ->
Pathname.t list ->
backtrace list ->
Pathname.t list -> (Pathname.t, exn) My_std.Outcome.t
val self_firsts : int -> Pathname.t list -> Rule.builder
val force_self : int -> Pathname.t list -> Pathname.t -> unit
val solve : Pathname.t -> unit
val solve_target : string -> Pathname.t list -> Pathname.t