# Module Ast_406.Ast_helper.Pat

    module Pat: sig .. end

    val mk : ?loc:Location.t ->
           ?attrs:Ast_406.Parsetree.attributes ->
           Ast_406.Parsetree.pattern_desc -> Ast_406.Parsetree.pattern

    val attr : Ast_406.Parsetree.pattern ->
           Ast_406.Parsetree.attribute -> Ast_406.Parsetree.pattern

    val any : ?loc:Location.t ->
           ?attrs:Ast_406.Parsetree.attributes -> unit -> Ast_406.Parsetree.pattern

    val var : ?loc:Location.t ->
           ?attrs:Ast_406.Parsetree.attributes ->
           string Ast_406.Asttypes.loc -> Ast_406.Parsetree.pattern

    val alias : ?loc:Location.t ->
           ?attrs:Ast_406.Parsetree.attributes ->
           Ast_406.Parsetree.pattern ->
           string Ast_406.Asttypes.loc -> Ast_406.Parsetree.pattern

    val constant : ?loc:Location.t ->
           ?attrs:Ast_406.Parsetree.attributes ->
           Ast_406.Parsetree.constant -> Ast_406.Parsetree.pattern

    val interval : ?loc:Location.t ->
           ?attrs:Ast_406.Parsetree.attributes ->
           Ast_406.Parsetree.constant ->
           Ast_406.Parsetree.constant -> Ast_406.Parsetree.pattern

    val tuple : ?loc:Location.t ->
           ?attrs:Ast_406.Parsetree.attributes ->
           Ast_406.Parsetree.pattern list -> Ast_406.Parsetree.pattern

    val construct : ?loc:Location.t ->
           ?attrs:Ast_406.Parsetree.attributes ->
           Longident.t Ast_406.Asttypes.loc ->
           Ast_406.Parsetree.pattern option -> Ast_406.Parsetree.pattern

    val variant : ?loc:Location.t ->
           ?attrs:Ast_406.Parsetree.attributes ->
           Ast_406.Asttypes.label ->
           Ast_406.Parsetree.pattern option -> Ast_406.Parsetree.pattern

    val record : ?loc:Location.t ->
           ?attrs:Ast_406.Parsetree.attributes ->
           (Longident.t Ast_406.Asttypes.loc * Ast_406.Parsetree.pattern) list ->
           Ast_406.Asttypes.closed_flag -> Ast_406.Parsetree.pattern

    val array : ?loc:Location.t ->
           ?attrs:Ast_406.Parsetree.attributes ->
           Ast_406.Parsetree.pattern list -> Ast_406.Parsetree.pattern

    val or_ : ?loc:Location.t ->
           ?attrs:Ast_406.Parsetree.attributes ->
           Ast_406.Parsetree.pattern ->
           Ast_406.Parsetree.pattern -> Ast_406.Parsetree.pattern

    val constraint_ : ?loc:Location.t ->
           ?attrs:Ast_406.Parsetree.attributes ->
           Ast_406.Parsetree.pattern ->
           Ast_406.Parsetree.core_type -> Ast_406.Parsetree.pattern

    val type_ : ?loc:Location.t ->
           ?attrs:Ast_406.Parsetree.attributes ->
           Longident.t Ast_406.Asttypes.loc -> Ast_406.Parsetree.pattern

    val lazy_ : ?loc:Location.t ->
           ?attrs:Ast_406.Parsetree.attributes ->
           Ast_406.Parsetree.pattern -> Ast_406.Parsetree.pattern

    val unpack : ?loc:Location.t ->
           ?attrs:Ast_406.Parsetree.attributes ->
           string Ast_406.Asttypes.loc -> Ast_406.Parsetree.pattern

    val open_ : ?loc:Location.t ->
           ?attrs:Ast_406.Parsetree.attributes ->
           Longident.t Ast_406.Asttypes.loc ->
           Ast_406.Parsetree.pattern -> Ast_406.Parsetree.pattern

    val exception_ : ?loc:Location.t ->
           ?attrs:Ast_406.Parsetree.attributes ->
           Ast_406.Parsetree.pattern -> Ast_406.Parsetree.pattern

    val extension : ?loc:Location.t ->
           ?attrs:Ast_406.Parsetree.attributes ->
           Ast_406.Parsetree.extension -> Ast_406.Parsetree.pattern