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

class type_is_recursive : Ppx_core__.Import.rec_flag ‑> Ppx_core__.Import.type_declaration Ppx_core__.Import.list ‑> object ... end

(new type_is_recursive rec_flag tds)#go () returns whether rec_flag, tds is really a recursive type. We disregard recursive occurrences appearing in arrow types. You can override the search for certain type expressions by inheriting from this class.

val really_recursive : Ppx_core__.Import.rec_flag ‑> Ppx_core__.Import.type_declaration Ppx_core__.Import.list ‑> Ppx_core__.Import.rec_flag

really_recursive rec_flag tds = (new type_is_recursive rec_flag tds)#go ()

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.