Module GTCommon.HelpersBase

val id : 'a -> 'a
val not_implemented : ('a, unit, string, 'b) format4 -> 'a
module Option : sig ... end
module Char : sig ... end
module List : sig ... end
val compare_core_type : Parsetree.core_type -> Parsetree.core_type -> int
val visit_typedecl : loc:'a -> ?onrecord:(Ppxlib.label_declaration list -> 'b) -> ?onmanifest:(Ppxlib.core_type -> 'b) -> ?onvariant:(Ppxlib.constructor_declaration list -> 'b) -> ?onabstract:(unit -> 'b) -> ?onopen:(unit -> 'b) -> Ppxlib.type_declaration -> 'b
val affect_longident : f:(string -> string) -> Ppxlib.longident -> Ppxlib.longident
val map_longident : f:(string -> string) -> Ppxlib.longident -> Ppxlib.longident
val lident_tail : Ppxlib.longident -> Ppxlib.longident
module SS : sig ... end
val vars_from_core_type : Ppxlib.core_type -> SS.t
val vars_from_tdecl : Ppxlib.type_declaration -> SS.t
val map_core_type : ?onconstr: (Ppxlib.longident -> Ppxlib.core_type list -> Ppxlib.core_type option) -> onvar:(string -> Ppxlib.core_type option) -> Ppxlib.core_type -> Ppxlib.core_type
val list_first_some : f:('a -> 'b option) -> 'a list -> 'b option
val is_type_used_in : tdecl:Ppxlib.type_declaration -> Ppxlib.longident -> bool
val maybe_specialiaze : what:Ppxlib.type_declaration -> Ppxlib.core_type list -> (string * Ppxlib.core_type) list option
val specialize_for_tdecl : what:Ppxlib.type_declaration -> where:Ppxlib.type_declaration -> (string * Ppxlib.core_type) list
val with_constr_typ : Ppxlib.core_type -> ok:(Ppxlib.longident_loc -> Ppxlib.core_type list -> 'a) -> fail:(unit -> 'a) -> 'a
val constr_of_tuple : ?loc:Ppxlib.Location.t -> Parsetree.core_type list -> Parsetree.core_type
val using_type : typename:string -> Ppxlib.type_declaration -> Parsetree.core_type
val is_polyvariant : Ppxlib.core_type -> bool
val is_tuple : Ppxlib.core_type -> bool
val is_polyvariant_tdecl : Ppxlib.type_declaration -> bool
val is_tuple_tdecl : Ppxlib.type_declaration -> bool
val is_algebraic_tdecl : Ppxlib.type_declaration -> bool
val has_many_constructors_tdecl : Ppxlib.type_declaration -> bool
val unfold_tuple : Ppxlib.core_type -> Ppxlib.core_type list
val prepare_patt_match_poly : loc:Astlib.Location.t -> Parsetree.expression -> Ppxlib.row_field_desc list -> string list option -> onrow: (Ppxlib.label Ppxlib.loc -> (string * Ppxlib.core_type) list -> Parsetree.expression) -> onlabel:(string -> string -> Parsetree.expression) -> oninherit: (Ppxlib.core_type list -> Ppxlib.longident -> string -> Parsetree.expression) -> Parsetree.expression
val map_type_param_names : f:(string -> 'a) -> (Ppxlib.core_type * 'b) list -> 'a list
val notify : ('a, Format.formatter, unit, unit) format4 -> 'a
val string_after_a : int -> string
val hash_variant : string -> int
val failwiths : ('a, Format.formatter, unit, 'b) format4 -> 'a