# Module Ast_helper.Exp

    module Exp: sig .. end

Expressions

    val mk : ?loc:Ast_helper.loc ->
           ?attrs:Ast_helper.attrs -> Parsetree.expression_desc -> Parsetree.expression

    val attr : Parsetree.expression -> Parsetree.attribute -> Parsetree.expression

    val ident : ?loc:Ast_helper.loc ->
           ?attrs:Ast_helper.attrs -> Ast_helper.lid -> Parsetree.expression

    val constant : ?loc:Ast_helper.loc ->
           ?attrs:Ast_helper.attrs -> Parsetree.constant -> Parsetree.expression

    val let_ : ?loc:Ast_helper.loc ->
           ?attrs:Ast_helper.attrs ->
           Asttypes.rec_flag ->
           Parsetree.value_binding list -> Parsetree.expression -> Parsetree.expression

    val function_ : ?loc:Ast_helper.loc ->
           ?attrs:Ast_helper.attrs ->
           Parsetree.function_param list ->
           Parsetree.type_constraint option ->
           Parsetree.function_body -> Parsetree.expression

    val apply : ?loc:Ast_helper.loc ->
           ?attrs:Ast_helper.attrs ->
           Parsetree.expression ->
           (Asttypes.arg_label * Parsetree.expression) list -> Parsetree.expression

    val match_ : ?loc:Ast_helper.loc ->
           ?attrs:Ast_helper.attrs ->
           Parsetree.expression -> Parsetree.case list -> Parsetree.expression

    val try_ : ?loc:Ast_helper.loc ->
           ?attrs:Ast_helper.attrs ->
           Parsetree.expression -> Parsetree.case list -> Parsetree.expression

    val tuple : ?loc:Ast_helper.loc ->
           ?attrs:Ast_helper.attrs ->
           (string option * Parsetree.expression) list -> Parsetree.expression

    val construct : ?loc:Ast_helper.loc ->
           ?attrs:Ast_helper.attrs ->
           Ast_helper.lid -> Parsetree.expression option -> Parsetree.expression

    val variant : ?loc:Ast_helper.loc ->
           ?attrs:Ast_helper.attrs ->
           Asttypes.label -> Parsetree.expression option -> Parsetree.expression

    val record : ?loc:Ast_helper.loc ->
           ?attrs:Ast_helper.attrs ->
           (Ast_helper.lid * Parsetree.expression) list ->
           Parsetree.expression option -> Parsetree.expression

    val field : ?loc:Ast_helper.loc ->
           ?attrs:Ast_helper.attrs ->
           Parsetree.expression -> Ast_helper.lid -> Parsetree.expression

    val setfield : ?loc:Ast_helper.loc ->
           ?attrs:Ast_helper.attrs ->
           Parsetree.expression ->
           Ast_helper.lid -> Parsetree.expression -> Parsetree.expression

    val array : ?loc:Ast_helper.loc ->
           ?attrs:Ast_helper.attrs -> Parsetree.expression list -> Parsetree.expression

    val ifthenelse : ?loc:Ast_helper.loc ->
           ?attrs:Ast_helper.attrs ->
           Parsetree.expression ->
           Parsetree.expression -> Parsetree.expression option -> Parsetree.expression

    val sequence : ?loc:Ast_helper.loc ->
           ?attrs:Ast_helper.attrs ->
           Parsetree.expression -> Parsetree.expression -> Parsetree.expression

    val while_ : ?loc:Ast_helper.loc ->
           ?attrs:Ast_helper.attrs ->
           Parsetree.expression -> Parsetree.expression -> Parsetree.expression

    val for_ : ?loc:Ast_helper.loc ->
           ?attrs:Ast_helper.attrs ->
           Parsetree.pattern ->
           Parsetree.expression ->
           Parsetree.expression ->
           Asttypes.direction_flag -> Parsetree.expression -> Parsetree.expression

    val coerce : ?loc:Ast_helper.loc ->
           ?attrs:Ast_helper.attrs ->
           Parsetree.expression ->
           Parsetree.core_type option -> Parsetree.core_type -> Parsetree.expression

    val constraint_ : ?loc:Ast_helper.loc ->
           ?attrs:Ast_helper.attrs ->
           Parsetree.expression -> Parsetree.core_type -> Parsetree.expression

    val send : ?loc:Ast_helper.loc ->
           ?attrs:Ast_helper.attrs ->
           Parsetree.expression -> Ast_helper.str -> Parsetree.expression

    val new_ : ?loc:Ast_helper.loc ->
           ?attrs:Ast_helper.attrs -> Ast_helper.lid -> Parsetree.expression

    val setinstvar : ?loc:Ast_helper.loc ->
           ?attrs:Ast_helper.attrs ->
           Ast_helper.str -> Parsetree.expression -> Parsetree.expression

    val override : ?loc:Ast_helper.loc ->
           ?attrs:Ast_helper.attrs ->
           (Ast_helper.str * Parsetree.expression) list -> Parsetree.expression

    val letmodule : ?loc:Ast_helper.loc ->
           ?attrs:Ast_helper.attrs ->
           Ast_helper.str_opt ->
           Parsetree.module_expr -> Parsetree.expression -> Parsetree.expression

    val letexception : ?loc:Ast_helper.loc ->
           ?attrs:Ast_helper.attrs ->
           Parsetree.extension_constructor ->
           Parsetree.expression -> Parsetree.expression

    val assert_ : ?loc:Ast_helper.loc ->
           ?attrs:Ast_helper.attrs -> Parsetree.expression -> Parsetree.expression

    val lazy_ : ?loc:Ast_helper.loc ->
           ?attrs:Ast_helper.attrs -> Parsetree.expression -> Parsetree.expression

    val poly : ?loc:Ast_helper.loc ->
           ?attrs:Ast_helper.attrs ->
           Parsetree.expression -> Parsetree.core_type option -> Parsetree.expression

    val object_ : ?loc:Ast_helper.loc ->
           ?attrs:Ast_helper.attrs -> Parsetree.class_structure -> Parsetree.expression

    val newtype : ?loc:Ast_helper.loc ->
           ?attrs:Ast_helper.attrs ->
           Ast_helper.str -> Parsetree.expression -> Parsetree.expression

    val pack : ?loc:Ast_helper.loc ->
           ?attrs:Ast_helper.attrs ->
           Parsetree.module_expr ->
           Parsetree.package_type option -> Parsetree.expression

    val open_ : ?loc:Ast_helper.loc ->
           ?attrs:Ast_helper.attrs ->
           Parsetree.open_declaration -> Parsetree.expression -> Parsetree.expression

    val letop : ?loc:Ast_helper.loc ->
           ?attrs:Ast_helper.attrs ->
           Parsetree.binding_op ->
           Parsetree.binding_op list -> Parsetree.expression -> Parsetree.expression

    val extension : ?loc:Ast_helper.loc ->
           ?attrs:Ast_helper.attrs -> Parsetree.extension -> Parsetree.expression

    val unreachable : ?loc:Ast_helper.loc ->
           ?attrs:Ast_helper.attrs -> unit -> Parsetree.expression

    val case : Parsetree.pattern ->
           ?guard:Parsetree.expression -> Parsetree.expression -> Parsetree.case

    val binding_op : Ast_helper.str ->
           Parsetree.pattern ->
           Parsetree.expression -> Ast_helper.loc -> Parsetree.binding_op