sig
type id = string
val pp_id :
Format.formatter -> Xinterp_util.id -> Ppx_deriving_runtime.unit
val show_id : Xinterp_util.id -> Ppx_deriving_runtime.string
type op2 = Interp_util.op2 = LT | GT | Eq | Add | Sub | Mul | Div | Mod
val pp_op2 :
Format.formatter -> Xinterp_util.op2 -> Ppx_deriving_runtime.unit
val show_op2 : Xinterp_util.op2 -> Ppx_deriving_runtime.string
type const = Interp_util.const = Int of int | Bool of bool
val pp_const :
Format.formatter -> Xinterp_util.const -> Ppx_deriving_runtime.unit
val show_const : Xinterp_util.const -> Ppx_deriving_runtime.string
type exp =
Id of Xinterp_util.id
| Const of Xinterp_util.const
| Op2 of Xinterp_util.op2 * Xinterp_util.exp * Xinterp_util.exp
| If of Xinterp_util.exp * Xinterp_util.exp * Xinterp_util.exp
| Let of Xinterp_util.id * Xinterp_util.exp * Xinterp_util.exp
| Fun of Xinterp_util.id * Xinterp_util.exp
| Fix of Xinterp_util.id * Xinterp_util.exp
| App of Xinterp_util.exp * Xinterp_util.exp
| Empty
| Cons of Xinterp_util.exp * Xinterp_util.exp
| Head of Xinterp_util.exp
| Tail of Xinterp_util.exp
| IsEmpty of Xinterp_util.exp
| Record of (string * Xinterp_util.exp) list
| GetField of Xinterp_util.exp * string
| MkArray of Xinterp_util.exp * Xinterp_util.exp
| GetArray of Xinterp_util.exp * Xinterp_util.exp
| SetArray of Xinterp_util.exp * Xinterp_util.exp * Xinterp_util.exp
val pp_exp :
Format.formatter -> Xinterp_util.exp -> Ppx_deriving_runtime.unit
val show_exp : Xinterp_util.exp -> Ppx_deriving_runtime.string
val from_string : string -> Xinterp_util.exp
val from_file : string -> Xinterp_util.exp
end