Module Ppxlib__.Ast_pattern
type ('a, 'b, 'c) t= ('a, 'b, 'c) Ppxlib__.Ast_pattern0.tType of a pattern:
'ais the type of value matched by the pattern'bis the continuation, for instance for a pattern that captures anintand astring,'bwill beint -> string -> _'cis the result of the continuation.
val parse : ('a, 'b, 'c) t -> Ppxlib.Location.t -> ?on_error:(Ppxlib__.Import.unit -> 'c) -> 'a -> 'b -> 'cMatches a value against a pattern.
val __ : ('a, 'a -> 'b, 'b) tPattern that captures its input.
val __' : ('a, 'a Ppxlib.Loc.t -> 'b, 'b) tSame as
__but also captures the location.Note: this should only be used for types that do not embed a location. For instance you can use it to capture a string constant:
estring __'but using it to capture an expression would not yield the expected result:
pair (eint (int 42)) __'In the latter case you should use the
pexp_locfield of the captured expression instead.
val alt : ('a, 'b, 'c) t -> ('a, 'b, 'c) t -> ('a, 'b, 'c) taltstands for `alternatives'. It matches either the first pattern or the second one.
val alt_option : ('a, 'v -> 'b, 'c) t -> ('a, 'b, 'c) t -> ('a, 'v Ppxlib__.Import.option -> 'b, 'c) tSame as
alt, for the common case where the left-hand-side captures a value but not the right-hand-side.
val map : ('a, 'b, 'c) t -> f:('d -> 'b) -> ('a, 'd, 'c) tval map' : ('a, 'b, 'c) t -> f:(Ppxlib.Location.t -> 'd -> 'b) -> ('a, 'd, 'c) tval map_result : ('a, 'b, 'c) t -> f:('c -> 'd) -> ('a, 'b, 'd) tval (>>|) : ('a, 'b, 'c) t -> ('d -> 'b) -> ('a, 'd, 'c) tSame as
map
val map0 : ('a, 'b, 'c) t -> f:'v -> ('a, 'v -> 'b, 'c) tval map1 : ('a, 'v1 -> 'b, 'c) t -> f:('v1 -> 'v) -> ('a, 'v -> 'b, 'c) tval map2 : ('a, 'v1 -> 'v2 -> 'b, 'c) t -> f:('v1 -> 'v2 -> 'v) -> ('a, 'v -> 'b, 'c) tval map0' : ('a, 'b, 'c) t -> f:(Ppxlib.Location.t -> 'v) -> ('a, 'v -> 'b, 'c) tval map1' : ('a, 'v1 -> 'b, 'c) t -> f:(Ppxlib.Location.t -> 'v1 -> 'v) -> ('a, 'v -> 'b, 'c) tval map2' : ('a, 'v1 -> 'v2 -> 'b, 'c) t -> f:(Ppxlib.Location.t -> 'v1 -> 'v2 -> 'v) -> ('a, 'v -> 'b, 'c) tval nil : (_ Ppxlib__.Import.list, 'a, 'a) tval (^::) : ('a, 'b, 'c) t -> ('a Ppxlib__.Import.list, 'c, 'd) t -> ('a Ppxlib__.Import.list, 'b, 'd) tval many : ('a, 'b -> 'b, 'c) t -> ('a Ppxlib__.Import.list, 'c Ppxlib__.Import.list -> 'd, 'd) tval int : Ppxlib__.Import.int -> (Ppxlib__.Import.int, 'a, 'a) tval char : Ppxlib__.Import.char -> (Ppxlib__.Import.char, 'a, 'a) tval string : Ppxlib__.Import.string -> (Ppxlib__.Import.string, 'a, 'a) tval float : Ppxlib__.Import.float -> (Ppxlib__.Import.float, 'a, 'a) tval int32 : Ppxlib__.Import.int32 -> (Ppxlib__.Import.int32, 'a, 'a) tval int64 : Ppxlib__.Import.int64 -> (Ppxlib__.Import.int64, 'a, 'a) tval nativeint : Ppxlib__.Import.nativeint -> (Ppxlib__.Import.nativeint, 'a, 'a) tval bool : Ppxlib__.Import.bool -> (Ppxlib__.Import.bool, 'a, 'a) tval cst : to_string:('a -> Ppxlib__.Import.string) -> ?equal:('a -> 'a -> Ppxlib__.Import.bool) -> 'a -> ('a, 'b, 'b) tval none : (_ Ppxlib__.Import.option, 'a, 'a) tval some : ('a, 'b, 'c) t -> ('a Ppxlib__.Import.option, 'b, 'c) tval pair : ('a1, 'b, 'c) t -> ('a2, 'c, 'd) t -> ('a1 * 'a2, 'b, 'd) tval (**) : ('a1, 'b, 'c) t -> ('a2, 'c, 'd) t -> ('a1 * 'a2, 'b, 'd) tval triple : ('a1, 'b, 'c) t -> ('a2, 'c, 'd) t -> ('a3, 'd, 'e) t -> ('a1 * 'a2 * 'a3, 'b, 'e) tval loc : ('a, 'b, 'c) t -> ('a Ppxlib.Loc.t, 'b, 'c) tval pack0 : ('a, 'b, 'c) t -> ('a, Ppxlib__.Import.unit -> 'b, 'c) tval pack2 : ('a, 'b -> 'c -> 'd, 'e) t -> ('a, ('b * 'c) -> 'd, 'e) tval pack3 : ('a, 'b -> 'c -> 'd -> 'e, 'f) t -> ('a, ('b * 'c * 'd) -> 'e, 'f) t
AST patterns for each constructur/record of the parsetree are generated in the same way AST builders are generated. In addition, for every t wrapper we generate a pattern to match the loc and attributes fields. For instanct for the expression type:
val pexp_loc
: (Location.t, 'a, 'b) t
-> (expression, 'b, 'c) t
-> (expression, 'a, 'c) t
val pexp_attributes
: (attributes, 'a, 'b) t
-> (expression, 'b, 'c) t
-> (expression, 'a, 'c) tinclude module type of Ppxlib__.Ast_pattern_generated
val nolabel : (Ppxlib__.Import.arg_label, 'a, 'a) Ppxlib__.Ast_pattern0.tval labelled : (string, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.arg_label, 'a, 'b) Ppxlib__.Ast_pattern0.tval optional : (string, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.arg_label, 'a, 'b) Ppxlib__.Ast_pattern0.tval attribute : name:(string, 'a, 'b) Ppxlib__.Ast_pattern0.t -> payload:(Ppxlib__.Import.payload, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.attribute, 'a, 'c) Ppxlib__.Ast_pattern0.tval binding_op : op:(string, 'a, 'b) Ppxlib__.Ast_pattern0.t -> pat:(Ppxlib__.Import.pattern, 'b, 'c) Ppxlib__.Ast_pattern0.t -> exp:(Ppxlib__.Import.expression, 'c, 'd) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.binding_op, 'a, 'd) Ppxlib__.Ast_pattern0.tval case : lhs:(Ppxlib__.Import.pattern, 'a, 'b) Ppxlib__.Ast_pattern0.t -> guard:(Ppxlib__.Import.expression option, 'b, 'c) Ppxlib__.Ast_pattern0.t -> rhs:(Ppxlib__.Import.expression, 'c, 'd) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.case, 'a, 'd) Ppxlib__.Ast_pattern0.tval pcl_loc : (Ppxlib__.Import.location, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_expr, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_expr, 'a, 'c) Ppxlib__.Ast_pattern0.tval pcl_attributes : (Ppxlib__.Import.attributes, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_expr, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_expr, 'a, 'c) Ppxlib__.Ast_pattern0.tval pcl_constr : (Ppxlib__.Import.longident, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.core_type list, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_expr, 'a, 'c) Ppxlib__.Ast_pattern0.tval pcl_structure : (Ppxlib__.Import.class_structure, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_expr, 'a, 'b) Ppxlib__.Ast_pattern0.tval pcl_fun : (Ppxlib__.Import.arg_label, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression option, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.pattern, 'c, 'd) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_expr, 'd, 'e) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_expr, 'a, 'e) Ppxlib__.Ast_pattern0.tval pcl_apply : (Ppxlib__.Import.class_expr, 'a, 'b) Ppxlib__.Ast_pattern0.t -> ((Ppxlib__.Import.arg_label * Ppxlib__.Import.expression) list, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_expr, 'a, 'c) Ppxlib__.Ast_pattern0.tval pcl_let : (Ppxlib__.Import.rec_flag, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.value_binding list, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_expr, 'c, 'd) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_expr, 'a, 'd) Ppxlib__.Ast_pattern0.tval pcl_constraint : (Ppxlib__.Import.class_expr, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_type, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_expr, 'a, 'c) Ppxlib__.Ast_pattern0.tval pcl_extension : (Ppxlib__.Import.extension, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_expr, 'a, 'b) Ppxlib__.Ast_pattern0.tval pcl_open : (Ppxlib__.Import.open_description, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_expr, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_expr, 'a, 'c) Ppxlib__.Ast_pattern0.tval pcf_loc : (Ppxlib__.Import.location, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_field, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_field, 'a, 'c) Ppxlib__.Ast_pattern0.tval pcf_attributes : (Ppxlib__.Import.attributes, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_field, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_field, 'a, 'c) Ppxlib__.Ast_pattern0.tval pcf_inherit : (Ppxlib__.Import.override_flag, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_expr, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (string Ppxlib__.Import.loc option, 'c, 'd) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_field, 'a, 'd) Ppxlib__.Ast_pattern0.tval pcf_val : (Ppxlib__.Import.label Ppxlib__.Import.loc * Ppxlib__.Import.mutable_flag * Ppxlib__.Import.class_field_kind, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_field, 'a, 'b) Ppxlib__.Ast_pattern0.tval pcf_method : (Ppxlib__.Import.label Ppxlib__.Import.loc * Ppxlib__.Import.private_flag * Ppxlib__.Import.class_field_kind, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_field, 'a, 'b) Ppxlib__.Ast_pattern0.tval pcf_constraint : (Ppxlib__.Import.core_type * Ppxlib__.Import.core_type, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_field, 'a, 'b) Ppxlib__.Ast_pattern0.tval pcf_initializer : (Ppxlib__.Import.expression, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_field, 'a, 'b) Ppxlib__.Ast_pattern0.tval pcf_attribute : (Ppxlib__.Import.attribute, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_field, 'a, 'b) Ppxlib__.Ast_pattern0.tval pcf_extension : (Ppxlib__.Import.extension, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_field, 'a, 'b) Ppxlib__.Ast_pattern0.tval cfk_virtual : (Ppxlib__.Import.core_type, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_field_kind, 'a, 'b) Ppxlib__.Ast_pattern0.tval cfk_concrete : (Ppxlib__.Import.override_flag, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_field_kind, 'a, 'c) Ppxlib__.Ast_pattern0.tval class_infos_attributes : (Ppxlib__.Import.attributes, 'a, 'b) Ppxlib__.Ast_pattern0.t -> ('c Ppxlib__.Import.class_infos, 'b, 'd) Ppxlib__.Ast_pattern0.t -> ('c Ppxlib__.Import.class_infos, 'a, 'd) Ppxlib__.Ast_pattern0.tval class_infos : virt:(Ppxlib__.Import.virtual_flag, 'a, 'b) Ppxlib__.Ast_pattern0.t -> params:((Ppxlib__.Import.core_type * Ppxlib__.Import.variance) list, 'b, 'c) Ppxlib__.Ast_pattern0.t -> name:(string, 'c, 'd) Ppxlib__.Ast_pattern0.t -> expr:('e, 'd, 'f) Ppxlib__.Ast_pattern0.t -> ('e Ppxlib__.Import.class_infos, 'a, 'f) Ppxlib__.Ast_pattern0.tval class_signature : self:(Ppxlib__.Import.core_type, 'a, 'b) Ppxlib__.Ast_pattern0.t -> fields:(Ppxlib__.Import.class_type_field list, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_signature, 'a, 'c) Ppxlib__.Ast_pattern0.tval class_structure : self:(Ppxlib__.Import.pattern, 'a, 'b) Ppxlib__.Ast_pattern0.t -> fields:(Ppxlib__.Import.class_field list, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_structure, 'a, 'c) Ppxlib__.Ast_pattern0.tval pcty_loc : (Ppxlib__.Import.location, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_type, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_type, 'a, 'c) Ppxlib__.Ast_pattern0.tval pcty_attributes : (Ppxlib__.Import.attributes, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_type, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_type, 'a, 'c) Ppxlib__.Ast_pattern0.tval pcty_constr : (Ppxlib__.Import.longident, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.core_type list, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_type, 'a, 'c) Ppxlib__.Ast_pattern0.tval pcty_signature : (Ppxlib__.Import.class_signature, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_type, 'a, 'b) Ppxlib__.Ast_pattern0.tval pcty_arrow : (Ppxlib__.Import.arg_label, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.core_type, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_type, 'c, 'd) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_type, 'a, 'd) Ppxlib__.Ast_pattern0.tval pcty_extension : (Ppxlib__.Import.extension, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_type, 'a, 'b) Ppxlib__.Ast_pattern0.tval pcty_open : (Ppxlib__.Import.open_description, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_type, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_type, 'a, 'c) Ppxlib__.Ast_pattern0.tval pctf_loc : (Ppxlib__.Import.location, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_type_field, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_type_field, 'a, 'c) Ppxlib__.Ast_pattern0.tval pctf_attributes : (Ppxlib__.Import.attributes, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_type_field, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_type_field, 'a, 'c) Ppxlib__.Ast_pattern0.tval pctf_inherit : (Ppxlib__.Import.class_type, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_type_field, 'a, 'b) Ppxlib__.Ast_pattern0.tval pctf_val : (Ppxlib__.Import.label Ppxlib__.Import.loc * Ppxlib__.Import.mutable_flag * Ppxlib__.Import.virtual_flag * Ppxlib__.Import.core_type, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_type_field, 'a, 'b) Ppxlib__.Ast_pattern0.tval pctf_method : (Ppxlib__.Import.label Ppxlib__.Import.loc * Ppxlib__.Import.private_flag * Ppxlib__.Import.virtual_flag * Ppxlib__.Import.core_type, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_type_field, 'a, 'b) Ppxlib__.Ast_pattern0.tval pctf_constraint : (Ppxlib__.Import.core_type * Ppxlib__.Import.core_type, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_type_field, 'a, 'b) Ppxlib__.Ast_pattern0.tval pctf_attribute : (Ppxlib__.Import.attribute, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_type_field, 'a, 'b) Ppxlib__.Ast_pattern0.tval pctf_extension : (Ppxlib__.Import.extension, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.class_type_field, 'a, 'b) Ppxlib__.Ast_pattern0.tval closed : (Ppxlib__.Import.closed_flag, 'a, 'a) Ppxlib__.Ast_pattern0.tval open_ : (Ppxlib__.Import.closed_flag, 'a, 'a) Ppxlib__.Ast_pattern0.tval pconst_integer : (string, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (char option, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.constant, 'a, 'c) Ppxlib__.Ast_pattern0.tval pconst_char : (char, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.constant, 'a, 'b) Ppxlib__.Ast_pattern0.tval pconst_string : (string, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (string option, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.constant, 'a, 'c) Ppxlib__.Ast_pattern0.tval pconst_float : (string, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (char option, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.constant, 'a, 'c) Ppxlib__.Ast_pattern0.tval pcstr_tuple : (Ppxlib__.Import.core_type list, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.constructor_arguments, 'a, 'b) Ppxlib__.Ast_pattern0.tval pcstr_record : (Ppxlib__.Import.label_declaration list, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.constructor_arguments, 'a, 'b) Ppxlib__.Ast_pattern0.tval constructor_declaration_attributes : (Ppxlib__.Import.attributes, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.constructor_declaration, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.constructor_declaration, 'a, 'c) Ppxlib__.Ast_pattern0.tval constructor_declaration : name:(string, 'a, 'b) Ppxlib__.Ast_pattern0.t -> args:(Ppxlib__.Import.constructor_arguments, 'b, 'c) Ppxlib__.Ast_pattern0.t -> res:(Ppxlib__.Import.core_type option, 'c, 'd) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.constructor_declaration, 'a, 'd) Ppxlib__.Ast_pattern0.tval ptyp_loc : (Ppxlib__.Import.location, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.core_type, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.core_type, 'a, 'c) Ppxlib__.Ast_pattern0.tval ptyp_attributes : (Ppxlib__.Import.attributes, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.core_type, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.core_type, 'a, 'c) Ppxlib__.Ast_pattern0.tval ptyp_any : (Ppxlib__.Import.core_type, 'a, 'a) Ppxlib__.Ast_pattern0.tval ptyp_var : (string, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.core_type, 'a, 'b) Ppxlib__.Ast_pattern0.tval ptyp_arrow : (Ppxlib__.Import.arg_label, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.core_type, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.core_type, 'c, 'd) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.core_type, 'a, 'd) Ppxlib__.Ast_pattern0.tval ptyp_tuple : (Ppxlib__.Import.core_type list, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.core_type, 'a, 'b) Ppxlib__.Ast_pattern0.tval ptyp_constr : (Ppxlib__.Import.longident, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.core_type list, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.core_type, 'a, 'c) Ppxlib__.Ast_pattern0.tval ptyp_object : (Ppxlib__.Import.object_field list, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.closed_flag, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.core_type, 'a, 'c) Ppxlib__.Ast_pattern0.tval ptyp_class : (Ppxlib__.Import.longident, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.core_type list, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.core_type, 'a, 'c) Ppxlib__.Ast_pattern0.tval ptyp_alias : (Ppxlib__.Import.core_type, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (string, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.core_type, 'a, 'c) Ppxlib__.Ast_pattern0.tval ptyp_variant : (Ppxlib__.Import.row_field list, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.closed_flag, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.label list option, 'c, 'd) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.core_type, 'a, 'd) Ppxlib__.Ast_pattern0.tval ptyp_poly : (string Ppxlib__.Import.loc list, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.core_type, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.core_type, 'a, 'c) Ppxlib__.Ast_pattern0.tval ptyp_package : (Ppxlib__.Import.package_type, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.core_type, 'a, 'b) Ppxlib__.Ast_pattern0.tval ptyp_extension : (Ppxlib__.Import.extension, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.core_type, 'a, 'b) Ppxlib__.Ast_pattern0.tval upto : (Ppxlib__.Import.direction_flag, 'a, 'a) Ppxlib__.Ast_pattern0.tval downto_ : (Ppxlib__.Import.direction_flag, 'a, 'a) Ppxlib__.Ast_pattern0.tval pdira_loc : (Ppxlib__.Import.location, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.directive_argument, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.directive_argument, 'a, 'c) Ppxlib__.Ast_pattern0.tval pdir_string : (string, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.directive_argument, 'a, 'b) Ppxlib__.Ast_pattern0.tval pdir_int : (string, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (char option, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.directive_argument, 'a, 'c) Ppxlib__.Ast_pattern0.tval pdir_ident : (Ppxlib__.Import.longident, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.directive_argument, 'a, 'b) Ppxlib__.Ast_pattern0.tval pdir_bool : (bool, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.directive_argument, 'a, 'b) Ppxlib__.Ast_pattern0.tval pexp_loc : (Ppxlib__.Import.location, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'a, 'c) Ppxlib__.Ast_pattern0.tval pexp_attributes : (Ppxlib__.Import.attributes, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'a, 'c) Ppxlib__.Ast_pattern0.tval pexp_ident : (Ppxlib__.Import.longident, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'a, 'b) Ppxlib__.Ast_pattern0.tval pexp_constant : (Ppxlib__.Import.constant, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'a, 'b) Ppxlib__.Ast_pattern0.tval pexp_let : (Ppxlib__.Import.rec_flag, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.value_binding list, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'c, 'd) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'a, 'd) Ppxlib__.Ast_pattern0.tval pexp_function : (Ppxlib__.Import.case list, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'a, 'b) Ppxlib__.Ast_pattern0.tval pexp_fun : (Ppxlib__.Import.arg_label, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression option, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.pattern, 'c, 'd) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'd, 'e) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'a, 'e) Ppxlib__.Ast_pattern0.tval pexp_apply : (Ppxlib__.Import.expression, 'a, 'b) Ppxlib__.Ast_pattern0.t -> ((Ppxlib__.Import.arg_label * Ppxlib__.Import.expression) list, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'a, 'c) Ppxlib__.Ast_pattern0.tval pexp_match : (Ppxlib__.Import.expression, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.case list, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'a, 'c) Ppxlib__.Ast_pattern0.tval pexp_try : (Ppxlib__.Import.expression, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.case list, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'a, 'c) Ppxlib__.Ast_pattern0.tval pexp_tuple : (Ppxlib__.Import.expression list, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'a, 'b) Ppxlib__.Ast_pattern0.tval pexp_construct : (Ppxlib__.Import.longident, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression option, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'a, 'c) Ppxlib__.Ast_pattern0.tval pexp_variant : (Ppxlib__.Import.label, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression option, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'a, 'c) Ppxlib__.Ast_pattern0.tval pexp_record : ((Ppxlib__.Import.longident_loc * Ppxlib__.Import.expression) list, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression option, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'a, 'c) Ppxlib__.Ast_pattern0.tval pexp_field : (Ppxlib__.Import.expression, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.longident, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'a, 'c) Ppxlib__.Ast_pattern0.tval pexp_setfield : (Ppxlib__.Import.expression, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.longident, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'c, 'd) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'a, 'd) Ppxlib__.Ast_pattern0.tval pexp_array : (Ppxlib__.Import.expression list, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'a, 'b) Ppxlib__.Ast_pattern0.tval pexp_ifthenelse : (Ppxlib__.Import.expression, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression option, 'c, 'd) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'a, 'd) Ppxlib__.Ast_pattern0.tval pexp_sequence : (Ppxlib__.Import.expression, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'a, 'c) Ppxlib__.Ast_pattern0.tval pexp_while : (Ppxlib__.Import.expression, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'a, 'c) Ppxlib__.Ast_pattern0.tval pexp_for : (Ppxlib__.Import.pattern, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'c, 'd) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.direction_flag, 'd, 'e) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'e, 'f) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'a, 'f) Ppxlib__.Ast_pattern0.tval pexp_constraint : (Ppxlib__.Import.expression, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.core_type, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'a, 'c) Ppxlib__.Ast_pattern0.tval pexp_coerce : (Ppxlib__.Import.expression, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.core_type option, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.core_type, 'c, 'd) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'a, 'd) Ppxlib__.Ast_pattern0.tval pexp_send : (Ppxlib__.Import.expression, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.label, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'a, 'c) Ppxlib__.Ast_pattern0.tval pexp_new : (Ppxlib__.Import.longident, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'a, 'b) Ppxlib__.Ast_pattern0.tval pexp_setinstvar : (Ppxlib__.Import.label, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'a, 'c) Ppxlib__.Ast_pattern0.tval pexp_override : ((Ppxlib__.Import.label Ppxlib__.Import.loc * Ppxlib__.Import.expression) list, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'a, 'b) Ppxlib__.Ast_pattern0.tval pexp_letmodule : (string option, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.module_expr, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'c, 'd) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'a, 'd) Ppxlib__.Ast_pattern0.tval pexp_letexception : (Ppxlib__.Import.extension_constructor, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'a, 'c) Ppxlib__.Ast_pattern0.tval pexp_assert : (Ppxlib__.Import.expression, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'a, 'b) Ppxlib__.Ast_pattern0.tval pexp_lazy : (Ppxlib__.Import.expression, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'a, 'b) Ppxlib__.Ast_pattern0.tval pexp_poly : (Ppxlib__.Import.expression, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.core_type option, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'a, 'c) Ppxlib__.Ast_pattern0.tval pexp_object : (Ppxlib__.Import.class_structure, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'a, 'b) Ppxlib__.Ast_pattern0.tval pexp_newtype : (string, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'a, 'c) Ppxlib__.Ast_pattern0.tval pexp_pack : (Ppxlib__.Import.module_expr, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'a, 'b) Ppxlib__.Ast_pattern0.tval pexp_open : (Ppxlib__.Import.open_declaration, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'a, 'c) Ppxlib__.Ast_pattern0.tval pexp_letop : (Ppxlib__.Import.letop, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'a, 'b) Ppxlib__.Ast_pattern0.tval pexp_extension : (Ppxlib__.Import.extension, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression, 'a, 'b) Ppxlib__.Ast_pattern0.tval pexp_unreachable : (Ppxlib__.Import.expression, 'a, 'a) Ppxlib__.Ast_pattern0.tval extension_constructor_attributes : (Ppxlib__.Import.attributes, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.extension_constructor, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.extension_constructor, 'a, 'c) Ppxlib__.Ast_pattern0.tval extension_constructor : name:(string, 'a, 'b) Ppxlib__.Ast_pattern0.t -> kind:(Ppxlib__.Import.extension_constructor_kind, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.extension_constructor, 'a, 'c) Ppxlib__.Ast_pattern0.tval pext_decl : (Ppxlib__.Import.constructor_arguments, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.core_type option, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.extension_constructor_kind, 'a, 'c) Ppxlib__.Ast_pattern0.tval pext_rebind : (Ppxlib__.Import.longident, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.extension_constructor_kind, 'a, 'b) Ppxlib__.Ast_pattern0.tval unit : (Ppxlib__.Import.functor_parameter, 'a, 'a) Ppxlib__.Ast_pattern0.tval named : (string option, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.module_type, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.functor_parameter, 'a, 'c) Ppxlib__.Ast_pattern0.tval include_infos_attributes : (Ppxlib__.Import.attributes, 'a, 'b) Ppxlib__.Ast_pattern0.t -> ('c Ppxlib__.Import.include_infos, 'b, 'd) Ppxlib__.Ast_pattern0.t -> ('c Ppxlib__.Import.include_infos, 'a, 'd) Ppxlib__.Ast_pattern0.tval include_infos : mod_:('a, 'b, 'c) Ppxlib__.Ast_pattern0.t -> ('a Ppxlib__.Import.include_infos, 'b, 'c) Ppxlib__.Ast_pattern0.tval label_declaration_attributes : (Ppxlib__.Import.attributes, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.label_declaration, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.label_declaration, 'a, 'c) Ppxlib__.Ast_pattern0.tval label_declaration : name:(string, 'a, 'b) Ppxlib__.Ast_pattern0.t -> mutable_:(Ppxlib__.Import.mutable_flag, 'b, 'c) Ppxlib__.Ast_pattern0.t -> type_:(Ppxlib__.Import.core_type, 'c, 'd) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.label_declaration, 'a, 'd) Ppxlib__.Ast_pattern0.tval letop : let_:(Ppxlib__.Import.binding_op, 'a, 'b) Ppxlib__.Ast_pattern0.t -> ands:(Ppxlib__.Import.binding_op list, 'b, 'c) Ppxlib__.Ast_pattern0.t -> body:(Ppxlib__.Import.expression, 'c, 'd) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.letop, 'a, 'd) Ppxlib__.Ast_pattern0.tval location : start:(Ppxlib__.Import.position, 'a, 'b) Ppxlib__.Ast_pattern0.t -> end_:(Ppxlib__.Import.position, 'b, 'c) Ppxlib__.Ast_pattern0.t -> ghost:(bool, 'c, 'd) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.location, 'a, 'd) Ppxlib__.Ast_pattern0.tval lident : (string, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.longident, 'a, 'b) Ppxlib__.Ast_pattern0.tval ldot : (Ppxlib__.Import.longident, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (string, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.longident, 'a, 'c) Ppxlib__.Ast_pattern0.tval lapply : (Ppxlib__.Import.longident, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.longident, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.longident, 'a, 'c) Ppxlib__.Ast_pattern0.tval module_binding_attributes : (Ppxlib__.Import.attributes, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.module_binding, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.module_binding, 'a, 'c) Ppxlib__.Ast_pattern0.tval module_binding : name:(string option, 'a, 'b) Ppxlib__.Ast_pattern0.t -> expr:(Ppxlib__.Import.module_expr, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.module_binding, 'a, 'c) Ppxlib__.Ast_pattern0.tval module_declaration_attributes : (Ppxlib__.Import.attributes, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.module_declaration, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.module_declaration, 'a, 'c) Ppxlib__.Ast_pattern0.tval module_declaration : name:(string option, 'a, 'b) Ppxlib__.Ast_pattern0.t -> type_:(Ppxlib__.Import.module_type, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.module_declaration, 'a, 'c) Ppxlib__.Ast_pattern0.tval pmod_loc : (Ppxlib__.Import.location, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.module_expr, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.module_expr, 'a, 'c) Ppxlib__.Ast_pattern0.tval pmod_attributes : (Ppxlib__.Import.attributes, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.module_expr, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.module_expr, 'a, 'c) Ppxlib__.Ast_pattern0.tval pmod_ident : (Ppxlib__.Import.longident, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.module_expr, 'a, 'b) Ppxlib__.Ast_pattern0.tval pmod_structure : (Ppxlib__.Import.structure, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.module_expr, 'a, 'b) Ppxlib__.Ast_pattern0.tval pmod_functor : (Ppxlib__.Import.functor_parameter, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.module_expr, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.module_expr, 'a, 'c) Ppxlib__.Ast_pattern0.tval pmod_apply : (Ppxlib__.Import.module_expr, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.module_expr, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.module_expr, 'a, 'c) Ppxlib__.Ast_pattern0.tval pmod_constraint : (Ppxlib__.Import.module_expr, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.module_type, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.module_expr, 'a, 'c) Ppxlib__.Ast_pattern0.tval pmod_unpack : (Ppxlib__.Import.expression, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.module_expr, 'a, 'b) Ppxlib__.Ast_pattern0.tval pmod_extension : (Ppxlib__.Import.extension, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.module_expr, 'a, 'b) Ppxlib__.Ast_pattern0.tval module_substitution_attributes : (Ppxlib__.Import.attributes, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.module_substitution, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.module_substitution, 'a, 'c) Ppxlib__.Ast_pattern0.tval module_substitution : name:(string, 'a, 'b) Ppxlib__.Ast_pattern0.t -> manifest:(Ppxlib__.Import.longident, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.module_substitution, 'a, 'c) Ppxlib__.Ast_pattern0.tval pmty_loc : (Ppxlib__.Import.location, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.module_type, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.module_type, 'a, 'c) Ppxlib__.Ast_pattern0.tval pmty_attributes : (Ppxlib__.Import.attributes, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.module_type, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.module_type, 'a, 'c) Ppxlib__.Ast_pattern0.tval pmty_ident : (Ppxlib__.Import.longident, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.module_type, 'a, 'b) Ppxlib__.Ast_pattern0.tval pmty_signature : (Ppxlib__.Import.signature, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.module_type, 'a, 'b) Ppxlib__.Ast_pattern0.tval pmty_functor : (Ppxlib__.Import.functor_parameter, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.module_type, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.module_type, 'a, 'c) Ppxlib__.Ast_pattern0.tval pmty_with : (Ppxlib__.Import.module_type, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.with_constraint list, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.module_type, 'a, 'c) Ppxlib__.Ast_pattern0.tval pmty_typeof : (Ppxlib__.Import.module_expr, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.module_type, 'a, 'b) Ppxlib__.Ast_pattern0.tval pmty_extension : (Ppxlib__.Import.extension, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.module_type, 'a, 'b) Ppxlib__.Ast_pattern0.tval pmty_alias : (Ppxlib__.Import.longident, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.module_type, 'a, 'b) Ppxlib__.Ast_pattern0.tval module_type_declaration_attributes : (Ppxlib__.Import.attributes, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.module_type_declaration, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.module_type_declaration, 'a, 'c) Ppxlib__.Ast_pattern0.tval module_type_declaration : name:(string, 'a, 'b) Ppxlib__.Ast_pattern0.t -> type_:(Ppxlib__.Import.module_type option, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.module_type_declaration, 'a, 'c) Ppxlib__.Ast_pattern0.tval immutable : (Ppxlib__.Import.mutable_flag, 'a, 'a) Ppxlib__.Ast_pattern0.tval mutable_ : (Ppxlib__.Import.mutable_flag, 'a, 'a) Ppxlib__.Ast_pattern0.tval pof_loc : (Ppxlib__.Import.location, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.object_field, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.object_field, 'a, 'c) Ppxlib__.Ast_pattern0.tval pof_attributes : (Ppxlib__.Import.attributes, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.object_field, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.object_field, 'a, 'c) Ppxlib__.Ast_pattern0.tval otag : (Ppxlib__.Import.label, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.core_type, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.object_field, 'a, 'c) Ppxlib__.Ast_pattern0.tval oinherit : (Ppxlib__.Import.core_type, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.object_field, 'a, 'b) Ppxlib__.Ast_pattern0.tval open_infos_attributes : (Ppxlib__.Import.attributes, 'a, 'b) Ppxlib__.Ast_pattern0.t -> ('c Ppxlib__.Import.open_infos, 'b, 'd) Ppxlib__.Ast_pattern0.t -> ('c Ppxlib__.Import.open_infos, 'a, 'd) Ppxlib__.Ast_pattern0.tval open_infos : expr:('a, 'b, 'c) Ppxlib__.Ast_pattern0.t -> override:(Ppxlib__.Import.override_flag, 'c, 'd) Ppxlib__.Ast_pattern0.t -> ('a Ppxlib__.Import.open_infos, 'b, 'd) Ppxlib__.Ast_pattern0.tval override : (Ppxlib__.Import.override_flag, 'a, 'a) Ppxlib__.Ast_pattern0.tval fresh : (Ppxlib__.Import.override_flag, 'a, 'a) Ppxlib__.Ast_pattern0.tval ppat_loc : (Ppxlib__.Import.location, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.pattern, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.pattern, 'a, 'c) Ppxlib__.Ast_pattern0.tval ppat_attributes : (Ppxlib__.Import.attributes, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.pattern, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.pattern, 'a, 'c) Ppxlib__.Ast_pattern0.tval ppat_any : (Ppxlib__.Import.pattern, 'a, 'a) Ppxlib__.Ast_pattern0.tval ppat_var : (string, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.pattern, 'a, 'b) Ppxlib__.Ast_pattern0.tval ppat_alias : (Ppxlib__.Import.pattern, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (string, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.pattern, 'a, 'c) Ppxlib__.Ast_pattern0.tval ppat_constant : (Ppxlib__.Import.constant, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.pattern, 'a, 'b) Ppxlib__.Ast_pattern0.tval ppat_interval : (Ppxlib__.Import.constant, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.constant, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.pattern, 'a, 'c) Ppxlib__.Ast_pattern0.tval ppat_tuple : (Ppxlib__.Import.pattern list, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.pattern, 'a, 'b) Ppxlib__.Ast_pattern0.tval ppat_construct : (Ppxlib__.Import.longident, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.pattern option, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.pattern, 'a, 'c) Ppxlib__.Ast_pattern0.tval ppat_variant : (Ppxlib__.Import.label, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.pattern option, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.pattern, 'a, 'c) Ppxlib__.Ast_pattern0.tval ppat_record : ((Ppxlib__.Import.longident_loc * Ppxlib__.Import.pattern) list, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.closed_flag, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.pattern, 'a, 'c) Ppxlib__.Ast_pattern0.tval ppat_array : (Ppxlib__.Import.pattern list, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.pattern, 'a, 'b) Ppxlib__.Ast_pattern0.tval ppat_or : (Ppxlib__.Import.pattern, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.pattern, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.pattern, 'a, 'c) Ppxlib__.Ast_pattern0.tval ppat_constraint : (Ppxlib__.Import.pattern, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.core_type, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.pattern, 'a, 'c) Ppxlib__.Ast_pattern0.tval ppat_type : (Ppxlib__.Import.longident, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.pattern, 'a, 'b) Ppxlib__.Ast_pattern0.tval ppat_lazy : (Ppxlib__.Import.pattern, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.pattern, 'a, 'b) Ppxlib__.Ast_pattern0.tval ppat_unpack : (string option, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.pattern, 'a, 'b) Ppxlib__.Ast_pattern0.tval ppat_exception : (Ppxlib__.Import.pattern, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.pattern, 'a, 'b) Ppxlib__.Ast_pattern0.tval ppat_extension : (Ppxlib__.Import.extension, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.pattern, 'a, 'b) Ppxlib__.Ast_pattern0.tval ppat_open : (Ppxlib__.Import.longident, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.pattern, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.pattern, 'a, 'c) Ppxlib__.Ast_pattern0.tval pstr : (Ppxlib__.Import.structure, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.payload, 'a, 'b) Ppxlib__.Ast_pattern0.tval psig : (Ppxlib__.Import.signature, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.payload, 'a, 'b) Ppxlib__.Ast_pattern0.tval ptyp : (Ppxlib__.Import.core_type, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.payload, 'a, 'b) Ppxlib__.Ast_pattern0.tval ppat : (Ppxlib__.Import.pattern, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.expression option, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.payload, 'a, 'c) Ppxlib__.Ast_pattern0.tval position : fname:(string, 'a, 'b) Ppxlib__.Ast_pattern0.t -> lnum:(int, 'b, 'c) Ppxlib__.Ast_pattern0.t -> bol:(int, 'c, 'd) Ppxlib__.Ast_pattern0.t -> cnum:(int, 'd, 'e) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.position, 'a, 'e) Ppxlib__.Ast_pattern0.tval private_ : (Ppxlib__.Import.private_flag, 'a, 'a) Ppxlib__.Ast_pattern0.tval public : (Ppxlib__.Import.private_flag, 'a, 'a) Ppxlib__.Ast_pattern0.tval nonrecursive : (Ppxlib__.Import.rec_flag, 'a, 'a) Ppxlib__.Ast_pattern0.tval recursive : (Ppxlib__.Import.rec_flag, 'a, 'a) Ppxlib__.Ast_pattern0.tval prf_loc : (Ppxlib__.Import.location, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.row_field, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.row_field, 'a, 'c) Ppxlib__.Ast_pattern0.tval prf_attributes : (Ppxlib__.Import.attributes, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.row_field, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.row_field, 'a, 'c) Ppxlib__.Ast_pattern0.tval rtag : (Ppxlib__.Import.label, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (bool, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.core_type list, 'c, 'd) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.row_field, 'a, 'd) Ppxlib__.Ast_pattern0.tval rinherit : (Ppxlib__.Import.core_type, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.row_field, 'a, 'b) Ppxlib__.Ast_pattern0.tval psig_loc : (Ppxlib__.Import.location, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.signature_item, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.signature_item, 'a, 'c) Ppxlib__.Ast_pattern0.tval psig_value : (Ppxlib__.Import.value_description, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.signature_item, 'a, 'b) Ppxlib__.Ast_pattern0.tval psig_type : (Ppxlib__.Import.rec_flag, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.type_declaration list, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.signature_item, 'a, 'c) Ppxlib__.Ast_pattern0.tval psig_typesubst : (Ppxlib__.Import.type_declaration list, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.signature_item, 'a, 'b) Ppxlib__.Ast_pattern0.tval psig_typext : (Ppxlib__.Import.type_extension, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.signature_item, 'a, 'b) Ppxlib__.Ast_pattern0.tval psig_exception : (Ppxlib__.Import.type_exception, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.signature_item, 'a, 'b) Ppxlib__.Ast_pattern0.tval psig_module : (Ppxlib__.Import.module_declaration, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.signature_item, 'a, 'b) Ppxlib__.Ast_pattern0.tval psig_modsubst : (Ppxlib__.Import.module_substitution, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.signature_item, 'a, 'b) Ppxlib__.Ast_pattern0.tval psig_recmodule : (Ppxlib__.Import.module_declaration list, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.signature_item, 'a, 'b) Ppxlib__.Ast_pattern0.tval psig_modtype : (Ppxlib__.Import.module_type_declaration, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.signature_item, 'a, 'b) Ppxlib__.Ast_pattern0.tval psig_open : (Ppxlib__.Import.open_description, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.signature_item, 'a, 'b) Ppxlib__.Ast_pattern0.tval psig_include : (Ppxlib__.Import.include_description, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.signature_item, 'a, 'b) Ppxlib__.Ast_pattern0.tval psig_class : (Ppxlib__.Import.class_description list, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.signature_item, 'a, 'b) Ppxlib__.Ast_pattern0.tval psig_class_type : (Ppxlib__.Import.class_type_declaration list, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.signature_item, 'a, 'b) Ppxlib__.Ast_pattern0.tval psig_attribute : (Ppxlib__.Import.attribute, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.signature_item, 'a, 'b) Ppxlib__.Ast_pattern0.tval psig_extension : (Ppxlib__.Import.extension, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.attributes, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.signature_item, 'a, 'c) Ppxlib__.Ast_pattern0.tval pstr_loc : (Ppxlib__.Import.location, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.structure_item, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.structure_item, 'a, 'c) Ppxlib__.Ast_pattern0.tval pstr_eval : (Ppxlib__.Import.expression, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.attributes, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.structure_item, 'a, 'c) Ppxlib__.Ast_pattern0.tval pstr_value : (Ppxlib__.Import.rec_flag, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.value_binding list, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.structure_item, 'a, 'c) Ppxlib__.Ast_pattern0.tval pstr_primitive : (Ppxlib__.Import.value_description, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.structure_item, 'a, 'b) Ppxlib__.Ast_pattern0.tval pstr_type : (Ppxlib__.Import.rec_flag, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.type_declaration list, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.structure_item, 'a, 'c) Ppxlib__.Ast_pattern0.tval pstr_typext : (Ppxlib__.Import.type_extension, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.structure_item, 'a, 'b) Ppxlib__.Ast_pattern0.tval pstr_exception : (Ppxlib__.Import.type_exception, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.structure_item, 'a, 'b) Ppxlib__.Ast_pattern0.tval pstr_module : (Ppxlib__.Import.module_binding, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.structure_item, 'a, 'b) Ppxlib__.Ast_pattern0.tval pstr_recmodule : (Ppxlib__.Import.module_binding list, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.structure_item, 'a, 'b) Ppxlib__.Ast_pattern0.tval pstr_modtype : (Ppxlib__.Import.module_type_declaration, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.structure_item, 'a, 'b) Ppxlib__.Ast_pattern0.tval pstr_open : (Ppxlib__.Import.open_declaration, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.structure_item, 'a, 'b) Ppxlib__.Ast_pattern0.tval pstr_class : (Ppxlib__.Import.class_declaration list, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.structure_item, 'a, 'b) Ppxlib__.Ast_pattern0.tval pstr_class_type : (Ppxlib__.Import.class_type_declaration list, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.structure_item, 'a, 'b) Ppxlib__.Ast_pattern0.tval pstr_include : (Ppxlib__.Import.include_declaration, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.structure_item, 'a, 'b) Ppxlib__.Ast_pattern0.tval pstr_attribute : (Ppxlib__.Import.attribute, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.structure_item, 'a, 'b) Ppxlib__.Ast_pattern0.tval pstr_extension : (Ppxlib__.Import.extension, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.attributes, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.structure_item, 'a, 'c) Ppxlib__.Ast_pattern0.tval toplevel_directive : name:(string, 'a, 'b) Ppxlib__.Ast_pattern0.t -> arg:(Ppxlib__.Import.directive_argument option, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.toplevel_directive, 'a, 'c) Ppxlib__.Ast_pattern0.tval ptop_def : (Ppxlib__.Import.structure, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.toplevel_phrase, 'a, 'b) Ppxlib__.Ast_pattern0.tval ptop_dir : (Ppxlib__.Import.toplevel_directive, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.toplevel_phrase, 'a, 'b) Ppxlib__.Ast_pattern0.tval type_declaration_attributes : (Ppxlib__.Import.attributes, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.type_declaration, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.type_declaration, 'a, 'c) Ppxlib__.Ast_pattern0.tval type_declaration : name:(string, 'a, 'b) Ppxlib__.Ast_pattern0.t -> params:((Ppxlib__.Import.core_type * Ppxlib__.Import.variance) list, 'b, 'c) Ppxlib__.Ast_pattern0.t -> cstrs:((Ppxlib__.Import.core_type * Ppxlib__.Import.core_type * Ppxlib__.Import.location) list, 'c, 'd) Ppxlib__.Ast_pattern0.t -> kind:(Ppxlib__.Import.type_kind, 'd, 'e) Ppxlib__.Ast_pattern0.t -> private_:(Ppxlib__.Import.private_flag, 'e, 'f) Ppxlib__.Ast_pattern0.t -> manifest:(Ppxlib__.Import.core_type option, 'f, 'g) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.type_declaration, 'a, 'g) Ppxlib__.Ast_pattern0.tval type_exception_attributes : (Ppxlib__.Import.attributes, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.type_exception, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.type_exception, 'a, 'c) Ppxlib__.Ast_pattern0.tval type_exception : constructor:(Ppxlib__.Import.extension_constructor, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.type_exception, 'a, 'b) Ppxlib__.Ast_pattern0.tval type_extension_attributes : (Ppxlib__.Import.attributes, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.type_extension, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.type_extension, 'a, 'c) Ppxlib__.Ast_pattern0.tval type_extension : path:(Ppxlib__.Import.longident, 'a, 'b) Ppxlib__.Ast_pattern0.t -> params:((Ppxlib__.Import.core_type * Ppxlib__.Import.variance) list, 'b, 'c) Ppxlib__.Ast_pattern0.t -> constructors:(Ppxlib__.Import.extension_constructor list, 'c, 'd) Ppxlib__.Ast_pattern0.t -> private_:(Ppxlib__.Import.private_flag, 'd, 'e) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.type_extension, 'a, 'e) Ppxlib__.Ast_pattern0.tval ptype_abstract : (Ppxlib__.Import.type_kind, 'a, 'a) Ppxlib__.Ast_pattern0.tval ptype_variant : (Ppxlib__.Import.constructor_declaration list, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.type_kind, 'a, 'b) Ppxlib__.Ast_pattern0.tval ptype_record : (Ppxlib__.Import.label_declaration list, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.type_kind, 'a, 'b) Ppxlib__.Ast_pattern0.tval ptype_open : (Ppxlib__.Import.type_kind, 'a, 'a) Ppxlib__.Ast_pattern0.tval value_binding_attributes : (Ppxlib__.Import.attributes, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.value_binding, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.value_binding, 'a, 'c) Ppxlib__.Ast_pattern0.tval value_binding : pat:(Ppxlib__.Import.pattern, 'a, 'b) Ppxlib__.Ast_pattern0.t -> expr:(Ppxlib__.Import.expression, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.value_binding, 'a, 'c) Ppxlib__.Ast_pattern0.tval value_description_attributes : (Ppxlib__.Import.attributes, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.value_description, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.value_description, 'a, 'c) Ppxlib__.Ast_pattern0.tval value_description : name:(string, 'a, 'b) Ppxlib__.Ast_pattern0.t -> type_:(Ppxlib__.Import.core_type, 'b, 'c) Ppxlib__.Ast_pattern0.t -> prim:(string list, 'c, 'd) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.value_description, 'a, 'd) Ppxlib__.Ast_pattern0.tval covariant : (Ppxlib__.Import.variance, 'a, 'a) Ppxlib__.Ast_pattern0.tval contravariant : (Ppxlib__.Import.variance, 'a, 'a) Ppxlib__.Ast_pattern0.tval invariant : (Ppxlib__.Import.variance, 'a, 'a) Ppxlib__.Ast_pattern0.tval virtual_ : (Ppxlib__.Import.virtual_flag, 'a, 'a) Ppxlib__.Ast_pattern0.tval concrete : (Ppxlib__.Import.virtual_flag, 'a, 'a) Ppxlib__.Ast_pattern0.tval pwith_type : (Ppxlib__.Import.longident, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.type_declaration, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.with_constraint, 'a, 'c) Ppxlib__.Ast_pattern0.tval pwith_module : (Ppxlib__.Import.longident, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.longident, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.with_constraint, 'a, 'c) Ppxlib__.Ast_pattern0.tval pwith_typesubst : (Ppxlib__.Import.longident, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.type_declaration, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.with_constraint, 'a, 'c) Ppxlib__.Ast_pattern0.tval pwith_modsubst : (Ppxlib__.Import.longident, 'a, 'b) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.longident, 'b, 'c) Ppxlib__.Ast_pattern0.t -> (Ppxlib__.Import.with_constraint, 'a, 'c) Ppxlib__.Ast_pattern0.t
val true_ : (Ppxlib__.Import.bool, 'a, 'a) tval false_ : (Ppxlib__.Import.bool, 'a, 'a) tval eint : (Ppxlib__.Import.int, 'a, 'b) t -> (Ppxlib__.Import.expression, 'a, 'b) tval echar : (Ppxlib__.Import.char, 'a, 'b) t -> (Ppxlib__.Import.expression, 'a, 'b) tval estring : (Ppxlib__.Import.string, 'a, 'b) t -> (Ppxlib__.Import.expression, 'a, 'b) tval efloat : (Ppxlib__.Import.string, 'a, 'b) t -> (Ppxlib__.Import.expression, 'a, 'b) tval eint32 : (Ppxlib__.Import.int32, 'a, 'b) t -> (Ppxlib__.Import.expression, 'a, 'b) tval eint64 : (Ppxlib__.Import.int64, 'a, 'b) t -> (Ppxlib__.Import.expression, 'a, 'b) tval enativeint : (Ppxlib__.Import.nativeint, 'a, 'b) t -> (Ppxlib__.Import.expression, 'a, 'b) tval pint : (Ppxlib__.Import.int, 'a, 'b) t -> (Ppxlib__.Import.pattern, 'a, 'b) tval pchar : (Ppxlib__.Import.char, 'a, 'b) t -> (Ppxlib__.Import.pattern, 'a, 'b) tval pstring : (Ppxlib__.Import.string, 'a, 'b) t -> (Ppxlib__.Import.pattern, 'a, 'b) tval pfloat : (Ppxlib__.Import.string, 'a, 'b) t -> (Ppxlib__.Import.pattern, 'a, 'b) tval pint32 : (Ppxlib__.Import.int32, 'a, 'b) t -> (Ppxlib__.Import.pattern, 'a, 'b) tval pint64 : (Ppxlib__.Import.int64, 'a, 'b) t -> (Ppxlib__.Import.pattern, 'a, 'b) tval pnativeint : (Ppxlib__.Import.nativeint, 'a, 'b) t -> (Ppxlib__.Import.pattern, 'a, 'b) tval single_expr_payload : (Ppxlib__.Import.expression, 'a, 'b) t -> (Ppxlib__.Import.payload, 'a, 'b) tval no_label : (Ppxlib__.Import.expression, 'a, 'b) t -> (Ppxlib__.Import.Asttypes.arg_label * Ppxlib__.Import.expression, 'a, 'b) tval attribute : name:(Ppxlib__.Import.string, 'a, 'b) t -> payload:(Ppxlib__.Import.payload, 'b, 'c) t -> (Ppxlib__.Import.attribute, 'a, 'c) tval extension : (Ppxlib__.Import.string, 'a, 'b) t -> (Ppxlib__.Import.payload, 'b, 'c) t -> (Ppxlib__.Import.extension, 'a, 'c) tval elist : (Ppxlib__.Import.expression, 'a -> 'a, 'b) t -> (Ppxlib__.Import.expression, 'b Ppxlib__.Import.list -> 'c, 'c) t
val of_func : (context -> Ppxlib.Location.t -> 'a -> 'b -> 'c) -> ('a, 'b, 'c) tval to_func : ('a, 'b, 'c) t -> context -> Ppxlib.Location.t -> 'a -> 'b -> 'c