Module Ppx_deriving_make

val deriver : string
val raise_errorf : ?sub:Ocaml_common.Location.error list -> ?loc:Ppxlib.Location.t -> ('a, unit, string, 'b) Stdlib.format4 -> 'a
val attr_default : (Ppxlib__.Import.label_declaration, Ppxlib__.Import.expression) Ppxlib.Attribute.t * (Ppxlib__.Import.core_type, Ppxlib__.Import.expression) Ppxlib.Attribute.t
val mk_attr_split : 'a Ppxlib.Attribute.Context.t -> 'a Ppxlib.Attribute.flag
val ct_attr_split : Ppxlib__.Import.core_type Ppxlib.Attribute.flag
val label_attr_split : Ppxlib__.Import.label_declaration Ppxlib.Attribute.flag
val attr_split : Ppxlib__.Import.label_declaration Ppxlib.Attribute.flag * Ppxlib__.Import.core_type Ppxlib.Attribute.flag
val mk_attr_main : 'a Ppxlib.Attribute.Context.t -> 'a Ppxlib.Attribute.flag
val ct_attr_main : Ppxlib__.Import.core_type Ppxlib.Attribute.flag
val label_attr_main : Ppxlib__.Import.label_declaration Ppxlib.Attribute.flag
val attr_main : Ppxlib__.Import.label_declaration Ppxlib.Attribute.flag * Ppxlib__.Import.core_type Ppxlib.Attribute.flag
val get_label_attribute : ((Ppxlib.Parsetree.label_declaration, 'a) Ppxlib.Attribute.t * (Ppxlib.Parsetree.core_type, 'b) Ppxlib.Attribute.t) -> Ppxlib.Parsetree.label_declaration -> 'c option
val has_label_flag : (Ppxlib.Parsetree.label_declaration Ppxlib.Attribute.flag * Ppxlib.Parsetree.core_type Ppxlib.Attribute.flag) -> Ppxlib.Parsetree.label_declaration -> bool
val find_main : Ppxlib.Parsetree.label_declaration list -> (Ppxlib.Parsetree.label_declaration option * Ppxlib.Parsetree.label_declaration list, Ppxlib__.Import.extension) Stdlib.result
val is_optional : Ppxlib.Parsetree.label_declaration -> bool
val add_str_label_arg : quoter:Ppx_deriving.quoter -> loc:Astlib__.Location.t -> Astlib.Ast_500.Parsetree.expression -> Ppxlib.Parsetree.label_declaration -> Astlib.Ast_500.Parsetree.expression
val str_of_record_type : quoter:Ppx_deriving.quoter -> loc:Ppxlib__.Import.location -> Ppxlib.Parsetree.label_declaration list -> Ppxlib__.Import.expression
val str_of_type : Ppxlib.Parsetree.type_declaration -> (Astlib.Ast_500.Parsetree.value_binding, Ppxlib__.Import.extension) Stdlib.result
val wrap_predef_option : 'a -> 'b
val add_sig_label_arg : Astlib.Ast_500.Parsetree.core_type -> Ppxlib.Parsetree.label_declaration -> Astlib.Ast_500.Parsetree.core_type
val sig_of_record_type : loc:Ppxlib__.Import.location -> typ:Astlib.Ast_500.Parsetree.core_type -> Ppxlib.Parsetree.label_declaration list -> Ppxlib__.Import.core_type
val sig_of_type : Ppxlib.Parsetree.type_declaration -> (Astlib.Ast_500.Parsetree.signature_item, Ppxlib__.Import.extension) Stdlib.result
val partition_result : ('a, 'b) Stdlib.result list -> 'c list * 'd list
val impl_generator : (Astlib.Ast_500.Parsetree.structure_item list, Ppxlib__.Import.rec_flag * Ppxlib.Parsetree.type_declaration list) Ppxlib__Deriving.Generator.t
val intf_generator : (Astlib.Ast_500.Parsetree.signature_item list, Ppxlib__.Import.rec_flag * Ppxlib.Parsetree.type_declaration list) Ppxlib__Deriving.Generator.t
val deriving : Ppxlib.Deriving.t