jon.recoil.org

Module type Coercion0.S

type variable
type rec_info_expr
type t = private
  1. | Id
  2. | Change_depth of {
    1. from : rec_info_expr;
    2. to_ : rec_info_expr;
    }
val change_depth : from:rec_info_expr -> to_:rec_info_expr -> t
val id : t
val is_id : t -> bool
val inverse : t -> t
val compose : t -> then_:t -> t option
val print : Stdlib.Format.formatter -> t -> unit
val equal : t -> t -> bool
val hash : t -> int
val map_depth_variables : t -> f:(variable -> variable) -> t