package jenga

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type
type t =
  1. | In_root_dir
  2. | Path of Path.t
  3. | Env of unit -> Env.t Async.Deferred.t

A t represents the various ways to find the specifications of the rules:

  • In_root_dir means to look for jenga.conf or jengaroot.ml in the root directory (as specified in path.ml), and load it. jengaroot.ml is compiled directly, and is expected to have the interface described in jenga_root_interface.ml. jenga.conf is expected to contain an s-expression like "(modules (file1.ml file2.ml))", and then the given ml-files are loaded in that order and the last one is expected to have the same interface as the jengaroot.ml.
  • Path is like In_root_dir, but the ml files are looked up in the given directory rather than at the root
  • Env allows to give a value directly, and so it can be used to link the rules statically into jenga, as opposed to dynamically in the previous two cases.