sig
val exApp_of_list : Camlp4.PreCast.Ast.expr list -> Camlp4.PreCast.Ast.expr
val tyArr_of_list : Camlp4.PreCast.Ast.ctyp list -> Camlp4.PreCast.Ast.ctyp
val paOr_of_list : Camlp4.PreCast.Ast.patt list -> Camlp4.PreCast.Ast.patt
val gensym : ?prefix:string -> unit -> string
val error : Camlp4.PreCast.Ast.ctyp -> fn:string -> msg:string -> 'a
val unknown_type : Camlp4.PreCast.Ast.ctyp -> string -> 'a
val ty_var_list_of_ctyp :
Camlp4.PreCast.Ast.ctyp -> string list -> string list
val get_rev_id_path :
Camlp4.PreCast.Ast.ident -> string list -> string list
val ident_of_rev_path :
Camlp4.PreCast.Ast.Loc.t -> string list -> Camlp4.PreCast.Ast.ident
val get_appl_path :
Camlp4.PreCast.Ast.Loc.t ->
Camlp4.PreCast.Ast.ctyp -> Camlp4.PreCast.Ast.ident
val abstract :
Camlp4.PreCast.Ast.Loc.t ->
Camlp4.PreCast.Ast.patt list ->
Camlp4.PreCast.Ast.expr -> Camlp4.PreCast.Ast.expr
val apply :
Camlp4.PreCast.Ast.Loc.t ->
Camlp4.PreCast.Ast.expr ->
Camlp4.PreCast.Ast.expr list -> Camlp4.PreCast.Ast.expr
val switch_tp_def :
alias:(Camlp4.PreCast.Ast.Loc.t -> Camlp4.PreCast.Ast.ctyp -> 'a) ->
sum:(Camlp4.PreCast.Ast.Loc.t -> Camlp4.PreCast.Ast.ctyp -> 'a) ->
record:(Camlp4.PreCast.Ast.Loc.t -> Camlp4.PreCast.Ast.ctyp -> 'a) ->
variants:(Camlp4.PreCast.Ast.Loc.t -> Camlp4.PreCast.Ast.ctyp -> 'a) ->
mani:(Camlp4.PreCast.Ast.Loc.t ->
Camlp4.PreCast.Ast.ctyp -> Camlp4.PreCast.Ast.ctyp -> 'a) ->
nil:(Camlp4.PreCast.Ast.Loc.t -> 'a) -> Camlp4.PreCast.Ast.ctyp -> 'a
val mk_expr_lst :
Camlp4.PreCast.Ast.Loc.t ->
Camlp4.PreCast.Ast.expr list -> Camlp4.PreCast.Ast.expr
val mk_patt_lst :
Camlp4.PreCast.Ast.Loc.t ->
Camlp4.PreCast.Ast.patt list -> Camlp4.PreCast.Ast.patt
val get_tparam_id : Camlp4.PreCast.Ast.ctyp -> string
val type_is_recursive :
?short_circuit:(Camlp4.PreCast.Ast.ctyp -> bool option) ->
string -> Camlp4.PreCast.Ast.ctyp -> bool
val drop_variance_annotations :
Camlp4.PreCast.Ast.ctyp -> Camlp4.PreCast.Ast.ctyp
val find_record_default :
Camlp4.PreCast.Ast.Loc.t -> Camlp4.PreCast.Ast.expr option
end