Module Ppx_core__.Common

val lident : Ppx_core__.Import.string ‑> Ppx_core.Longident.t
val core_type_of_type_declaration : Ppx_core__.Import.type_declaration ‑> Ppx_core__.Import.core_type
val name_type_params_in_td : Ppx_core__.Import.type_declaration ‑> Ppx_core__.Import.type_declaration
val combinator_type_of_type_declaration : Ppx_core__.Import.type_declaration ‑> f:(loc:Ppx_core.Location.t ‑> Ppx_core__.Import.core_type ‑> Ppx_core__.Import.core_type) ‑> Ppx_core__.Import.core_type
val gen_symbol : ?prefix:Ppx_core__.Import.string ‑> Ppx_core__.Import.unit ‑> Ppx_core__.Import.string

gen_symbol ?prefix () generates a fresh variable name with prefix.

val string_of_core_type : Ppx_core__.Import.core_type ‑> Ppx_core__.Import.string
val assert_no_attributes : Ppx_core__.Import.attributes ‑> Ppx_core__.Import.unit
val assert_no_attributes_in : Ppx_core.Ast_traverse.iter
val get_type_param_name : (Ppx_core__.Import.core_type * Ppx_core__.Import.variance) ‑> Ppx_core__.Import.string Ppx_core.Loc.t

get_tparam_id tp

val types_are_recursive : ?stop_on_functions:Ppx_core__.Import.bool ‑> ?short_circuit:(Ppx_core__.Import.core_type ‑> Ppx_core__.Import.bool Ppx_core__.Import.option) ‑> Ppx_core__.Import.type_declaration Ppx_core__.Import.list ‑> Ppx_core__.Import.bool

Returns whether the given type declarations refer to themselves.

short_circuit allows you to override the search for certain type expressions.

stop_on_functions allows to disregard the recursive occurences appearing in arrow types. The default is to disregard them.

val really_recursive : Ppx_core__.Import.rec_flag ‑> Ppx_core__.Import.type_declaration Ppx_core__.Import.list ‑> Ppx_core__.Import.rec_flag
val loc_of_payload : Ppx_core__.Import.attribute ‑> Ppx_core.Location.t
val loc_of_attribute : Ppx_core__.Import.attribute ‑> Ppx_core.Location.t
val curry_applications : Ppx_core__.Import.expression ‑> Ppx_core__.Import.expression

convert multi-arg function applications into a cascade of 1-arg applications

val attribute_of_warning : Ppx_core.Location.t ‑> Ppx_core__.Import.string ‑> Ppx_core__.Import.attribute

Encode a warning message into an 'ocaml.ppwarning' attribute which can be inserted in a generated Parsetree. The compiler will be responsible for reporting the warning.