Module Pa_deriving_make

val make_fname : 'a -> string -> string
val is_main_attribute : (('a * string) Ploc.vala * MLast.payload) Ploc.vala -> bool
val is_split_attribute : (('a * string) Ploc.vala * MLast.payload) Ploc.vala -> bool
val is_default_attribute : (('a * string) Ploc.vala * MLast.payload) Ploc.vala -> bool
val extract_default_attribute : (('a * string) Ploc.vala * MLast.payload) Ploc.vala -> MLast.expr
val reorder_fields : 'a -> ('b * 'c * 'd * 'e * (('f * string) Ploc.vala * MLast.payload) Ploc.vala list Ploc.vala) list -> bool * ('b * 'c * 'd * 'e * (('f * string) Ploc.vala * MLast.payload) Ploc.vala list Ploc.vala) list
val field2req_consfields_funpats : MLast.loc -> ('a * string * 'b * MLast.ctyp * MLast.attribute list Ploc.vala) -> bool * (MLast.patt * MLast.expr) list * MLast.patt list
module PM : sig ... end
val fmt_expression : 'a -> MLast.ctyp -> MLast.expr
val fmt_top : 'a -> 'b -> MLast.ctyp -> MLast.expr
val str_item_top_funs : 'a -> MLast.type_decl -> (string * MLast.expr) list
val sig_item_top_funs : 'a -> MLast.type_decl -> (string * MLast.ctyp) list
val str_item_funs : 'a -> MLast.type_decl -> (MLast.patt * MLast.expr * ((MLast.loc * string) Ploc.vala * MLast.payload) Ploc.vala list Ploc.vala) list
val sig_items : 'a -> MLast.type_decl -> MLast.sig_item list
val str_item_gen_make0 : 'a -> MLast.type_decl -> (MLast.patt * MLast.expr * ((MLast.loc * string) Ploc.vala * MLast.payload) Ploc.vala list Ploc.vala) list
val str_item_gen_make : 'a -> 'b -> MLast.str_item -> MLast.str_item
val sig_item_gen_make : 'a -> 'b -> MLast.sig_item -> MLast.sig_item