package jenga

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type

This sandbox is a way of running the action that attempts to detect rules that are incorrectly described. We run the action in such a way that relative paths in actions can only access specified dependencies (to find missing dependencies). Files that are specified to be targets but are not created, or created but not specified to be targets, will be found as well.

type kind = Db.Sandbox_kind.t =
  1. | No_sandbox
  2. | Copy
  3. | Copy_ignore_targets
val kind_of_sexp : Ppx_sexp_conv_lib.Sexp.t -> kind
val sexp_of_kind : kind -> Ppx_sexp_conv_lib.Sexp.t
type t
val root : t -> Path.t
type error =
  1. | Creation_failed of exn
  2. | Closing_failed of exn
  3. | Unexpected_targets of string list
  4. | Missing_targets of Path.Rel.t list
val sexp_of_error : error -> Ppx_sexp_conv_lib.Sexp.t
val with_sandbox : dir:Path.t -> deps:Db.Proxy_map.t -> kind:kind -> targets:Path.Rel.t list -> f:(t -> ('a, 'err) Core.Result.t Async.Deferred.t) -> (('a, 'err) Core.Result.t, error) Core.Result.t Async.Deferred.t