module T:sig
..end
type
t = private
| |
Var of |
| |
Apply of |
val mk_var : int -> t
val mk_const : TopDown.S.const -> t
val mk_apply : TopDown.S.const -> t array -> t
val mk_apply_l : TopDown.S.const -> t list -> t
val is_var : t -> bool
val is_apply : t -> bool
val is_const : t -> bool
val eq : t -> t -> bool
val hash : t -> int
val ground : t -> bool
val vars : t -> int list
val max_var : t -> int
max var, or 0 if ground
val head_symbol : t -> TopDown.S.const
val to_string : t -> string
val pp : Pervasives.out_channel -> t -> unit
val fmt : Format.formatter -> t -> unit
val pp_tuple : Pervasives.out_channel -> t list -> unit
module Tbl:Hashtbl.S
with type key = t