package visitors

  1. Overview
  2. Docs

Module Ppx_deriving_visitors.VisitorsAnalysis

type tycon = string
type tyvar = string
type tyvars = tyvar list
type classification =
  1. | LIDENT
  2. | UIDENT
  3. | OTHER
val classify : string -> classification
val is_valid_mod_longident : string -> bool
val is_valid_class_longident : string -> bool
val is_valid_method_name_prefix : string -> bool
val select : string -> Parsetree.attributes -> Parsetree.attribute option
val present : string -> Parsetree.attributes -> bool
type opacity =
  1. | Opaque
  2. | NonOpaque
val opacity : Parsetree.attributes -> opacity
val identifier : string Ppx_deriving.Arg.conv
val name : Parsetree.attributes -> string option
val build : Parsetree.attributes -> Parsetree.expression option
val maybe : 'a option -> 'a -> 'a
val paste : Parsetree.core_type -> Parsetree.attributes -> Parsetree.core_type
val fix : Parsetree.label_declaration list -> Parsetree.label_declaration list
val type_param_to_tyvar : (Parsetree.core_type * Asttypes.variance) -> tyvar
val type_params_to_tyvars : (Parsetree.core_type * Asttypes.variance) list -> tyvar list
val decl_params : Parsetree.type_declaration -> tyvars
val is_local : Parsetree.type_declaration list -> Longident.t -> Parsetree.type_declaration option
exception Occurs of Ast_helper.loc
val occurs_type : tyvar -> Parsetree.core_type -> unit
val occurs_types : tyvar -> Parsetree.core_type list -> unit
val occurs_row_field : tyvar -> Parsetree.row_field -> unit
val occurs_quantifiers : tyvar -> string list -> bool
val occurs_payload : tyvar -> Parsetree.payload -> unit
val unsupported : Parsetree.core_type -> 'a
val at_opaque : (Parsetree.core_type -> unit) -> Parsetree.core_type -> unit
val check_poly_under_opaque : tyvar list -> Parsetree.core_type list -> unit
type substitution = tyvar -> Parsetree.core_type
type renaming = tyvar -> tyvar
val subst_type : substitution -> Parsetree.core_type -> Parsetree.core_type
val subst_types : substitution -> Parsetree.core_type list -> Parsetree.core_type list
val rename_type : renaming -> Parsetree.core_type -> Parsetree.core_type