sig
val set_conv_path_if_not_set : Camlp4.PreCast.Ast.Loc.t -> unit
val get_conv_path : unit -> string
val add_generator :
?is_exn:bool ->
string ->
(bool -> Camlp4.PreCast.Ast.ctyp -> Camlp4.PreCast.Ast.str_item) -> unit
val add_generator_with_arg :
?is_exn:bool ->
string ->
'a Camlp4.PreCast.Gram.Entry.t ->
('a option ->
bool -> Camlp4.PreCast.Ast.ctyp -> Camlp4.PreCast.Ast.str_item) ->
unit
val rm_generator : ?is_exn:bool -> string -> unit
val add_sig_generator :
?delayed:bool ->
?is_exn:bool ->
string ->
(bool -> Camlp4.PreCast.Ast.ctyp -> Camlp4.PreCast.Ast.sig_item) -> unit
val add_sig_generator_with_arg :
?delayed:bool ->
?is_exn:bool ->
string ->
'a Camlp4.PreCast.Gram.Entry.t ->
('a option ->
bool -> Camlp4.PreCast.Ast.ctyp -> Camlp4.PreCast.Ast.sig_item) ->
unit
val rm_sig_generator : ?is_exn:bool -> string -> unit
type record_field_generator = Camlp4.PreCast.Ast.ctyp -> unit
val add_record_field_generator :
string -> Pa_type_conv.record_field_generator -> unit
val add_record_field_generator_with_arg :
string ->
'a Camlp4.PreCast.Gram.Entry.t ->
('a option -> Pa_type_conv.record_field_generator) -> unit
val rm_record_field_generator : string -> unit
val add_sig_set : ?is_exn:bool -> string -> set:string list -> unit
val add_str_set : ?is_exn:bool -> string -> set:string list -> unit
val add_set :
kind:[ `Both | `Sig | `Str ] ->
is_exn:[ `Both | `No | `Yes ] -> string -> set:string list -> unit
val get_loc_err : Camlp4.PreCast.Ast.Loc.t -> string -> string
val hash_variant : string -> int
module Gen :
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 :
?stop_on_functions:bool ->
?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
val delay_sig_item : Camlp4.PreCast.Ast.sig_item -> unit
end
module Rewrite_tds :
sig
val sig_ :
Camlp4.PreCast.Ast.Loc.t ->
bool -> Camlp4.PreCast.Ast.ctyp -> Camlp4.PreCast.Ast.sig_item
val str_ :
Camlp4.PreCast.Ast.Loc.t ->
bool -> Camlp4.PreCast.Ast.ctyp -> Camlp4.PreCast.Ast.str_item
end
end