module Hook: sig .. end
Hook builder. A hook is a bunch of functions which can be extended and
applied at any program point.
module type S = sig .. end
Output signature.
module type Comparable = sig .. end
module type S_ordered = sig .. end
hook with a notion of priority.
module type Iter_hook = S with type result = unit
module Build: functor (P : sigend) -> Iter_hook with type param = P.t
Make a new empty hook from a given type of parameters.
module Make: functor (X : sigend) -> S with type param = unit and type result = unit
Make a new empty hook from unit.
module Fold: functor (P : sigend) -> S with type param = P.t and type result = P.t
module Build_ordered: functor (P : sigend) -> S_ordered with type key = P.Id.t and type param = P.t and type result = unit
module Make_ordered: functor (P : sigend) -> S_ordered with type key = P.Id.t and type param = unit and type result = unit
module Fold_ordered: functor (P : sigend) -> S_ordered with type key = P.Id.t and type param = P.t and type result = P.t