sig
(** The name of the extension, typically the module name. *)
val name : string
- (** The version of the extension, typically $Id: Camlp4.ml,v 1.3 2007/02/26 16:43:01 ertai Exp $ with a versionning system. *)
+ (** The version of the extension, typically $Id: Sig.ml,v 1.2.2.9 2007/05/10 13:31:20 pouillar Exp $ with a versionning system. *)
val version : string
end
module type Loc =
the predefined quotations for OCaml syntax trees. Default: [_loc]. *)
val name : string ref
end
- module type Warning =
- sig
- module Loc : Loc
- type t = Loc.t -> string -> unit
- val default : t
- val current : t ref
- val print : t
+ module Warning (Loc : Loc) =
+ struct
+ module type S =
+ sig
+ type warning = Loc.t -> string -> unit
+ val default_warning : warning
+ val current_warning : warning ref
+ val print_warning : warning
+ end
end
(** Base class for map traversal, it includes some builtin types. *)
class mapper =
fun f -> function | None -> None | Some x -> Some (f x)
method array : 'a 'b. ('a -> 'b) -> 'a array -> 'b array = Array.map
method ref : 'a 'b. ('a -> 'b) -> 'a ref -> 'b ref =
- fun f { contents = x } -> { contents = f x; }
+ fun f { contents = x } -> { contents = f x; }
end :
object
method string : string -> string
type match_case
type ident
type binding
+ type rec_binding
type module_binding
val loc_of_ctyp : ctyp -> Loc.t
val loc_of_patt : patt -> Loc.t
val loc_of_class_str_item : class_str_item -> Loc.t
val loc_of_with_constr : with_constr -> Loc.t
val loc_of_binding : binding -> Loc.t
+ val loc_of_rec_binding : rec_binding -> Loc.t
val loc_of_module_binding : module_binding -> Loc.t
val loc_of_match_case : match_case -> Loc.t
val loc_of_ident : ident -> Loc.t
method class_str_item : class_str_item -> class_str_item
method with_constr : with_constr -> with_constr
method binding : binding -> binding
+ method rec_binding : rec_binding -> rec_binding
method module_binding : module_binding -> module_binding
method match_case : match_case -> match_case
method ident : ident -> ident
method class_str_item : class_str_item -> 'self_type
method with_constr : with_constr -> 'self_type
method binding : binding -> 'self_type
+ method rec_binding : rec_binding -> 'self_type
method module_binding : module_binding -> 'self_type
method match_case : match_case -> 'self_type
method ident : ident -> 'self_type
It provides:
- Types for all kinds of structure.
- Map: A base class for map traversals.
- - Map classes and functions for common kinds. *)
+ - Map classes and functions for common kinds.
+
+ (* Core language *)
+ ctyp (* Representaion of types *)
+ patt (* The type of patterns *)
+ expr (* The type of expressions *)
+ match_case (* The type of cases for match/function/try constructions *)
+ ident (* The type of identifiers (including path like Foo(X).Bar.y) *)
+ binding (* The type of let bindings *)
+ rec_binding (* The type of record definitions *)
+
+ (* Modules *)
+ module_type (* The type of module types *)
+ sig_item (* The type of signature items *)
+ str_item (* The type of structure items *)
+ module_expr (* The type of module expressions *)
+ module_binding (* The type of recursive module definitions *)
+ with_constr (* The type of `with' constraints *)
+
+ (* Classes *)
+ class_type (* The type of class types *)
+ class_sig_item (* The type of class signature items *)
+ class_expr (* The type of class expressions *)
+ class_str_item (* The type of class structure items *)
+ *)
module type Camlp4Ast =
sig
module Loc : Loc
type 'a meta_list =
| LNil | LCons of 'a * 'a meta_list | LAnt of string
type ident =
- | IdAcc of Loc.t * ident * ident | (* i . i *)
- IdApp of Loc.t * ident * ident | (* i i *) IdLid of Loc.t * string
- | (* foo *) IdUid of Loc.t * string | (* Bar *)
- IdAnt of Loc.t * string
+ | (* i . i *) (* i i *) (* foo *) (* Bar *)
+ IdAcc of Loc.t * ident * ident | IdApp of Loc.t * ident * ident
+ | IdLid of Loc.t * string | IdUid of Loc.t * string
+ | IdAnt of Loc.t * string
(* $s$ *)
type ctyp =
- | TyNil of Loc.t | TyAli of Loc.t * ctyp * ctyp | (* t as t *)
- (* list 'a as 'a *) TyAny of Loc.t | (* _ *)
- TyApp of Loc.t * ctyp * ctyp | (* t t *) (* list 'a *)
- TyArr of Loc.t * ctyp * ctyp | (* t -> t *) (* int -> string *)
- TyCls of Loc.t * ident | (* #i *) (* #point *)
- TyLab of Loc.t * string * ctyp | (* ~s *) TyId of Loc.t * ident
- | (* i *) (* Lazy.t *) TyMan of Loc.t * ctyp * ctyp | (* t == t *)
- (* type t = [ A | B ] == Foo.t *)
+ | (* t as t *) (* list 'a as 'a *) (* _ *) (* t t *) (* list 'a *)
+ (* t -> t *) (* int -> string *) (* #i *) (* #point *) (* ~s *)
+ (* i *) (* Lazy.t *) (* t == t *) (* type t = [ A | B ] == Foo.t *)
(* type t 'a 'b 'c = t constraint t = t constraint t = t *)
- TyDcl of Loc.t * string * ctyp list * ctyp * (ctyp * ctyp) list
- | (* < (t)? (..)? > *) (* < move : int -> 'a .. > as 'a *)
- TyObj of Loc.t * ctyp * meta_bool | TyOlb of Loc.t * string * ctyp
- | (* ?s *) TyPol of Loc.t * ctyp * ctyp | (* ! t . t *)
- (* ! 'a . list 'a -> 'a *) TyQuo of Loc.t * string | (* 's *)
- TyQuP of Loc.t * string | (* +'s *) TyQuM of Loc.t * string
- | (* -'s *) TyVrn of Loc.t * string | (* `s *)
- TyRec of Loc.t * ctyp | (* { t } *)
- (* { foo : int ; bar : mutable string } *)
- TyCol of Loc.t * ctyp * ctyp | (* t : t *)
- TySem of Loc.t * ctyp * ctyp | (* t; t *)
- TyCom of Loc.t * ctyp * ctyp | (* t, t *) TySum of Loc.t * ctyp
- | (* [ t ] *) (* [ A of int and string | B ] *)
- TyOf of Loc.t * ctyp * ctyp | (* t of t *) (* A of int *)
- TyAnd of Loc.t * ctyp * ctyp | (* t and t *)
- TyOr of Loc.t * ctyp * ctyp | (* t | t *) TyPrv of Loc.t * ctyp
- | (* private t *) TyMut of Loc.t * ctyp | (* mutable t *)
- TyTup of Loc.t * ctyp | (* ( t ) *) (* (int * string) *)
- TySta of Loc.t * ctyp * ctyp | (* t * t *) TyVrnEq of Loc.t * ctyp
- | (* [ = t ] *) TyVrnSup of Loc.t * ctyp | (* [ > t ] *)
- TyVrnInf of Loc.t * ctyp | (* [ < t ] *)
- TyVrnInfSup of Loc.t * ctyp * ctyp | (* [ < t > t ] *)
- TyAmp of Loc.t * ctyp * ctyp | (* t & t *)
- TyOfAmp of Loc.t * ctyp * ctyp | (* t of & t *)
- TyAnt of Loc.t * string
+ (* < (t)? (..)? > *) (* < move : int -> 'a .. > as 'a *) (* ?s *)
+ (* ! t . t *) (* ! 'a . list 'a -> 'a *) (* 's *) (* +'s *)
+ (* -'s *) (* `s *) (* { t } *)
+ (* { foo : int ; bar : mutable string } *) (* t : t *) (* t; t *)
+ (* t, t *) (* [ t ] *) (* [ A of int and string | B ] *)
+ (* t of t *) (* A of int *) (* t and t *) (* t | t *)
+ (* private t *) (* mutable t *) (* ( t ) *) (* (int * string) *)
+ (* t * t *) (* [ = t ] *) (* [ > t ] *) (* [ < t ] *)
+ (* [ < t > t ] *) (* t & t *) (* t of & t *) TyNil of Loc.t
+ | TyAli of Loc.t * ctyp * ctyp | TyAny of Loc.t
+ | TyApp of Loc.t * ctyp * ctyp | TyArr of Loc.t * ctyp * ctyp
+ | TyCls of Loc.t * ident | TyLab of Loc.t * string * ctyp
+ | TyId of Loc.t * ident | TyMan of Loc.t * ctyp * ctyp
+ | TyDcl of Loc.t * string * ctyp list * ctyp * (ctyp * ctyp) list
+ | TyObj of Loc.t * ctyp * meta_bool
+ | TyOlb of Loc.t * string * ctyp | TyPol of Loc.t * ctyp * ctyp
+ | TyQuo of Loc.t * string | TyQuP of Loc.t * string
+ | TyQuM of Loc.t * string | TyVrn of Loc.t * string
+ | TyRec of Loc.t * ctyp | TyCol of Loc.t * ctyp * ctyp
+ | TySem of Loc.t * ctyp * ctyp | TyCom of Loc.t * ctyp * ctyp
+ | TySum of Loc.t * ctyp | TyOf of Loc.t * ctyp * ctyp
+ | TyAnd of Loc.t * ctyp * ctyp | TyOr of Loc.t * ctyp * ctyp
+ | TyPrv of Loc.t * ctyp | TyMut of Loc.t * ctyp
+ | TyTup of Loc.t * ctyp | TySta of Loc.t * ctyp * ctyp
+ | TyVrnEq of Loc.t * ctyp | TyVrnSup of Loc.t * ctyp
+ | TyVrnInf of Loc.t * ctyp | TyVrnInfSup of Loc.t * ctyp * ctyp
+ | TyAmp of Loc.t * ctyp * ctyp | TyOfAmp of Loc.t * ctyp * ctyp
+ | TyAnt of Loc.t * string
(* $s$ *)
type (* i *)
(* p as p *)
(* p | p *)
(* p .. p *)
(* { p } *)
- (* p = p *)
+ (* i = p *)
(* s *)
(* ( p ) *)
(* (p : t) *)
(* $s$ *)
(* b and b *)
(* let a = 42 and c = 43 *)
- (* b ; b *)
(* p = e *)
(* let patt = expr *)
(* $s$ *)
+ (* b ; b *)
+ (* i = e *)
+ (* $s$ *)
(* mb and mb *)
(* module rec (s : mt) = me and (s : mt) = me *)
(* s : mt = me *)
| PaOlb of Loc.t * string * patt
| PaOlbi of Loc.t * string * patt * expr
| PaOrp of Loc.t * patt * patt | PaRng of Loc.t * patt * patt
- | PaRec of Loc.t * patt | PaEq of Loc.t * patt * patt
+ | PaRec of Loc.t * patt | PaEq of Loc.t * ident * patt
| PaStr of Loc.t * string | PaTup of Loc.t * patt
| PaTyc of Loc.t * patt * ctyp | PaTyp of Loc.t * ident
| PaVrn of Loc.t * string
| ExLmd of Loc.t * string * module_expr * expr
| ExMat of Loc.t * expr * match_case | ExNew of Loc.t * ident
| ExObj of Loc.t * patt * class_str_item
- | ExOlb of Loc.t * string * expr | ExOvr of Loc.t * binding
- | ExRec of Loc.t * binding * expr | ExSeq of Loc.t * expr
+ | ExOlb of Loc.t * string * expr | ExOvr of Loc.t * rec_binding
+ | ExRec of Loc.t * rec_binding * expr | ExSeq of Loc.t * expr
| ExSnd of Loc.t * expr * string | ExSte of Loc.t * expr * expr
| ExStr of Loc.t * string | ExTry of Loc.t * expr * match_case
| ExTup of Loc.t * expr | ExCom of Loc.t * expr * expr
| ExTyc of Loc.t * expr * ctyp | ExVrn of Loc.t * string
| ExWhi of Loc.t * expr * expr
and module_type =
- | MtId of Loc.t * ident
+ | MtNil of Loc.t | MtId of Loc.t * ident
| MtFun of Loc.t * string * module_type * module_type
| MtQuo of Loc.t * string | MtSig of Loc.t * sig_item
| MtWit of Loc.t * module_type * with_constr
| WcAnt of Loc.t * string
and binding =
| BiNil of Loc.t | BiAnd of Loc.t * binding * binding
- | BiSem of Loc.t * binding * binding | BiEq of Loc.t * patt * expr
- | BiAnt of Loc.t * string
+ | BiEq of Loc.t * patt * expr | BiAnt of Loc.t * string
+ and rec_binding =
+ | RbNil of Loc.t | RbSem of Loc.t * rec_binding * rec_binding
+ | RbEq of Loc.t * ident * expr | RbAnt of Loc.t * string
and module_binding =
| MbNil of Loc.t | MbAnd of Loc.t * module_binding * module_binding
| MbColEq of Loc.t * string * module_type * module_expr
| McNil of Loc.t | McOr of Loc.t * match_case * match_case
| McArr of Loc.t * patt * expr * expr | McAnt of Loc.t * string
and module_expr =
- | MeId of Loc.t * ident
+ | MeNil of Loc.t | MeId of Loc.t * ident
| MeApp of Loc.t * module_expr * module_expr
| MeFun of Loc.t * string * module_type * module_expr
| MeStr of Loc.t * str_item
| CeAnd of Loc.t * class_expr * class_expr
| CeEq of Loc.t * class_expr * class_expr | CeAnt of Loc.t * string
and class_str_item =
- | CrNil of Loc.t | (* cst ; cst *)
- CrSem of Loc.t * class_str_item * class_str_item | (* type t = t *)
- CrCtr of Loc.t * ctyp * ctyp | (* inherit ce or inherit ce as s *)
- CrInh of Loc.t * class_expr * string | (* initializer e *)
- CrIni of Loc.t * expr
- | (* method (private)? s : t = e or method (private)? s = e *)
- CrMth of Loc.t * string * meta_bool * expr * ctyp
- | (* value (mutable)? s = e *)
- CrVal of Loc.t * string * meta_bool * expr
- | (* method virtual (private)? s : t *)
- CrVir of Loc.t * string * meta_bool * ctyp
- | (* value virtual (private)? s : t *)
- CrVvr of Loc.t * string * meta_bool * ctyp
+ | (* cst ; cst *) (* type t = t *)
+ (* inherit ce or inherit ce as s *) (* initializer e *)
+ (* method (private)? s : t = e or method (private)? s = e *)
+ (* value (mutable)? s = e *) (* method virtual (private)? s : t *)
+ (* value virtual (private)? s : t *) CrNil of Loc.t
+ | CrSem of Loc.t * class_str_item * class_str_item
+ | CrCtr of Loc.t * ctyp * ctyp
+ | CrInh of Loc.t * class_expr * string | CrIni of Loc.t * expr
+ | CrMth of Loc.t * string * meta_bool * expr * ctyp
+ | CrVal of Loc.t * string * meta_bool * expr
+ | CrVir of Loc.t * string * meta_bool * ctyp
+ | CrVvr of Loc.t * string * meta_bool * ctyp
| CrAnt of Loc.t * string
val loc_of_ctyp : ctyp -> Loc.t
val loc_of_patt : patt -> Loc.t
val loc_of_class_str_item : class_str_item -> Loc.t
val loc_of_with_constr : with_constr -> Loc.t
val loc_of_binding : binding -> Loc.t
+ val loc_of_rec_binding : rec_binding -> Loc.t
val loc_of_module_binding : module_binding -> Loc.t
val loc_of_match_case : match_case -> Loc.t
val loc_of_ident : ident -> Loc.t
val meta_list :
(Loc.t -> 'a -> expr) -> Loc.t -> 'a list -> expr
val meta_binding : Loc.t -> binding -> expr
+ val meta_rec_binding : Loc.t -> rec_binding -> expr
val meta_class_expr : Loc.t -> class_expr -> expr
val meta_class_sig_item : Loc.t -> class_sig_item -> expr
val meta_class_str_item : Loc.t -> class_str_item -> expr
val meta_list :
(Loc.t -> 'a -> patt) -> Loc.t -> 'a list -> patt
val meta_binding : Loc.t -> binding -> patt
+ val meta_rec_binding : Loc.t -> rec_binding -> patt
val meta_class_expr : Loc.t -> class_expr -> patt
val meta_class_sig_item : Loc.t -> class_sig_item -> patt
val meta_class_str_item : Loc.t -> class_str_item -> patt
method class_str_item : class_str_item -> class_str_item
method with_constr : with_constr -> with_constr
method binding : binding -> binding
+ method rec_binding : rec_binding -> rec_binding
method module_binding : module_binding -> module_binding
method match_case : match_case -> match_case
method ident : ident -> ident
method class_str_item : class_str_item -> 'self_type
method with_constr : with_constr -> 'self_type
method binding : binding -> 'self_type
+ method rec_binding : rec_binding -> 'self_type
method module_binding : module_binding -> 'self_type
method match_case : match_case -> 'self_type
method ident : ident -> 'self_type
end
- class c_expr : (expr -> expr) -> object inherit map end
- class c_patt : (patt -> patt) -> object inherit map end
- class c_ctyp : (ctyp -> ctyp) -> object inherit map end
- class c_str_item : (str_item -> str_item) -> object inherit map end
- class c_sig_item : (sig_item -> sig_item) -> object inherit map end
- class c_loc : (Loc.t -> Loc.t) -> object inherit map end
- val map_expr : (expr -> expr) -> expr -> expr
- val map_patt : (patt -> patt) -> patt -> patt
- val map_ctyp : (ctyp -> ctyp) -> ctyp -> ctyp
- val map_str_item : (str_item -> str_item) -> str_item -> str_item
- val map_sig_item : (sig_item -> sig_item) -> sig_item -> sig_item
- val map_loc : (Loc.t -> Loc.t) -> Loc.t -> Loc.t
+ val map_expr : (expr -> expr) -> map
+ val map_patt : (patt -> patt) -> map
+ val map_ctyp : (ctyp -> ctyp) -> map
+ val map_str_item : (str_item -> str_item) -> map
+ val map_sig_item : (sig_item -> sig_item) -> map
+ val map_loc : (Loc.t -> Loc.t) -> map
val ident_of_expr : expr -> ident
+ val ident_of_patt : patt -> ident
val ident_of_ctyp : ctyp -> ident
val biAnd_of_list : binding list -> binding
- val biSem_of_list : binding list -> binding
+ val rbSem_of_list : rec_binding list -> rec_binding
val paSem_of_list : patt list -> patt
val paCom_of_list : patt list -> patt
val tyOr_of_list : ctyp list -> ctyp
val tyAnd_of_list : ctyp list -> ctyp
+ val tyAmp_of_list : ctyp list -> ctyp
val tySem_of_list : ctyp list -> ctyp
+ val tyCom_of_list : ctyp list -> ctyp
+ val tySta_of_list : ctyp list -> ctyp
val stSem_of_list : str_item list -> str_item
val sgSem_of_list : sig_item list -> sig_item
val crSem_of_list : class_str_item list -> class_str_item
val exCom_of_list : expr list -> expr
val list_of_ctyp : ctyp -> ctyp list -> ctyp list
val list_of_binding : binding -> binding list -> binding list
+ val list_of_rec_binding :
+ rec_binding -> rec_binding list -> rec_binding list
val list_of_with_constr :
with_constr -> with_constr list -> with_constr list
val list_of_patt : patt -> patt list -> patt list
and type class_sig_item = M.class_sig_item
and type class_expr = M.class_expr
and type class_str_item = M.class_str_item and type binding = M.binding
+ and type rec_binding = M.rec_binding
and type module_binding = M.module_binding
and type match_case = M.match_case and type ident = M.ident = M
module MakeCamlp4Ast (Loc : Type) =
| PaOlb of Loc.t * string * patt
| PaOlbi of Loc.t * string * patt * expr
| PaOrp of Loc.t * patt * patt | PaRng of Loc.t * patt * patt
- | PaRec of Loc.t * patt | PaEq of Loc.t * patt * patt
+ | PaRec of Loc.t * patt | PaEq of Loc.t * ident * patt
| PaStr of Loc.t * string | PaTup of Loc.t * patt
| PaTyc of Loc.t * patt * ctyp | PaTyp of Loc.t * ident
| PaVrn of Loc.t * string
| ExLmd of Loc.t * string * module_expr * expr
| ExMat of Loc.t * expr * match_case | ExNew of Loc.t * ident
| ExObj of Loc.t * patt * class_str_item
- | ExOlb of Loc.t * string * expr | ExOvr of Loc.t * binding
- | ExRec of Loc.t * binding * expr | ExSeq of Loc.t * expr
+ | ExOlb of Loc.t * string * expr | ExOvr of Loc.t * rec_binding
+ | ExRec of Loc.t * rec_binding * expr | ExSeq of Loc.t * expr
| ExSnd of Loc.t * expr * string | ExSte of Loc.t * expr * expr
| ExStr of Loc.t * string | ExTry of Loc.t * expr * match_case
| ExTup of Loc.t * expr | ExCom of Loc.t * expr * expr
| ExTyc of Loc.t * expr * ctyp | ExVrn of Loc.t * string
| ExWhi of Loc.t * expr * expr
and module_type =
- | MtId of Loc.t * ident
+ | MtNil of Loc.t | MtId of Loc.t * ident
| MtFun of Loc.t * string * module_type * module_type
| MtQuo of Loc.t * string | MtSig of Loc.t * sig_item
| MtWit of Loc.t * module_type * with_constr
| WcAnt of Loc.t * string
and binding =
| BiNil of Loc.t | BiAnd of Loc.t * binding * binding
- | BiSem of Loc.t * binding * binding | BiEq of Loc.t * patt * expr
- | BiAnt of Loc.t * string
+ | BiEq of Loc.t * patt * expr | BiAnt of Loc.t * string
+ and rec_binding =
+ | RbNil of Loc.t | RbSem of Loc.t * rec_binding * rec_binding
+ | RbEq of Loc.t * ident * expr | RbAnt of Loc.t * string
and module_binding =
| MbNil of Loc.t | MbAnd of Loc.t * module_binding * module_binding
| MbColEq of Loc.t * string * module_type * module_expr
| McNil of Loc.t | McOr of Loc.t * match_case * match_case
| McArr of Loc.t * patt * expr * expr | McAnt of Loc.t * string
and module_expr =
- | MeId of Loc.t * ident
+ | MeNil of Loc.t | MeId of Loc.t * ident
| MeApp of Loc.t * module_expr * module_expr
| MeFun of Loc.t * string * module_type * module_expr
| MeStr of Loc.t * str_item
val fold_implem_filters :
('a -> Ast.str_item filter -> 'a) -> 'a -> 'a
end
+ module type DynAst =
+ sig
+ module Ast : Ast
+ type 'a tag
+ val ctyp_tag : Ast.ctyp tag
+ val patt_tag : Ast.patt tag
+ val expr_tag : Ast.expr tag
+ val module_type_tag : Ast.module_type tag
+ val sig_item_tag : Ast.sig_item tag
+ val with_constr_tag : Ast.with_constr tag
+ val module_expr_tag : Ast.module_expr tag
+ val str_item_tag : Ast.str_item tag
+ val class_type_tag : Ast.class_type tag
+ val class_sig_item_tag : Ast.class_sig_item tag
+ val class_expr_tag : Ast.class_expr tag
+ val class_str_item_tag : Ast.class_str_item tag
+ val match_case_tag : Ast.match_case tag
+ val ident_tag : Ast.ident tag
+ val binding_tag : Ast.binding tag
+ val rec_binding_tag : Ast.rec_binding tag
+ val module_binding_tag : Ast.module_binding tag
+ val string_of_tag : 'a tag -> string
+ module Pack (X : sig type 'a t end) :
+ sig
+ type pack
+ val pack : 'a tag -> 'a X.t -> pack
+ val unpack : 'a tag -> pack -> 'a X.t
+ val print_tag : Format.formatter -> pack -> unit
+ end
+ end
type quotation =
{ q_name : string; q_loc : string; q_shift : int; q_contents : string
}
module type Quotation =
sig
module Ast : Ast
+ module DynAst : DynAst with module Ast = Ast
open Ast
type 'a expand_fun = Loc.t -> string option -> string -> 'a
- type expander =
- | ExStr of (bool -> string expand_fun)
- | ExAst of Ast.expr expand_fun * Ast.patt expand_fun
- val add : string -> expander -> unit
- val find : string -> expander
+ val add : string -> 'a DynAst.tag -> 'a expand_fun -> unit
+ val find : string -> 'a DynAst.tag -> 'a expand_fun
val default : string ref
+ val parse_quotation_result :
+ (Loc.t -> string -> 'a) ->
+ Loc.t -> quotation -> string -> string -> 'a
val translate : (string -> string) ref
- val expand_expr :
- (Loc.t -> string -> Ast.expr) -> Loc.t -> quotation -> Ast.expr
- val expand_patt :
- (Loc.t -> string -> Ast.patt) -> Loc.t -> quotation -> Ast.patt
+ val expand : Loc.t -> quotation -> 'a DynAst.tag -> 'a
val dump_file : (string option) ref
module Error : Error
end
module Error : Error
val mk : unit -> Loc.t -> char Stream.t -> (Token.t * Loc.t) Stream.t
end
- module type Parser =
- sig
- module Ast : Ast
- open Ast
- val parse_implem :
- ?directive_handler: (str_item -> str_item option) ->
- Loc.t -> char Stream.t -> Ast.str_item
- val parse_interf :
- ?directive_handler: (sig_item -> sig_item option) ->
- Loc.t -> char Stream.t -> Ast.sig_item
+ module Parser (Ast : Ast) =
+ struct
+ module type S =
+ sig
+ val parse_implem :
+ ?directive_handler: (Ast.str_item -> Ast.str_item option) ->
+ Ast.Loc.t -> char Stream.t -> Ast.str_item
+ val parse_interf :
+ ?directive_handler: (Ast.sig_item -> Ast.sig_item option) ->
+ Ast.Loc.t -> char Stream.t -> Ast.sig_item
+ end
end
- module type Printer =
- sig
- module Ast : Ast
- val print_interf :
- ?input_file: string -> ?output_file: string -> Ast.sig_item -> unit
- val print_implem :
- ?input_file: string -> ?output_file: string -> Ast.str_item -> unit
+ module Printer (Ast : Ast) =
+ struct
+ module type S =
+ sig
+ val print_interf :
+ ?input_file: string ->
+ ?output_file: string -> Ast.sig_item -> unit
+ val print_implem :
+ ?input_file: string ->
+ ?output_file: string -> Ast.str_item -> unit
+ end
end
module type Syntax =
sig
module Loc : Loc
- module Warning : Warning with module Loc = Loc
module Ast : Ast with module Loc = Loc
module Token : Token with module Loc = Loc
module Gram : Grammar.Static with module Loc = Loc
and module Token = Token
module AntiquotSyntax : AntiquotSyntax with module Ast = Ast
module Quotation : Quotation with module Ast = Ast
- module Parser : Parser with module Ast = Ast
- module Printer : Printer with module Ast = Ast
+ include Warning(Loc).S
+ include Parser(Ast).S
+ include Printer(Ast).S
end
module type Camlp4Syntax =
sig
module Loc : Loc
- module Warning : Warning with module Loc = Loc
module Ast : Camlp4Ast with module Loc = Loc
module Token : Camlp4Token with module Loc = Loc
module Gram : Grammar.Static with module Loc = Loc
module AntiquotSyntax :
AntiquotSyntax with module Ast = Camlp4AstToAst(Ast)
module Quotation : Quotation with module Ast = Camlp4AstToAst(Ast)
- module Parser : Parser with module Ast = Camlp4AstToAst(Ast)
- module Printer : Printer with module Ast = Camlp4AstToAst(Ast)
+ include Warning(Loc).S
+ include Parser(Ast).S
+ include Printer(Ast).S
val interf : ((Ast.sig_item list) * (Loc.t option)) Gram.Entry.t
val implem : ((Ast.str_item list) * (Loc.t option)) Gram.Entry.t
val top_phrase : (Ast.str_item option) Gram.Entry.t
val a_INT64 : string Gram.Entry.t
val a_LABEL : string Gram.Entry.t
val a_LIDENT : string Gram.Entry.t
- val a_LIDENT_or_operator : string Gram.Entry.t
val a_NATIVEINT : string Gram.Entry.t
val a_OPTLABEL : string Gram.Entry.t
val a_STRING : string Gram.Entry.t
val match_case_quot : Ast.match_case Gram.Entry.t
val binding : Ast.binding Gram.Entry.t
val binding_quot : Ast.binding Gram.Entry.t
+ val rec_binding_quot : Ast.rec_binding Gram.Entry.t
val class_declaration : Ast.class_expr Gram.Entry.t
val class_description : Ast.class_type Gram.Entry.t
val class_expr : Ast.class_expr Gram.Entry.t
val expr : Ast.expr Gram.Entry.t
val expr_eoi : Ast.expr Gram.Entry.t
val expr_quot : Ast.expr Gram.Entry.t
- val field : Ast.ctyp Gram.Entry.t
- val field_expr : Ast.binding Gram.Entry.t
+ val field_expr : Ast.rec_binding Gram.Entry.t
val fun_binding : Ast.expr Gram.Entry.t
val fun_def : Ast.expr Gram.Entry.t
val ident : Ast.ident Gram.Entry.t
val ipatt_tcon : Ast.patt Gram.Entry.t
val label : string Gram.Entry.t
val label_declaration : Ast.ctyp Gram.Entry.t
- val label_expr : Ast.binding Gram.Entry.t
+ val label_expr : Ast.rec_binding Gram.Entry.t
val label_ipatt : Ast.patt Gram.Entry.t
val label_longident : Ast.ident Gram.Entry.t
val label_patt : Ast.patt Gram.Entry.t
val opt_class_self_type : Ast.ctyp Gram.Entry.t
val opt_comma_ctyp : Ast.ctyp Gram.Entry.t
val opt_dot_dot : Ast.meta_bool Gram.Entry.t
- val opt_eq_ctyp : (Ast.ctyp list -> Ast.ctyp) Gram.Entry.t
+ val opt_eq_ctyp : Ast.ctyp Gram.Entry.t
val opt_expr : Ast.expr Gram.Entry.t
val opt_meth_list : Ast.ctyp Gram.Entry.t
val opt_mutable : Ast.meta_bool Gram.Entry.t
val patt_quot : Ast.patt Gram.Entry.t
val patt_tcon : Ast.patt Gram.Entry.t
val phrase : Ast.str_item Gram.Entry.t
- val pipe_ctyp : Ast.ctyp Gram.Entry.t
val poly_type : Ast.ctyp Gram.Entry.t
val row_field : Ast.ctyp Gram.Entry.t
- val sem_ctyp : Ast.ctyp Gram.Entry.t
val sem_expr : Ast.expr Gram.Entry.t
val sem_expr_for_list : (Ast.expr -> Ast.expr) Gram.Entry.t
val sem_patt : Ast.patt Gram.Entry.t
val sem_patt_for_list : (Ast.patt -> Ast.patt) Gram.Entry.t
val semi : unit Gram.Entry.t
val sequence : Ast.expr Gram.Entry.t
+ val do_sequence : Ast.expr Gram.Entry.t
val sig_item : Ast.sig_item Gram.Entry.t
val sig_item_quot : Ast.sig_item Gram.Entry.t
val sig_items : Ast.sig_item Gram.Entry.t
val value_val : unit Gram.Entry.t
val with_constr : Ast.with_constr Gram.Entry.t
val with_constr_quot : Ast.with_constr Gram.Entry.t
+ val prefixop : Ast.expr Gram.Entry.t
+ val infixop0 : Ast.expr Gram.Entry.t
+ val infixop1 : Ast.expr Gram.Entry.t
+ val infixop2 : Ast.expr Gram.Entry.t
+ val infixop3 : Ast.expr Gram.Entry.t
+ val infixop4 : Ast.expr Gram.Entry.t
end
module type SyntaxExtension =
functor (Syn : Syntax) -> Syntax with module Loc = Syn.Loc
- and module Warning = Syn.Warning and module Ast = Syn.Ast
- and module Token = Syn.Token and module Gram = Syn.Gram
+ and module Ast = Syn.Ast and module Token = Syn.Token
+ and module Gram = Syn.Gram
and module AntiquotSyntax = Syn.AntiquotSyntax
and module Quotation = Syn.Quotation
end
(x.start.off - x.start.bol) (x.stop.off - x.start.bol)
x.stop.line (x.stop.off - x.stop.bol)
(fun o -> if x.ghost then fprintf o " (ghost)" else ())
- let start_pos = { line = 1; bol = 0; off = 0; }
+ let start_pos = { line = 1; bol = 0; off = 0; }
let ghost =
{
-
file_name = "ghost-location";
start = start_pos;
stop = start_pos;
}
let mk file_name =
{
-
file_name = file_name;
start = start_pos;
stop = start_pos;
stop_bol, stop_off, ghost)
=
{
-
file_name = file_name;
- start = { line = start_line; bol = start_bol; off = start_off; };
- stop = { line = stop_line; bol = stop_bol; off = stop_off; };
+ start = { line = start_line; bol = start_bol; off = start_off; };
+ stop = { line = stop_line; bol = stop_bol; off = stop_off; };
ghost = ghost;
}
let to_tuple {
let pos_of_lexing_position p =
let pos =
{
-
line = p.Lexing.pos_lnum;
bol = p.Lexing.pos_bol;
off = p.Lexing.pos_cnum;
in pos
let pos_to_lexing_position p file_name =
{
-
Lexing.pos_fname = file_name;
pos_lnum = p.line;
pos_bol = p.bol;
and stop = Lexing.lexeme_end_p lb in
let loc =
{
-
file_name =
better_file_name start.Lexing.pos_fname stop.Lexing.pos_fname;
start = pos_of_lexing_position start;
let of_lexing_position pos =
let loc =
{
-
file_name = pos.Lexing.pos_fname;
start = pos_of_lexing_position pos;
stop = pos_of_lexing_position pos;
in loc
let to_ocaml_location x =
{
-
Location.loc_start = pos_to_lexing_position x.start x.file_name;
loc_end = pos_to_lexing_position x.stop x.file_name;
loc_ghost = x.ghost;
let (a, b) = ((x.Location.loc_start), (x.Location.loc_end)) in
let res =
{
-
file_name =
better_file_name a.Lexing.pos_fname b.Lexing.pos_fname;
start = pos_of_lexing_position a;
else
(let r =
match ((a.ghost), (b.ghost)) with
- | (false, false) -> { (a) with stop = b.stop; }
- | (true, true) -> { (a) with stop = b.stop; }
- | (true, _) -> { (a) with stop = b.stop; }
- | (_, true) -> { (b) with start = a.start; }
+ | (false, false) -> { (a) with stop = b.stop; }
+ | (true, true) -> { (a) with stop = b.stop; }
+ | (true, _) -> { (a) with stop = b.stop; }
+ | (_, true) -> { (b) with start = a.start; }
in r)
- let join x = { (x) with stop = x.start; }
+ let join x = { (x) with stop = x.start; }
let map f start_stop_both x =
match start_stop_both with
- | `start -> { (x) with start = f x.start; }
- | `stop -> { (x) with stop = f x.stop; }
- | `both -> { (x) with start = f x.start; stop = f x.stop; }
- let move_pos chars x = { (x) with off = x.off + chars; }
+ | `start -> { (x) with start = f x.start; }
+ | `stop -> { (x) with stop = f x.stop; }
+ | `both -> { (x) with start = f x.start; stop = f x.stop; }
+ let move_pos chars x = { (x) with off = x.off + chars; }
let move s chars x = map (move_pos chars) s x
let move_line lines x =
let move_line_pos x =
- { (x) with line = x.line + lines; bol = x.off; }
+ { (x) with line = x.line + lines; bol = x.off; }
in map move_line_pos `both x
let shift width x =
- { (x) with start = x.stop; stop = move_pos width x.stop; }
+ { (x) with start = x.stop; stop = move_pos width x.stop; }
let file_name x = x.file_name
let start_line x = x.start.line
let stop_line x = x.stop.line
let start_off x = x.start.off
let stop_off x = x.stop.off
let is_ghost x = x.ghost
- let set_file_name s x = { (x) with file_name = s; }
- let ghostify x = { (x) with ghost = true; }
+ let set_file_name s x = { (x) with file_name = s; }
+ let ghostify x = { (x) with ghost = true; }
let make_absolute x =
let pwd = Sys.getcwd ()
in
if Filename.is_relative x.file_name
- then { (x) with file_name = Filename.concat pwd x.file_name; }
+ then { (x) with file_name = Filename.concat pwd x.file_name; }
else x
let strictly_before x y =
let b = (x.stop.off < y.start.off) && (x.file_name = y.file_name)
| Exc_located (_, _) -> raise exc
| _ -> raise (Exc_located (loc, exc))
end
- module Warning =
- struct
- module Make (Loc : Sig.Loc) : Sig.Warning with module Loc = Loc =
- struct
- module Loc = Loc
- open Format
- type t = Loc.t -> string -> unit
- let default loc txt = eprintf "<W> %a: %s@." Loc.print loc txt
- let current = ref default
- let print loc txt = !current loc txt
- end
- end
module Token :
sig
module Make (Loc : Sig.Loc) : Sig.Camlp4Token with module Loc = Loc
OPTLABEL s | COMMENT s | BLANKS s | ESCAPED_IDENT s -> s
| tok ->
invalid_arg
- ("Cannot extract a string from a this token: " ^
+ ("Cannot extract a string from this token: " ^
(to_string tok))
module Error =
struct
Stream.icons x
(Stream.slazy (fun _ -> ignore_layout s)))
| _ -> Stream.sempty
- let mk is_kwd = { is_kwd = is_kwd; filter = ignore_layout; }
+ let mk is_kwd = { is_kwd = is_kwd; filter = ignore_layout; }
let filter x =
let f tok loc =
let tok = keyword_conversion tok x.is_kwd
open Error
type context =
{ loc : Loc.t; in_comment : bool; quotations : bool;
- lexbuf : lexbuf; buffer : Buffer.t
+ antiquots : bool; lexbuf : lexbuf; buffer : Buffer.t
}
let default_context lb =
{
-
loc = Loc.ghost;
in_comment = false;
quotations = true;
+ antiquots = false;
lexbuf = lb;
buffer = Buffer.create 256;
}
in (Buffer.reset c.buffer; contents)
let loc c = Loc.merge c.loc (Loc.of_lexbuf c.lexbuf)
let quotations c = c.quotations
+ let antiquots c = c.antiquots
let is_in_comment c = c.in_comment
- let in_comment c = { (c) with in_comment = true; }
+ let in_comment c = { (c) with in_comment = true; }
let set_start_p c = c.lexbuf.lex_start_p <- Loc.start_pos c.loc
let move_start_p shift c =
let p = c.lexbuf.lex_start_p
in
c.lexbuf.lex_start_p <-
- { (p) with pos_cnum = p.pos_cnum + shift; }
- let with_curr_loc f c =
- f { (c) with loc = Loc.of_lexbuf c.lexbuf; } c.lexbuf
+ { (p) with pos_cnum = p.pos_cnum + shift; }
+ let update_loc c = { (c) with loc = Loc.of_lexbuf c.lexbuf; }
+ let with_curr_loc f c = f (update_loc c) c.lexbuf
let parse_nested f c =
(with_curr_loc f c; set_start_p c; buff_contents c)
- let shift n c = { (c) with loc = Loc.move `both n c.loc; }
+ let shift n c = { (c) with loc = Loc.move `both n c.loc; }
let store_parse f c = (store c; f c c.lexbuf)
let parse f c = f c c.lexbuf
let mk_quotation quotation c name loc shift =
- let s = parse_nested quotation c in
+ let s = parse_nested quotation (update_loc c) in
let contents = String.sub s 0 ((String.length s) - 2)
in
QUOTATION
{
-
q_name = name;
q_loc = loc;
q_shift = shift;
{
(pos)
with
-
pos_fname = new_file;
pos_lnum = if absolute then line else pos.pos_lnum + line;
pos_bol = pos.pos_cnum - chars;
error
let __ocaml_lex_tables =
{
-
Lexing.lex_base =
- "\000\000\227\255\228\255\001\001\001\001\231\255\232\255\160\001\
- \198\001\067\000\091\000\069\000\071\000\084\000\122\000\235\001\
- \014\002\092\000\102\001\244\255\035\002\068\002\141\002\093\003\
- \060\004\152\004\126\000\001\000\255\255\104\005\253\255\056\006\
- \252\255\245\255\246\255\247\255\023\001\001\001\088\000\091\000\
- \216\002\168\003\179\005\179\001\088\004\132\000\024\007\108\000\
- \151\000\109\000\243\255\242\255\241\255\012\005\033\001\111\000\
- \239\002\193\005\111\000\239\255\238\255\024\007\063\007\109\007\
- \148\007\183\007\174\006\015\003\004\000\233\255\093\001\199\001\
- \151\002\094\001\005\000\233\255\054\008\246\008\006\000\117\004\
- \251\255\208\009\095\000\115\000\115\000\254\255\016\010\207\010\
- \159\011\111\012\079\013\121\000\152\000\124\000\126\000\249\255\
- \248\255\144\006\197\003\127\000\060\004\128\000\200\007\129\000\
- \008\003\007\000\106\013\250\255\054\008\169\004\089\001\082\001\
- \179\004\198\008\054\008\172\013\139\014\169\014\136\015\103\016\
- \135\016\199\016\151\017\254\255\204\001\008\000\107\000\053\001\
- \215\017\150\018\102\019\054\020\018\021\062\001\236\021\197\022\
- \064\001\149\023\248\003\155\001\009\000\213\023\148\024\100\025\
- \052\026";
+ "\000\000\223\255\224\255\224\000\226\255\253\000\035\001\072\001\
+ \109\001\146\001\183\001\218\001\068\000\190\001\002\002\227\255\
+ \119\000\046\002\087\002\154\002\123\000\244\255\173\002\206\002\
+ \023\003\231\003\198\004\034\005\120\000\001\000\255\255\242\005\
+ \253\255\194\006\252\255\245\255\246\255\247\255\092\000\224\000\
+ \082\000\105\000\098\003\050\004\061\006\213\001\020\002\129\000\
+ \162\007\095\000\151\000\099\000\243\255\242\255\241\255\150\005\
+ \253\000\100\000\104\002\075\006\162\007\255\007\039\008\106\008\
+ \145\008\212\008\109\000\239\255\249\008\024\001\060\009\099\009\
+ \166\009\232\255\231\255\230\255\205\009\016\010\055\010\122\010\
+ \161\010\075\001\228\255\229\255\238\255\201\007\196\010\233\010\
+ \014\011\051\011\088\011\125\011\162\011\199\011\236\011\052\007\
+ \153\003\004\000\233\255\007\000\153\000\175\002\008\000\005\000\
+ \233\255\243\011\024\012\061\012\098\012\105\012\142\012\179\012\
+ \216\012\251\012\030\013\035\013\070\013\105\013\142\013\179\013\
+ \241\013\006\000\192\002\251\255\203\014\006\001\121\000\122\000\
+ \254\255\011\015\202\015\154\016\106\017\074\018\126\000\002\001\
+ \149\000\150\000\249\255\248\255\022\007\184\002\152\000\079\004\
+ \208\000\060\014\219\000\165\001\009\000\101\018\250\255\021\016\
+ \198\004\079\001\070\001\215\004\229\016\140\018\207\018\174\019\
+ \204\019\171\020\138\021\171\021\235\021\187\022\254\255\164\001\
+ \012\000\197\000\079\001\251\022\186\023\138\024\090\025\054\026\
+ \237\000\016\027\233\027\028\001\185\028\206\001\080\001\013\000\
+ \249\028\184\029\136\030\088\031";
Lexing.lex_backtrk =
- "\255\255\255\255\255\255\028\000\025\000\255\255\255\255\025\000\
- \025\000\023\000\023\000\023\000\023\000\023\000\023\000\025\000\
- \025\000\023\000\023\000\255\255\006\000\006\000\005\000\004\000\
- \025\000\025\000\001\000\000\000\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\007\000\255\255\255\255\
- \255\255\006\000\006\000\006\000\007\000\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\014\000\014\000\014\000\
- \255\255\255\255\015\000\255\255\255\255\021\000\020\000\018\000\
- \025\000\019\000\255\255\255\255\022\000\255\255\255\255\255\255\
- \255\255\255\255\022\000\255\255\026\000\255\255\013\000\014\000\
- \255\255\003\000\014\000\014\000\014\000\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\005\000\255\255\
+ "\255\255\255\255\255\255\030\000\255\255\028\000\030\000\030\000\
+ \030\000\030\000\028\000\028\000\028\000\028\000\028\000\255\255\
+ \028\000\030\000\030\000\028\000\028\000\255\255\006\000\006\000\
+ \005\000\004\000\030\000\030\000\001\000\000\000\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\007\000\
+ \255\255\255\255\255\255\006\000\006\000\006\000\007\000\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\014\000\
+ \014\000\014\000\255\255\255\255\255\255\255\255\255\255\255\255\
+ \028\000\028\000\015\000\255\255\028\000\255\255\255\255\028\000\
+ \255\255\255\255\255\255\255\255\028\000\028\000\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\030\000\021\000\
+ \020\000\018\000\030\000\019\000\028\000\030\000\255\255\255\255\
+ \255\255\022\000\255\255\255\255\255\255\255\255\255\255\022\000\
+ \255\255\255\255\255\255\028\000\255\255\255\255\028\000\028\000\
+ \255\255\028\000\028\000\028\000\028\000\030\000\030\000\030\000\
+ \255\255\013\000\014\000\255\255\003\000\014\000\014\000\014\000\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\006\000\008\000\255\255\005\000\005\000\001\000\001\000\
- \255\255\255\255\000\000\001\000\001\000\255\255\002\000\002\000\
- \255\255\255\255\255\255\255\255\255\255\003\000\004\000\004\000\
- \255\255\255\255\255\255\255\255\255\255\002\000\002\000\002\000\
- \255\255\255\255\255\255\004\000\002\000\255\255\255\255\255\255\
- \255\255";
+ \255\255\005\000\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\006\000\008\000\255\255\005\000\
+ \005\000\001\000\001\000\255\255\255\255\000\000\001\000\001\000\
+ \255\255\002\000\002\000\255\255\255\255\255\255\255\255\255\255\
+ \003\000\004\000\004\000\255\255\255\255\255\255\255\255\255\255\
+ \002\000\002\000\002\000\255\255\255\255\255\255\004\000\002\000\
+ \255\255\255\255\255\255\255\255";
Lexing.lex_default =
- "\001\000\000\000\000\000\076\000\255\255\000\000\000\000\255\255\
+ "\001\000\000\000\000\000\255\255\000\000\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\000\000\
+ \255\255\255\255\255\255\255\255\049\000\000\000\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\000\000\255\255\
+ \000\000\255\255\000\000\000\000\000\000\000\000\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\047\000\000\000\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\000\000\255\255\000\000\255\255\
- \000\000\000\000\000\000\000\000\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\052\000\255\255\
+ \054\000\255\255\255\255\255\255\000\000\000\000\000\000\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\000\000\255\255\255\255\255\255\255\255\
+ \255\255\000\000\000\000\000\000\255\255\255\255\255\255\255\255\
\255\255\255\255\000\000\000\000\000\000\255\255\255\255\255\255\
- \255\255\255\255\255\255\000\000\000\000\255\255\255\255\255\255\
- \255\255\255\255\070\000\255\255\255\255\000\000\070\000\071\000\
- \070\000\073\000\255\255\000\000\076\000\052\000\255\255\091\000\
- \000\000\255\255\255\255\255\255\255\255\000\000\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\000\000\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\099\000\
+ \255\255\255\255\000\000\099\000\100\000\099\000\102\000\255\255\
\000\000\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \035\000\255\255\107\000\000\000\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\000\000\080\000\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\030\000\255\255\255\255\255\255\
- \255\255\255\255\080\000\255\255\255\255\255\255\255\255\255\255\
- \255\255";
+ \054\000\255\255\134\000\000\000\255\255\255\255\255\255\255\255\
+ \000\000\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\000\000\000\000\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\037\000\255\255\150\000\000\000\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\000\000\123\000\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\032\000\
+ \255\255\255\255\255\255\255\255\255\255\123\000\255\255\255\255\
+ \255\255\255\255\255\255\255\255";
Lexing.lex_trans =
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\026\000\028\000\028\000\026\000\027\000\069\000\075\000\
- \051\000\095\000\032\000\030\000\000\000\000\000\000\000\000\000\
+ \000\000\028\000\030\000\030\000\028\000\029\000\098\000\104\000\
+ \053\000\098\000\104\000\138\000\097\000\103\000\034\000\032\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \026\000\004\000\019\000\014\000\005\000\004\000\004\000\018\000\
- \017\000\006\000\016\000\004\000\006\000\004\000\013\000\004\000\
- \021\000\020\000\020\000\020\000\020\000\020\000\020\000\020\000\
- \020\000\020\000\012\000\011\000\015\000\004\000\007\000\024\000\
- \004\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\
- \022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\
- \022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\
- \022\000\022\000\022\000\010\000\003\000\006\000\004\000\023\000\
- \006\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\
- \023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\
- \023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\
- \023\000\023\000\023\000\009\000\008\000\006\000\025\000\006\000\
- \006\000\006\000\006\000\067\000\006\000\006\000\058\000\026\000\
- \043\000\043\000\026\000\042\000\042\000\042\000\042\000\042\000\
- \042\000\042\000\042\000\051\000\050\000\006\000\051\000\006\000\
- \059\000\087\000\067\000\030\000\085\000\028\000\026\000\086\000\
- \035\000\049\000\093\000\096\000\006\000\095\000\034\000\033\000\
- \019\000\085\000\066\000\066\000\066\000\066\000\066\000\066\000\
- \066\000\066\000\066\000\066\000\044\000\044\000\044\000\044\000\
- \044\000\044\000\044\000\044\000\044\000\044\000\050\000\096\000\
- \022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\
- \022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\
- \022\000\022\000\022\000\022\000\022\000\022\000\022\000\006\000\
- \022\000\022\000\022\000\022\000\022\000\022\000\022\000\023\000\
- \023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\
- \023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\
- \023\000\023\000\023\000\023\000\023\000\023\000\023\000\000\000\
- \023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\
- \002\000\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\004\000\255\255\255\255\004\000\004\000\004\000\
- \000\000\255\255\255\255\004\000\004\000\255\255\004\000\004\000\
- \004\000\037\000\037\000\037\000\037\000\037\000\037\000\037\000\
- \037\000\037\000\037\000\004\000\255\255\004\000\004\000\004\000\
- \004\000\004\000\045\000\000\000\045\000\000\000\036\000\044\000\
- \044\000\044\000\044\000\044\000\044\000\044\000\044\000\044\000\
- \044\000\056\000\056\000\056\000\056\000\056\000\056\000\056\000\
- \056\000\056\000\056\000\111\000\255\255\255\255\255\255\004\000\
- \037\000\255\255\111\000\111\000\000\000\000\000\036\000\069\000\
- \075\000\000\000\068\000\074\000\136\000\000\000\136\000\129\000\
- \049\000\028\000\111\000\048\000\000\000\128\000\000\000\000\000\
- \085\000\111\000\085\000\000\000\255\255\004\000\255\255\004\000\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\004\000\046\000\000\000\004\000\004\000\004\000\000\000\
- \000\000\000\000\004\000\004\000\000\000\004\000\004\000\004\000\
- \000\000\069\000\000\000\000\000\068\000\142\000\032\000\032\000\
- \255\255\125\000\004\000\141\000\004\000\004\000\004\000\004\000\
- \004\000\000\000\000\000\043\000\043\000\000\000\000\000\004\000\
- \000\000\073\000\004\000\004\000\004\000\000\000\000\000\000\000\
- \004\000\004\000\000\000\004\000\004\000\004\000\000\000\000\000\
- \255\255\000\000\000\000\000\000\000\000\006\000\004\000\034\000\
- \004\000\255\255\004\000\004\000\004\000\004\000\004\000\000\000\
- \127\000\000\000\126\000\000\000\004\000\000\000\000\000\004\000\
- \004\000\004\000\043\000\000\000\000\000\004\000\004\000\000\000\
- \004\000\004\000\004\000\000\000\004\000\006\000\004\000\035\000\
- \000\000\033\000\000\000\006\000\004\000\061\000\000\000\063\000\
- \004\000\004\000\004\000\062\000\000\000\000\000\000\000\004\000\
- \000\000\000\000\004\000\004\000\004\000\000\000\000\000\060\000\
- \004\000\004\000\000\000\004\000\004\000\004\000\000\000\000\000\
- \000\000\000\000\004\000\000\000\004\000\000\000\000\000\000\000\
- \004\000\004\000\004\000\004\000\004\000\004\000\004\000\000\000\
- \000\000\037\000\000\000\020\000\020\000\020\000\020\000\020\000\
- \020\000\020\000\020\000\020\000\020\000\255\255\255\255\000\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\255\255\004\000\
- \036\000\004\000\000\000\000\000\004\000\000\000\000\000\034\000\
- \000\000\000\000\037\000\000\000\020\000\020\000\020\000\020\000\
- \020\000\020\000\020\000\020\000\020\000\020\000\000\000\000\000\
- \000\000\000\000\020\000\000\000\000\000\000\000\038\000\000\000\
- \036\000\036\000\004\000\000\000\004\000\000\000\000\000\035\000\
- \034\000\033\000\000\000\039\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\040\000\000\000\000\000\000\000\
- \072\000\069\000\000\000\020\000\068\000\000\000\038\000\000\000\
- \000\000\036\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \035\000\000\000\033\000\039\000\022\000\000\000\000\000\072\000\
- \000\000\071\000\000\000\000\000\040\000\022\000\022\000\022\000\
- \022\000\022\000\022\000\022\000\022\000\022\000\022\000\255\255\
- \000\000\000\000\000\000\000\000\030\000\000\000\022\000\022\000\
- \022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\
- \022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\
- \022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\
- \000\000\000\000\000\000\000\000\022\000\000\000\022\000\022\000\
- \022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\
- \022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\
+ \028\000\003\000\021\000\016\000\004\000\009\000\009\000\020\000\
+ \019\000\005\000\018\000\003\000\015\000\003\000\014\000\009\000\
+ \023\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\
+ \022\000\022\000\013\000\012\000\017\000\006\000\007\000\026\000\
+ \009\000\024\000\024\000\024\000\024\000\024\000\024\000\024\000\
+ \024\000\024\000\024\000\024\000\024\000\024\000\024\000\024\000\
+ \024\000\024\000\024\000\024\000\024\000\024\000\024\000\024\000\
+ \024\000\024\000\024\000\011\000\003\000\005\000\009\000\025\000\
+ \015\000\025\000\025\000\025\000\025\000\025\000\025\000\025\000\
+ \025\000\025\000\025\000\025\000\025\000\025\000\025\000\025\000\
+ \025\000\025\000\025\000\025\000\025\000\025\000\025\000\025\000\
+ \025\000\025\000\025\000\010\000\008\000\005\000\027\000\015\000\
+ \096\000\028\000\045\000\045\000\028\000\051\000\053\000\047\000\
+ \050\000\047\000\052\000\053\000\046\000\046\000\046\000\046\000\
+ \046\000\046\000\046\000\046\000\046\000\046\000\067\000\096\000\
+ \028\000\044\000\044\000\044\000\044\000\044\000\044\000\044\000\
+ \044\000\051\000\128\000\098\000\030\000\037\000\097\000\095\000\
+ \095\000\095\000\095\000\095\000\095\000\095\000\095\000\095\000\
+ \095\000\046\000\046\000\046\000\046\000\046\000\046\000\046\000\
+ \046\000\046\000\046\000\102\000\139\000\138\000\052\000\036\000\
+ \024\000\024\000\024\000\024\000\024\000\024\000\024\000\024\000\
+ \024\000\024\000\024\000\024\000\024\000\024\000\024\000\024\000\
+ \024\000\024\000\024\000\024\000\024\000\024\000\024\000\048\000\
+ \024\000\024\000\024\000\024\000\024\000\024\000\024\000\025\000\
+ \025\000\025\000\025\000\025\000\025\000\025\000\025\000\025\000\
+ \025\000\025\000\025\000\025\000\025\000\025\000\025\000\025\000\
+ \025\000\025\000\025\000\025\000\025\000\025\000\025\000\035\000\
+ \025\000\025\000\025\000\025\000\025\000\025\000\025\000\025\000\
+ \002\000\003\000\021\000\128\000\003\000\003\000\003\000\255\255\
+ \255\255\000\000\003\000\003\000\136\000\003\000\003\000\003\000\
+ \039\000\039\000\039\000\039\000\039\000\039\000\039\000\039\000\
+ \039\000\039\000\003\000\179\000\003\000\003\000\003\000\003\000\
+ \003\000\069\000\094\000\094\000\069\000\038\000\085\000\128\000\
+ \000\000\139\000\000\000\094\000\094\000\058\000\058\000\058\000\
+ \058\000\058\000\058\000\058\000\058\000\058\000\058\000\085\000\
+ \069\000\085\000\085\000\085\000\003\000\094\000\003\000\039\000\
+ \130\000\075\000\032\000\000\000\003\000\038\000\129\000\003\000\
+ \009\000\009\000\179\000\000\000\085\000\003\000\003\000\154\000\
+ \003\000\009\000\009\000\000\000\081\000\000\000\128\000\081\000\
+ \154\000\154\000\085\000\094\000\003\000\086\000\003\000\006\000\
+ \006\000\006\000\003\000\009\000\000\000\000\000\154\000\000\000\
+ \000\000\003\000\000\000\081\000\003\000\118\000\118\000\154\000\
+ \000\000\085\000\003\000\003\000\082\000\003\000\118\000\118\000\
+ \000\000\085\000\085\000\255\255\000\000\000\000\000\000\003\000\
+ \085\000\009\000\117\000\000\000\007\000\007\000\007\000\003\000\
+ \118\000\172\000\185\000\030\000\034\000\000\000\003\000\171\000\
+ \184\000\003\000\009\000\009\000\000\000\000\000\005\000\003\000\
+ \003\000\255\255\003\000\009\000\009\000\000\000\000\000\086\000\
+ \085\000\003\000\000\000\000\000\003\000\005\000\118\000\086\000\
+ \000\000\006\000\006\000\006\000\003\000\009\000\034\000\138\000\
+ \000\000\168\000\148\000\003\000\000\000\000\000\003\000\009\000\
+ \009\000\000\000\000\000\092\000\003\000\003\000\000\000\003\000\
+ \009\000\009\000\000\000\000\000\117\000\005\000\003\000\030\000\
+ \000\000\003\000\005\000\009\000\093\000\000\000\009\000\009\000\
+ \009\000\003\000\009\000\000\000\000\000\000\000\000\000\000\000\
+ \032\000\000\000\000\000\183\000\114\000\114\000\000\000\060\000\
+ \170\000\000\000\169\000\105\000\105\000\114\000\114\000\005\000\
+ \000\000\086\000\005\000\003\000\105\000\105\000\003\000\092\000\
+ \009\000\115\000\030\000\113\000\112\000\112\000\000\000\114\000\
+ \111\000\000\000\108\000\110\000\110\000\000\000\105\000\114\000\
+ \114\000\149\000\060\000\000\000\000\000\045\000\045\000\000\000\
+ \114\000\114\000\182\000\000\000\000\000\000\000\093\000\092\000\
+ \003\000\000\000\060\000\000\000\113\000\114\000\113\000\112\000\
+ \112\000\000\000\114\000\005\000\105\000\000\000\000\000\000\000\
+ \000\000\036\000\000\000\000\000\000\000\000\000\000\000\105\000\
+ \105\000\000\000\000\000\092\000\000\000\000\000\000\000\000\000\
+ \107\000\105\000\060\000\115\000\045\000\060\000\000\000\000\000\
+ \114\000\000\000\109\000\005\000\106\000\000\000\105\000\105\000\
+ \105\000\037\000\105\000\035\000\046\000\046\000\046\000\046\000\
+ \046\000\046\000\046\000\046\000\046\000\046\000\000\000\003\000\
+ \000\000\000\000\003\000\009\000\009\000\060\000\113\000\085\000\
+ \003\000\003\000\000\000\003\000\009\000\009\000\000\000\092\000\
+ \105\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \087\000\000\000\089\000\006\000\006\000\003\000\088\000\000\000\
+ \000\000\000\000\000\000\046\000\000\000\000\000\000\000\000\000\
+ \003\000\000\000\000\000\003\000\003\000\003\000\106\000\092\000\
+ \084\000\003\000\003\000\000\000\003\000\003\000\003\000\000\000\
+ \000\000\000\000\003\000\085\000\009\000\000\000\000\000\000\000\
+ \000\000\003\000\000\000\003\000\003\000\003\000\003\000\003\000\
+ \049\000\049\000\049\000\049\000\049\000\049\000\049\000\049\000\
+ \049\000\049\000\000\000\061\000\032\000\139\000\061\000\000\000\
+ \000\000\000\000\086\000\085\000\003\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\003\000\000\000\003\000\000\000\000\000\
+ \101\000\098\000\061\000\062\000\097\000\000\000\062\000\065\000\
+ \065\000\000\000\060\000\000\000\066\000\062\000\000\000\062\000\
+ \065\000\065\000\136\000\000\000\000\000\135\000\128\000\101\000\
+ \000\000\100\000\000\000\003\000\064\000\003\000\063\000\063\000\
+ \063\000\062\000\065\000\039\000\000\000\022\000\022\000\022\000\
+ \022\000\022\000\022\000\022\000\022\000\022\000\022\000\137\000\
+ \143\000\143\000\143\000\143\000\143\000\143\000\143\000\143\000\
+ \143\000\143\000\038\000\000\000\000\000\060\000\062\000\000\000\
+ \065\000\036\000\000\000\000\000\039\000\000\000\022\000\022\000\
\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\
- \041\000\041\000\041\000\041\000\041\000\041\000\041\000\041\000\
- \041\000\041\000\095\000\000\000\000\000\105\000\000\000\000\000\
- \067\000\041\000\041\000\041\000\041\000\041\000\041\000\047\000\
- \047\000\047\000\047\000\047\000\047\000\047\000\047\000\047\000\
- \047\000\000\000\028\000\000\000\000\000\000\000\000\000\067\000\
+ \000\000\000\000\000\000\000\000\022\000\000\000\000\000\000\000\
+ \040\000\000\000\038\000\038\000\000\000\060\000\064\000\000\000\
+ \062\000\037\000\036\000\035\000\133\000\041\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\000\000\042\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\022\000\000\000\000\000\
+ \040\000\000\000\000\000\038\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\037\000\000\000\035\000\041\000\024\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\000\000\042\000\024\000\
+ \024\000\024\000\024\000\024\000\024\000\024\000\024\000\024\000\
+ \024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \024\000\024\000\024\000\024\000\024\000\024\000\024\000\024\000\
+ \024\000\024\000\024\000\024\000\024\000\024\000\024\000\024\000\
+ \024\000\024\000\024\000\024\000\024\000\024\000\024\000\024\000\
+ \024\000\024\000\000\000\000\000\000\000\000\000\024\000\000\000\
+ \024\000\024\000\024\000\024\000\024\000\024\000\024\000\024\000\
+ \024\000\024\000\024\000\024\000\024\000\024\000\024\000\024\000\
+ \024\000\024\000\024\000\024\000\024\000\024\000\024\000\024\000\
+ \024\000\024\000\043\000\043\000\043\000\043\000\043\000\043\000\
+ \043\000\043\000\043\000\043\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\096\000\043\000\043\000\043\000\043\000\043\000\
+ \043\000\000\000\000\000\000\000\000\000\000\000\000\000\255\255\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\041\000\041\000\041\000\041\000\041\000\041\000\066\000\
- \066\000\066\000\066\000\066\000\066\000\066\000\066\000\066\000\
- \066\000\000\000\000\000\000\000\000\000\022\000\022\000\022\000\
- \022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\
- \022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\
- \022\000\022\000\022\000\022\000\106\000\022\000\022\000\022\000\
- \022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\
- \022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\
- \022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\
- \022\000\022\000\022\000\022\000\023\000\022\000\022\000\022\000\
- \022\000\022\000\022\000\022\000\022\000\023\000\023\000\023\000\
- \023\000\023\000\023\000\023\000\023\000\023\000\023\000\255\255\
- \000\000\000\000\000\000\000\000\000\000\000\000\023\000\023\000\
- \023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\
- \023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\
- \023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\
- \000\000\000\000\000\000\000\000\023\000\000\000\023\000\023\000\
- \023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\
- \023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\
- \023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\
- \041\000\041\000\041\000\041\000\041\000\041\000\041\000\041\000\
- \041\000\041\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\041\000\041\000\041\000\041\000\041\000\041\000\000\000\
- \000\000\000\000\000\000\000\000\034\000\100\000\100\000\100\000\
- \100\000\100\000\100\000\100\000\100\000\100\000\100\000\000\000\
- \000\000\000\000\030\000\000\000\000\000\140\000\000\000\041\000\
- \096\000\041\000\041\000\041\000\041\000\041\000\041\000\000\000\
- \000\000\000\000\000\000\000\000\035\000\000\000\033\000\000\000\
- \000\000\000\000\000\000\000\000\028\000\023\000\023\000\023\000\
- \023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\
- \023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\
- \023\000\023\000\023\000\023\000\139\000\023\000\023\000\023\000\
- \023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\
- \023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\
- \023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\
- \023\000\023\000\023\000\023\000\000\000\023\000\023\000\023\000\
- \023\000\023\000\023\000\023\000\023\000\004\000\000\000\000\000\
- \004\000\004\000\004\000\000\000\000\000\000\000\004\000\004\000\
- \000\000\004\000\004\000\004\000\101\000\101\000\101\000\101\000\
- \101\000\101\000\101\000\101\000\101\000\101\000\004\000\000\000\
- \004\000\004\000\004\000\004\000\004\000\000\000\000\000\093\000\
- \000\000\000\000\092\000\000\000\000\000\000\000\000\000\000\000\
- \044\000\044\000\044\000\044\000\044\000\044\000\044\000\044\000\
- \044\000\044\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\004\000\031\000\094\000\031\000\031\000\031\000\
- \031\000\031\000\031\000\031\000\031\000\031\000\031\000\031\000\
- \031\000\031\000\031\000\031\000\031\000\031\000\031\000\031\000\
- \031\000\031\000\031\000\031\000\031\000\031\000\031\000\044\000\
- \004\000\004\000\004\000\000\000\004\000\004\000\004\000\000\000\
- \000\000\000\000\004\000\004\000\000\000\004\000\004\000\004\000\
+ \000\000\096\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \255\255\000\000\000\000\043\000\043\000\043\000\043\000\043\000\
+ \043\000\095\000\095\000\095\000\095\000\095\000\095\000\095\000\
+ \095\000\095\000\095\000\000\000\000\000\000\000\000\000\024\000\
+ \024\000\024\000\024\000\024\000\024\000\024\000\024\000\024\000\
+ \024\000\024\000\024\000\024\000\024\000\024\000\024\000\024\000\
+ \024\000\024\000\024\000\024\000\024\000\024\000\000\000\024\000\
+ \024\000\024\000\024\000\024\000\024\000\024\000\024\000\024\000\
+ \024\000\024\000\024\000\024\000\024\000\024\000\024\000\024\000\
+ \024\000\024\000\024\000\024\000\024\000\024\000\024\000\024\000\
+ \024\000\024\000\024\000\024\000\024\000\024\000\025\000\024\000\
+ \024\000\024\000\024\000\024\000\024\000\024\000\024\000\025\000\
+ \025\000\025\000\025\000\025\000\025\000\025\000\025\000\025\000\
+ \025\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \025\000\025\000\025\000\025\000\025\000\025\000\025\000\025\000\
+ \025\000\025\000\025\000\025\000\025\000\025\000\025\000\025\000\
+ \025\000\025\000\025\000\025\000\025\000\025\000\025\000\025\000\
+ \025\000\025\000\000\000\000\000\000\000\000\000\025\000\000\000\
+ \025\000\025\000\025\000\025\000\025\000\025\000\025\000\025\000\
+ \025\000\025\000\025\000\025\000\025\000\025\000\025\000\025\000\
+ \025\000\025\000\025\000\025\000\025\000\025\000\025\000\025\000\
+ \025\000\025\000\043\000\043\000\043\000\043\000\043\000\043\000\
+ \043\000\043\000\043\000\043\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\043\000\043\000\043\000\043\000\043\000\
+ \043\000\000\000\000\000\000\000\000\000\000\000\036\000\144\000\
+ \144\000\144\000\144\000\144\000\144\000\144\000\144\000\144\000\
+ \144\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\043\000\000\000\043\000\043\000\043\000\043\000\043\000\
+ \043\000\000\000\000\000\000\000\000\000\000\000\037\000\000\000\
+ \035\000\000\000\000\000\000\000\000\000\000\000\000\000\025\000\
+ \025\000\025\000\025\000\025\000\025\000\025\000\025\000\025\000\
+ \025\000\025\000\025\000\025\000\025\000\025\000\025\000\025\000\
+ \025\000\025\000\025\000\025\000\025\000\025\000\000\000\025\000\
+ \025\000\025\000\025\000\025\000\025\000\025\000\025\000\025\000\
+ \025\000\025\000\025\000\025\000\025\000\025\000\025\000\025\000\
+ \025\000\025\000\025\000\025\000\025\000\025\000\025\000\025\000\
+ \025\000\025\000\025\000\025\000\025\000\025\000\000\000\025\000\
+ \025\000\025\000\025\000\025\000\025\000\025\000\025\000\003\000\
+ \000\000\000\000\003\000\003\000\003\000\000\000\000\000\000\000\
+ \003\000\003\000\000\000\003\000\003\000\003\000\155\000\155\000\
+ \155\000\155\000\155\000\155\000\155\000\155\000\155\000\155\000\
+ \003\000\000\000\003\000\003\000\003\000\003\000\003\000\034\000\
+ \034\000\034\000\034\000\034\000\034\000\034\000\034\000\034\000\
+ \034\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\090\000\004\000\000\000\004\000\004\000\004\000\004\000\
- \004\000\112\000\112\000\112\000\112\000\112\000\112\000\112\000\
- \112\000\112\000\112\000\032\000\032\000\032\000\032\000\032\000\
- \032\000\032\000\032\000\032\000\032\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\004\000\029\000\
- \085\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\
- \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\
- \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\
- \029\000\029\000\029\000\000\000\004\000\000\000\004\000\000\000\
- \000\000\000\000\000\000\031\000\031\000\031\000\031\000\031\000\
+ \000\000\000\000\003\000\000\000\003\000\033\000\000\000\033\000\
+ \033\000\033\000\033\000\033\000\033\000\033\000\033\000\033\000\
+ \033\000\033\000\033\000\033\000\033\000\033\000\033\000\033\000\
+ \033\000\033\000\033\000\033\000\033\000\033\000\033\000\033\000\
+ \033\000\000\000\003\000\003\000\003\000\000\000\003\000\003\000\
+ \003\000\000\000\000\000\000\000\003\000\003\000\000\000\003\000\
+ \003\000\003\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\003\000\000\000\003\000\003\000\
+ \003\000\003\000\003\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\000\000\003\000\000\000\
+ \003\000\031\000\000\000\031\000\031\000\031\000\031\000\031\000\
\031\000\031\000\031\000\031\000\031\000\031\000\031\000\031\000\
\031\000\031\000\031\000\031\000\031\000\031\000\031\000\031\000\
- \031\000\031\000\031\000\000\000\031\000\031\000\031\000\031\000\
- \031\000\031\000\031\000\031\000\057\000\057\000\057\000\057\000\
- \057\000\057\000\057\000\057\000\057\000\057\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\000\000\057\000\057\000\057\000\
- \057\000\057\000\057\000\000\000\000\000\000\000\000\000\000\000\
+ \031\000\031\000\031\000\031\000\031\000\000\000\003\000\000\000\
+ \003\000\000\000\000\000\000\000\000\000\033\000\033\000\033\000\
+ \033\000\033\000\033\000\033\000\033\000\033\000\033\000\033\000\
+ \033\000\033\000\033\000\033\000\033\000\033\000\033\000\033\000\
+ \033\000\033\000\033\000\033\000\033\000\000\000\033\000\033\000\
+ \033\000\033\000\033\000\033\000\033\000\033\000\059\000\059\000\
+ \059\000\059\000\059\000\059\000\059\000\059\000\059\000\059\000\
+ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\059\000\
+ \059\000\059\000\059\000\059\000\059\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\000\000\057\000\057\000\057\000\
- \057\000\057\000\057\000\000\000\000\000\255\255\000\000\029\000\
- \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\
- \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\
- \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\
- \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\
- \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\
- \029\000\029\000\030\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\
- \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\
- \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\
- \029\000\029\000\029\000\000\000\000\000\000\000\000\000\029\000\
- \000\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\
- \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\
- \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\
- \029\000\029\000\029\000\042\000\042\000\042\000\042\000\042\000\
- \042\000\042\000\042\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\047\000\047\000\047\000\047\000\047\000\047\000\047\000\
- \047\000\047\000\047\000\000\000\000\000\000\000\000\000\034\000\
- \000\000\000\000\047\000\047\000\047\000\047\000\047\000\047\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\042\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\000\000\035\000\
- \000\000\033\000\047\000\047\000\047\000\047\000\047\000\047\000\
- \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\
- \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\
- \029\000\029\000\029\000\029\000\029\000\029\000\029\000\000\000\
- \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\
- \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\
- \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\
- \029\000\029\000\029\000\029\000\029\000\029\000\029\000\031\000\
- \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\
- \031\000\031\000\031\000\031\000\031\000\031\000\031\000\031\000\
- \031\000\031\000\032\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\059\000\
+ \059\000\059\000\059\000\059\000\059\000\000\000\000\000\000\000\
\000\000\031\000\031\000\031\000\031\000\031\000\031\000\031\000\
\031\000\031\000\031\000\031\000\031\000\031\000\031\000\031\000\
\031\000\031\000\031\000\031\000\031\000\031\000\031\000\031\000\
- \031\000\031\000\031\000\000\000\000\000\000\000\000\000\031\000\
- \000\000\031\000\031\000\031\000\031\000\031\000\031\000\031\000\
\031\000\031\000\031\000\031\000\031\000\031\000\031\000\031\000\
\031\000\031\000\031\000\031\000\031\000\031\000\031\000\031\000\
- \031\000\031\000\031\000\000\000\000\000\000\000\000\000\072\000\
- \069\000\000\000\000\000\068\000\000\000\000\000\000\000\000\000\
- \102\000\102\000\102\000\102\000\102\000\102\000\102\000\102\000\
- \102\000\102\000\000\000\000\000\000\000\000\000\072\000\000\000\
- \071\000\102\000\102\000\102\000\102\000\102\000\102\000\000\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\066\000\066\000\
- \066\000\066\000\066\000\066\000\066\000\066\000\066\000\066\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\102\000\102\000\102\000\102\000\102\000\102\000\000\000\
+ \031\000\031\000\031\000\031\000\032\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\031\000\031\000\031\000\031\000\031\000\
+ \031\000\031\000\031\000\031\000\031\000\031\000\031\000\031\000\
\031\000\031\000\031\000\031\000\031\000\031\000\031\000\031\000\
+ \031\000\031\000\031\000\031\000\031\000\000\000\000\000\000\000\
+ \000\000\031\000\000\000\031\000\031\000\031\000\031\000\031\000\
\031\000\031\000\031\000\031\000\031\000\031\000\031\000\031\000\
- \031\000\031\000\031\000\031\000\031\000\031\000\031\000\000\000\
+ \031\000\031\000\031\000\031\000\031\000\031\000\031\000\031\000\
+ \031\000\031\000\031\000\031\000\031\000\044\000\044\000\044\000\
+ \044\000\044\000\044\000\044\000\044\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\049\000\049\000\049\000\049\000\049\000\
+ \049\000\049\000\049\000\049\000\049\000\000\000\000\000\000\000\
+ \000\000\036\000\000\000\000\000\049\000\049\000\049\000\049\000\
+ \049\000\049\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\044\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\037\000\000\000\035\000\049\000\049\000\049\000\049\000\
+ \049\000\049\000\031\000\031\000\031\000\031\000\031\000\031\000\
\031\000\031\000\031\000\031\000\031\000\031\000\031\000\031\000\
\031\000\031\000\031\000\031\000\031\000\031\000\031\000\031\000\
+ \031\000\000\000\031\000\031\000\031\000\031\000\031\000\031\000\
\031\000\031\000\031\000\031\000\031\000\031\000\031\000\031\000\
- \031\000\031\000\031\000\031\000\031\000\031\000\031\000\000\000\
\031\000\031\000\031\000\031\000\031\000\031\000\031\000\031\000\
- \055\000\004\000\055\000\000\000\004\000\004\000\004\000\055\000\
- \000\000\000\000\004\000\004\000\000\000\004\000\004\000\004\000\
- \054\000\054\000\054\000\054\000\054\000\054\000\054\000\054\000\
- \054\000\054\000\004\000\000\000\004\000\004\000\004\000\004\000\
- \004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \004\000\000\000\000\000\004\000\004\000\004\000\000\000\000\000\
- \000\000\004\000\004\000\000\000\004\000\004\000\004\000\000\000\
- \000\000\000\000\000\000\000\000\055\000\000\000\004\000\000\000\
- \000\000\004\000\055\000\004\000\004\000\004\000\004\000\004\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\055\000\000\000\
- \000\000\000\000\055\000\000\000\055\000\000\000\004\000\000\000\
- \053\000\004\000\004\000\004\000\004\000\000\000\004\000\004\000\
- \004\000\000\000\004\000\004\000\004\000\004\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\
- \000\000\004\000\004\000\064\000\004\000\004\000\255\255\000\000\
- \000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\
- \004\000\004\000\004\000\004\000\000\000\004\000\004\000\004\000\
- \000\000\004\000\004\000\004\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\004\000\000\000\000\000\004\000\000\000\
- \004\000\004\000\065\000\004\000\004\000\000\000\000\000\000\000\
- \004\000\000\000\000\000\004\000\004\000\004\000\000\000\000\000\
- \000\000\004\000\004\000\000\000\004\000\004\000\004\000\000\000\
- \000\000\004\000\000\000\004\000\000\000\000\000\000\000\000\000\
- \000\000\004\000\004\000\004\000\004\000\004\000\004\000\004\000\
- \103\000\103\000\103\000\103\000\103\000\103\000\103\000\103\000\
- \103\000\103\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\103\000\103\000\103\000\103\000\103\000\103\000\000\000\
- \004\000\000\000\004\000\000\000\000\000\004\000\000\000\000\000\
- \255\255\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \031\000\031\000\031\000\031\000\031\000\031\000\031\000\031\000\
+ \031\000\033\000\031\000\031\000\031\000\031\000\031\000\031\000\
+ \031\000\031\000\033\000\033\000\033\000\033\000\033\000\033\000\
+ \033\000\033\000\033\000\033\000\034\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\033\000\033\000\033\000\033\000\033\000\
+ \033\000\033\000\033\000\033\000\033\000\033\000\033\000\033\000\
+ \033\000\033\000\033\000\033\000\033\000\033\000\033\000\033\000\
+ \033\000\033\000\033\000\033\000\033\000\000\000\000\000\000\000\
+ \000\000\033\000\000\000\033\000\033\000\033\000\033\000\033\000\
+ \033\000\033\000\033\000\033\000\033\000\033\000\033\000\033\000\
+ \033\000\033\000\033\000\033\000\033\000\033\000\033\000\033\000\
+ \033\000\033\000\033\000\033\000\033\000\101\000\098\000\000\000\
+ \000\000\097\000\000\000\000\000\000\000\000\000\145\000\145\000\
+ \145\000\145\000\145\000\145\000\145\000\145\000\145\000\145\000\
+ \000\000\000\000\000\000\000\000\101\000\000\000\100\000\145\000\
+ \145\000\145\000\145\000\145\000\145\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\095\000\095\000\095\000\095\000\
+ \095\000\095\000\095\000\095\000\095\000\095\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\145\000\
+ \145\000\145\000\145\000\145\000\145\000\000\000\000\000\000\000\
+ \000\000\000\000\033\000\033\000\033\000\033\000\033\000\033\000\
+ \033\000\033\000\033\000\033\000\033\000\033\000\033\000\033\000\
+ \033\000\033\000\033\000\033\000\033\000\033\000\033\000\033\000\
+ \033\000\000\000\033\000\033\000\033\000\033\000\033\000\033\000\
+ \033\000\033\000\033\000\033\000\033\000\033\000\033\000\033\000\
+ \033\000\033\000\033\000\033\000\033\000\033\000\033\000\033\000\
+ \033\000\033\000\033\000\033\000\033\000\033\000\033\000\033\000\
+ \033\000\000\000\033\000\033\000\033\000\033\000\033\000\033\000\
+ \033\000\033\000\057\000\000\000\057\000\000\000\000\000\068\000\
+ \068\000\057\000\060\000\000\000\000\000\000\000\000\000\000\000\
+ \068\000\068\000\056\000\056\000\056\000\056\000\056\000\056\000\
+ \056\000\056\000\056\000\056\000\060\000\000\000\060\000\060\000\
+ \060\000\000\000\068\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\000\000\094\000\094\000\
+ \000\000\000\000\085\000\000\000\000\000\000\000\000\000\094\000\
+ \094\000\000\000\000\000\000\000\000\000\060\000\057\000\000\000\
+ \068\000\000\000\000\000\085\000\057\000\085\000\085\000\085\000\
+ \061\000\094\000\000\000\061\000\000\000\000\000\000\000\000\000\
+ \057\000\000\000\000\000\000\000\057\000\000\000\057\000\000\000\
+ \000\000\000\000\055\000\000\000\000\000\060\000\060\000\061\000\
+ \079\000\000\000\000\000\079\000\079\000\079\000\085\000\094\000\
+ \000\000\080\000\079\000\000\000\079\000\079\000\079\000\000\000\
+ \069\000\000\000\000\000\069\000\255\255\000\000\000\000\000\000\
+ \000\000\079\000\000\000\079\000\079\000\079\000\079\000\079\000\
+ \000\000\000\000\000\000\000\000\000\000\085\000\085\000\069\000\
+ \070\000\000\000\000\000\070\000\070\000\070\000\000\000\000\000\
+ \073\000\072\000\070\000\000\000\070\000\070\000\070\000\000\000\
+ \000\000\000\000\000\000\079\000\000\000\079\000\000\000\000\000\
+ \000\000\070\000\000\000\070\000\070\000\070\000\070\000\070\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\103\000\103\000\103\000\103\000\103\000\103\000\000\000\
- \000\000\000\000\000\000\004\000\000\000\004\000\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\114\000\
- \255\255\255\255\114\000\114\000\114\000\000\000\255\255\255\255\
- \114\000\114\000\255\255\114\000\114\000\114\000\113\000\113\000\
- \113\000\113\000\113\000\113\000\113\000\113\000\113\000\113\000\
- \114\000\255\255\114\000\114\000\114\000\114\000\114\000\113\000\
- \113\000\113\000\113\000\113\000\113\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\069\000\000\000\000\000\069\000\000\000\
+ \000\000\000\000\000\000\079\000\000\000\079\000\000\000\000\000\
+ \000\000\000\000\000\000\070\000\000\000\070\000\000\000\000\000\
+ \000\000\000\000\069\000\070\000\000\000\000\000\070\000\071\000\
+ \071\000\000\000\060\000\073\000\072\000\070\000\000\000\070\000\
+ \071\000\071\000\069\000\000\000\000\000\069\000\000\000\000\000\
+ \000\000\000\000\255\255\070\000\078\000\070\000\078\000\078\000\
+ \078\000\070\000\071\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\069\000\070\000\000\000\000\000\070\000\077\000\077\000\
+ \000\000\060\000\073\000\072\000\070\000\000\000\070\000\077\000\
+ \077\000\000\000\000\000\000\000\000\000\060\000\070\000\000\000\
+ \071\000\000\000\000\000\076\000\000\000\076\000\076\000\076\000\
+ \070\000\077\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\069\000\000\000\000\000\
+ \069\000\000\000\000\000\000\000\000\000\060\000\078\000\000\000\
+ \070\000\000\000\000\000\000\000\060\000\070\000\000\000\077\000\
+ \000\000\000\000\000\000\000\000\069\000\070\000\000\000\000\000\
+ \070\000\071\000\071\000\000\000\068\000\073\000\072\000\070\000\
+ \000\000\070\000\071\000\071\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\060\000\076\000\071\000\070\000\
+ \071\000\071\000\071\000\070\000\071\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\000\000\068\000\068\000\
+ \000\000\068\000\000\000\000\000\000\000\000\000\000\000\068\000\
+ \068\000\000\000\000\000\000\000\000\000\000\000\000\000\068\000\
+ \070\000\000\000\071\000\068\000\000\000\068\000\068\000\068\000\
+ \000\000\068\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\069\000\000\000\000\000\
+ \069\000\000\000\000\000\000\000\000\000\000\000\000\000\068\000\
+ \071\000\000\000\070\000\000\000\068\000\000\000\000\000\068\000\
+ \000\000\000\000\000\000\000\000\069\000\070\000\000\000\000\000\
+ \070\000\070\000\070\000\000\000\000\000\074\000\072\000\070\000\
+ \000\000\070\000\070\000\070\000\069\000\000\000\000\000\069\000\
+ \000\000\000\000\000\000\000\000\068\000\068\000\070\000\000\000\
+ \070\000\070\000\070\000\070\000\070\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\069\000\070\000\000\000\000\000\070\000\
+ \071\000\071\000\000\000\068\000\074\000\072\000\070\000\000\000\
+ \070\000\071\000\071\000\000\000\000\000\000\000\000\000\000\000\
+ \070\000\000\000\070\000\000\000\000\000\071\000\000\000\071\000\
+ \071\000\071\000\070\000\071\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\069\000\
+ \000\000\000\000\069\000\000\000\000\000\000\000\000\000\000\000\
+ \070\000\000\000\070\000\000\000\000\000\000\000\068\000\070\000\
+ \000\000\071\000\000\000\000\000\000\000\000\000\069\000\070\000\
+ \000\000\000\000\070\000\070\000\070\000\000\000\000\000\000\000\
+ \072\000\070\000\000\000\070\000\070\000\070\000\069\000\000\000\
+ \000\000\069\000\000\000\000\000\000\000\000\000\068\000\071\000\
+ \070\000\070\000\070\000\070\000\070\000\070\000\070\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\069\000\070\000\000\000\
+ \000\000\070\000\077\000\077\000\000\000\060\000\074\000\072\000\
+ \070\000\000\000\070\000\077\000\077\000\000\000\000\000\000\000\
+ \000\000\000\000\070\000\000\000\070\000\000\000\000\000\076\000\
+ \000\000\076\000\076\000\076\000\070\000\077\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\069\000\000\000\000\000\069\000\000\000\000\000\000\000\
+ \000\000\000\000\070\000\000\000\070\000\000\000\000\000\000\000\
+ \060\000\070\000\000\000\077\000\000\000\000\000\000\000\000\000\
+ \069\000\070\000\000\000\000\000\070\000\077\000\077\000\000\000\
+ \068\000\074\000\072\000\070\000\000\000\070\000\077\000\077\000\
+ \069\000\000\000\000\000\069\000\000\000\000\000\000\000\000\000\
+ \060\000\076\000\077\000\070\000\077\000\077\000\077\000\070\000\
+ \077\000\000\000\000\000\000\000\000\000\000\000\000\000\069\000\
+ \070\000\000\000\000\000\070\000\071\000\071\000\000\000\060\000\
+ \074\000\072\000\070\000\000\000\070\000\071\000\071\000\000\000\
+ \000\000\000\000\000\000\068\000\070\000\000\000\077\000\000\000\
+ \000\000\078\000\000\000\078\000\078\000\078\000\070\000\071\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\255\255\255\255\255\255\114\000\000\000\255\255\113\000\
- \113\000\113\000\113\000\113\000\113\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\081\000\000\000\000\000\081\000\000\000\
+ \000\000\000\000\000\000\068\000\077\000\000\000\070\000\000\000\
+ \000\000\000\000\060\000\070\000\000\000\071\000\000\000\000\000\
+ \000\000\000\000\081\000\079\000\000\000\000\000\079\000\079\000\
+ \079\000\000\000\000\000\083\000\080\000\079\000\000\000\079\000\
+ \079\000\079\000\081\000\000\000\000\000\081\000\000\000\000\000\
+ \000\000\000\000\060\000\078\000\079\000\070\000\079\000\079\000\
+ \079\000\079\000\079\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\081\000\079\000\000\000\000\000\079\000\079\000\079\000\
+ \000\000\000\000\000\000\080\000\079\000\000\000\079\000\079\000\
+ \079\000\000\000\000\000\000\000\000\000\000\000\079\000\000\000\
+ \079\000\000\000\000\000\079\000\000\000\079\000\079\000\079\000\
+ \079\000\079\000\000\000\000\000\000\000\003\000\000\000\000\000\
+ \003\000\009\000\009\000\000\000\000\000\005\000\003\000\003\000\
+ \000\000\003\000\009\000\009\000\000\000\000\000\079\000\000\000\
+ \079\000\000\000\000\000\000\000\000\000\079\000\086\000\079\000\
+ \006\000\006\000\006\000\003\000\009\000\000\000\000\000\000\000\
+ \000\000\000\000\003\000\000\000\000\000\003\000\009\000\009\000\
+ \000\000\000\000\005\000\003\000\003\000\000\000\003\000\009\000\
+ \009\000\000\000\000\000\000\000\000\000\079\000\000\000\079\000\
+ \003\000\085\000\009\000\086\000\000\000\006\000\006\000\006\000\
+ \003\000\009\000\000\000\000\000\000\000\000\000\000\000\003\000\
+ \000\000\000\000\003\000\009\000\009\000\000\000\000\000\092\000\
+ \003\000\003\000\000\000\003\000\009\000\009\000\000\000\000\000\
+ \086\000\005\000\003\000\000\000\000\000\003\000\085\000\009\000\
+ \093\000\000\000\009\000\009\000\009\000\003\000\009\000\000\000\
+ \000\000\000\000\000\000\000\000\003\000\000\000\000\000\003\000\
+ \009\000\009\000\000\000\000\000\085\000\003\000\003\000\000\000\
+ \003\000\009\000\009\000\000\000\000\000\086\000\005\000\003\000\
+ \000\000\000\000\003\000\092\000\009\000\086\000\000\000\006\000\
+ \006\000\090\000\003\000\009\000\000\000\000\000\000\000\000\000\
+ \000\000\003\000\000\000\000\000\003\000\009\000\009\000\000\000\
+ \000\000\085\000\003\000\003\000\000\000\003\000\009\000\009\000\
+ \000\000\000\000\093\000\092\000\003\000\000\000\000\000\003\000\
+ \085\000\009\000\086\000\000\000\006\000\006\000\091\000\003\000\
+ \009\000\000\000\000\000\000\000\000\000\000\000\003\000\000\000\
+ \000\000\003\000\009\000\009\000\000\000\000\000\085\000\003\000\
+ \003\000\000\000\003\000\009\000\009\000\000\000\000\000\086\000\
+ \085\000\003\000\000\000\000\000\003\000\085\000\009\000\086\000\
+ \000\000\006\000\006\000\006\000\003\000\009\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\094\000\
+ \094\000\000\000\000\000\092\000\000\000\000\000\000\000\000\000\
+ \094\000\094\000\000\000\000\000\086\000\085\000\003\000\000\000\
+ \000\000\003\000\085\000\009\000\094\000\000\000\094\000\094\000\
+ \094\000\000\000\094\000\000\000\000\000\000\000\000\000\000\000\
+ \003\000\000\000\000\000\003\000\009\000\009\000\000\000\000\000\
+ \092\000\003\000\003\000\000\000\003\000\009\000\009\000\000\000\
+ \000\000\086\000\085\000\003\000\000\000\000\000\000\000\092\000\
+ \094\000\093\000\000\000\009\000\009\000\009\000\003\000\009\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\094\000\094\000\000\000\000\000\092\000\000\000\000\000\
+ \105\000\105\000\094\000\094\000\092\000\000\000\094\000\092\000\
+ \000\000\105\000\105\000\003\000\092\000\009\000\094\000\000\000\
+ \094\000\094\000\094\000\000\000\094\000\106\000\000\000\105\000\
+ \105\000\105\000\000\000\105\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\105\000\105\000\000\000\
+ \000\000\092\000\000\000\093\000\092\000\003\000\105\000\105\000\
+ \000\000\092\000\094\000\000\000\000\000\000\000\000\000\000\000\
+ \092\000\105\000\106\000\000\000\105\000\105\000\105\000\000\000\
+ \105\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\105\000\105\000\000\000\000\000\092\000\000\000\
+ \094\000\092\000\000\000\105\000\105\000\000\000\000\000\106\000\
+ \092\000\000\000\000\000\000\000\000\000\092\000\105\000\106\000\
+ \000\000\105\000\105\000\105\000\000\000\105\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\105\000\
+ \105\000\000\000\000\000\085\000\000\000\000\000\105\000\105\000\
+ \105\000\105\000\005\000\000\000\106\000\092\000\000\000\105\000\
+ \105\000\000\000\092\000\105\000\109\000\000\000\108\000\108\000\
+ \108\000\000\000\105\000\109\000\000\000\108\000\108\000\108\000\
+ \000\000\105\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\105\000\105\000\000\000\000\000\085\000\
+ \000\000\106\000\092\000\000\000\105\000\105\000\000\000\085\000\
+ \105\000\000\000\000\000\000\000\000\000\000\000\085\000\105\000\
+ \109\000\000\000\108\000\108\000\108\000\000\000\105\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\255\255\114\000\255\255\114\000\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\080\000\080\000\
- \080\000\080\000\080\000\080\000\080\000\080\000\080\000\080\000\
- \051\000\000\000\000\000\078\000\000\000\000\000\000\000\080\000\
- \080\000\080\000\080\000\080\000\080\000\255\255\000\000\000\000\
+ \105\000\105\000\000\000\000\000\005\000\000\000\109\000\085\000\
+ \000\000\105\000\105\000\000\000\000\000\109\000\005\000\000\000\
+ \000\000\000\000\000\000\085\000\105\000\109\000\000\000\108\000\
+ \108\000\108\000\000\000\105\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\114\000\114\000\000\000\
+ \060\000\000\000\000\000\000\000\000\000\000\000\114\000\114\000\
+ \000\000\000\000\109\000\085\000\000\000\000\000\000\000\000\000\
+ \085\000\105\000\112\000\000\000\113\000\112\000\112\000\000\000\
+ \114\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \114\000\114\000\000\000\060\000\000\000\000\000\000\000\000\000\
+ \000\000\114\000\114\000\000\000\000\000\000\000\000\000\109\000\
+ \005\000\000\000\000\000\060\000\000\000\112\000\114\000\113\000\
+ \112\000\112\000\000\000\114\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\114\000\114\000\000\000\068\000\000\000\
+ \116\000\116\000\000\000\060\000\114\000\114\000\000\000\000\000\
+ \000\000\116\000\116\000\060\000\112\000\000\000\060\000\000\000\
+ \114\000\114\000\114\000\114\000\114\000\115\000\114\000\115\000\
+ \115\000\115\000\000\000\116\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\116\000\116\000\000\000\068\000\000\000\
+ \000\000\000\000\000\000\000\000\116\000\116\000\060\000\112\000\
+ \000\000\068\000\000\000\000\000\114\000\000\000\060\000\000\000\
+ \116\000\116\000\116\000\116\000\116\000\000\000\116\000\000\000\
+ \000\000\000\000\003\000\000\000\000\000\003\000\118\000\118\000\
+ \000\000\000\000\005\000\003\000\003\000\000\000\003\000\118\000\
+ \118\000\068\000\114\000\000\000\000\000\000\000\060\000\115\000\
+ \000\000\068\000\000\000\117\000\116\000\007\000\007\000\007\000\
+ \003\000\118\000\000\000\000\000\000\000\000\000\000\000\003\000\
+ \000\000\000\000\003\000\118\000\118\000\000\000\000\000\092\000\
+ \003\000\003\000\000\000\003\000\118\000\118\000\000\000\000\000\
+ \000\000\068\000\116\000\000\000\000\000\003\000\005\000\118\000\
+ \119\000\000\000\118\000\118\000\118\000\003\000\118\000\000\000\
+ \000\000\000\000\000\000\000\000\003\000\000\000\000\000\003\000\
+ \118\000\118\000\000\000\000\000\092\000\003\000\003\000\000\000\
+ \003\000\118\000\118\000\000\000\000\000\117\000\005\000\003\000\
+ \000\000\000\000\003\000\092\000\118\000\119\000\000\000\118\000\
+ \118\000\118\000\003\000\118\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\053\000\000\000\000\000\121\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \080\000\000\000\000\000\000\000\000\000\079\000\084\000\000\000\
- \083\000\000\000\000\000\000\000\000\000\000\000\000\000\080\000\
- \080\000\080\000\080\000\080\000\080\000\255\255\000\000\000\000\
- \000\000\000\000\082\000\000\000\000\000\000\000\255\255\081\000\
- \081\000\081\000\081\000\081\000\081\000\081\000\081\000\081\000\
- \081\000\081\000\081\000\081\000\081\000\081\000\081\000\081\000\
- \081\000\081\000\081\000\081\000\081\000\081\000\081\000\081\000\
- \081\000\000\000\000\000\000\000\000\000\081\000\000\000\081\000\
- \081\000\081\000\081\000\081\000\081\000\081\000\081\000\081\000\
- \081\000\081\000\081\000\081\000\081\000\081\000\081\000\081\000\
- \081\000\081\000\081\000\081\000\081\000\081\000\081\000\081\000\
- \081\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\119\000\092\000\003\000\000\000\000\000\003\000\
+ \092\000\118\000\000\000\123\000\000\000\000\000\000\000\000\000\
+ \122\000\127\000\000\000\126\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\125\000\000\000\119\000\
+ \092\000\003\000\124\000\124\000\124\000\124\000\124\000\124\000\
+ \124\000\124\000\124\000\124\000\124\000\124\000\124\000\124\000\
+ \124\000\124\000\124\000\124\000\124\000\124\000\124\000\124\000\
+ \124\000\124\000\124\000\124\000\000\000\000\000\000\000\000\000\
+ \124\000\000\000\124\000\124\000\124\000\124\000\124\000\124\000\
+ \124\000\124\000\124\000\124\000\124\000\124\000\124\000\124\000\
+ \124\000\124\000\124\000\124\000\124\000\124\000\124\000\124\000\
+ \124\000\124\000\124\000\124\000\146\000\146\000\146\000\146\000\
+ \146\000\146\000\146\000\146\000\146\000\146\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\146\000\146\000\146\000\
+ \146\000\146\000\146\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\146\000\146\000\146\000\
+ \146\000\146\000\146\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\124\000\124\000\124\000\124\000\124\000\124\000\124\000\
+ \124\000\124\000\124\000\124\000\124\000\124\000\124\000\124\000\
+ \124\000\124\000\124\000\124\000\124\000\124\000\124\000\124\000\
+ \000\000\124\000\124\000\124\000\124\000\124\000\124\000\124\000\
+ \124\000\124\000\124\000\124\000\124\000\124\000\124\000\124\000\
+ \124\000\124\000\124\000\124\000\124\000\124\000\124\000\124\000\
+ \124\000\124\000\124\000\124\000\124\000\124\000\124\000\124\000\
+ \000\000\124\000\124\000\124\000\124\000\124\000\124\000\124\000\
+ \124\000\052\000\124\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\124\000\124\000\124\000\124\000\124\000\
+ \124\000\124\000\124\000\124\000\124\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\124\000\124\000\124\000\124\000\
+ \124\000\124\000\124\000\124\000\124\000\124\000\124\000\124\000\
+ \124\000\124\000\124\000\124\000\124\000\124\000\124\000\124\000\
+ \124\000\124\000\124\000\124\000\124\000\124\000\000\000\000\000\
+ \000\000\000\000\124\000\000\000\124\000\124\000\124\000\124\000\
+ \124\000\124\000\124\000\124\000\124\000\124\000\124\000\124\000\
+ \124\000\124\000\124\000\124\000\124\000\124\000\124\000\124\000\
+ \124\000\124\000\124\000\124\000\124\000\124\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\132\000\132\000\132\000\132\000\
+ \132\000\132\000\132\000\132\000\132\000\132\000\132\000\132\000\
+ \132\000\132\000\132\000\132\000\132\000\132\000\132\000\132\000\
+ \132\000\132\000\132\000\132\000\132\000\132\000\000\000\000\000\
+ \000\000\000\000\132\000\000\000\132\000\132\000\132\000\132\000\
+ \132\000\132\000\132\000\132\000\132\000\132\000\132\000\132\000\
+ \132\000\132\000\132\000\132\000\132\000\132\000\132\000\132\000\
+ \132\000\132\000\132\000\132\000\132\000\132\000\000\000\000\000\
+ \000\000\000\000\000\000\124\000\124\000\124\000\124\000\124\000\
+ \124\000\124\000\124\000\124\000\124\000\124\000\124\000\124\000\
+ \124\000\124\000\124\000\124\000\124\000\124\000\124\000\124\000\
+ \124\000\124\000\000\000\124\000\124\000\124\000\124\000\124\000\
+ \124\000\124\000\124\000\124\000\124\000\124\000\124\000\124\000\
+ \124\000\124\000\124\000\124\000\124\000\124\000\124\000\124\000\
+ \124\000\124\000\124\000\124\000\124\000\124\000\124\000\124\000\
+ \124\000\124\000\000\000\124\000\124\000\124\000\124\000\124\000\
+ \124\000\124\000\124\000\132\000\132\000\132\000\132\000\132\000\
+ \132\000\132\000\132\000\132\000\132\000\132\000\132\000\132\000\
+ \132\000\132\000\132\000\132\000\132\000\132\000\132\000\132\000\
+ \132\000\132\000\000\000\132\000\132\000\132\000\132\000\132\000\
+ \132\000\132\000\132\000\132\000\132\000\132\000\132\000\132\000\
+ \132\000\132\000\132\000\132\000\132\000\132\000\132\000\132\000\
+ \132\000\132\000\132\000\132\000\132\000\132\000\132\000\132\000\
+ \132\000\132\000\000\000\132\000\132\000\132\000\132\000\132\000\
+ \132\000\132\000\132\000\131\000\131\000\131\000\131\000\131\000\
+ \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
+ \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
+ \131\000\131\000\131\000\131\000\131\000\000\000\000\000\000\000\
+ \000\000\131\000\000\000\131\000\131\000\131\000\131\000\131\000\
+ \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
+ \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
+ \131\000\131\000\131\000\131\000\131\000\156\000\156\000\156\000\
+ \156\000\156\000\156\000\156\000\156\000\156\000\156\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\000\000\156\000\156\000\
+ \156\000\156\000\156\000\156\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\000\000\156\000\156\000\
+ \156\000\156\000\156\000\156\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\081\000\081\000\
- \081\000\081\000\081\000\081\000\081\000\081\000\081\000\081\000\
- \081\000\081\000\081\000\081\000\081\000\081\000\081\000\081\000\
- \081\000\081\000\081\000\081\000\081\000\000\000\081\000\081\000\
- \081\000\081\000\081\000\081\000\081\000\081\000\081\000\081\000\
- \081\000\081\000\081\000\081\000\081\000\081\000\081\000\081\000\
- \081\000\081\000\081\000\081\000\081\000\081\000\081\000\081\000\
- \081\000\081\000\081\000\081\000\081\000\000\000\081\000\081\000\
- \081\000\081\000\081\000\081\000\081\000\081\000\050\000\081\000\
+ \000\000\000\000\131\000\131\000\131\000\131\000\131\000\131\000\
+ \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
+ \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
+ \131\000\000\000\131\000\131\000\131\000\131\000\131\000\131\000\
+ \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
+ \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
+ \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
+ \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
+ \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
+ \131\000\131\000\131\000\131\000\000\000\000\000\032\000\000\000\
+ \000\000\000\000\129\000\131\000\131\000\131\000\131\000\131\000\
+ \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
+ \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
+ \131\000\131\000\131\000\131\000\131\000\000\000\000\000\000\000\
+ \000\000\131\000\000\000\131\000\131\000\131\000\131\000\131\000\
+ \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
+ \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
+ \131\000\131\000\131\000\131\000\131\000\123\000\123\000\123\000\
+ \123\000\123\000\123\000\123\000\123\000\123\000\123\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\000\000\123\000\123\000\
+ \123\000\123\000\123\000\123\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \081\000\081\000\081\000\081\000\081\000\081\000\081\000\081\000\
- \081\000\081\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\081\000\081\000\081\000\081\000\081\000\081\000\081\000\
- \081\000\081\000\081\000\081\000\081\000\081\000\081\000\081\000\
- \081\000\081\000\081\000\081\000\081\000\081\000\081\000\081\000\
- \081\000\081\000\081\000\000\000\000\000\000\000\000\000\081\000\
- \000\000\081\000\081\000\081\000\081\000\081\000\081\000\081\000\
- \081\000\081\000\081\000\081\000\081\000\081\000\081\000\081\000\
- \081\000\081\000\081\000\081\000\081\000\081\000\081\000\081\000\
- \081\000\081\000\081\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\089\000\089\000\089\000\089\000\089\000\089\000\089\000\
- \089\000\089\000\089\000\089\000\089\000\089\000\089\000\089\000\
- \089\000\089\000\089\000\089\000\089\000\089\000\089\000\089\000\
- \089\000\089\000\089\000\000\000\000\000\000\000\000\000\089\000\
- \000\000\089\000\089\000\089\000\089\000\089\000\089\000\089\000\
- \089\000\089\000\089\000\089\000\089\000\089\000\089\000\089\000\
- \089\000\089\000\089\000\089\000\089\000\089\000\089\000\089\000\
- \089\000\089\000\089\000\000\000\000\000\000\000\000\000\000\000\
- \081\000\081\000\081\000\081\000\081\000\081\000\081\000\081\000\
- \081\000\081\000\081\000\081\000\081\000\081\000\081\000\081\000\
- \081\000\081\000\081\000\081\000\081\000\081\000\081\000\000\000\
- \081\000\081\000\081\000\081\000\081\000\081\000\081\000\081\000\
- \081\000\081\000\081\000\081\000\081\000\081\000\081\000\081\000\
- \081\000\081\000\081\000\081\000\081\000\081\000\081\000\081\000\
- \081\000\081\000\081\000\081\000\081\000\081\000\081\000\000\000\
- \081\000\081\000\081\000\081\000\081\000\081\000\081\000\081\000\
- \089\000\089\000\089\000\089\000\089\000\089\000\089\000\089\000\
- \089\000\089\000\089\000\089\000\089\000\089\000\089\000\089\000\
- \089\000\089\000\089\000\089\000\089\000\089\000\089\000\000\000\
- \089\000\089\000\089\000\089\000\089\000\089\000\089\000\089\000\
- \089\000\089\000\089\000\089\000\089\000\089\000\089\000\089\000\
- \089\000\089\000\089\000\089\000\089\000\089\000\089\000\089\000\
- \089\000\089\000\089\000\089\000\089\000\089\000\089\000\000\000\
- \089\000\089\000\089\000\089\000\089\000\089\000\089\000\089\000\
- \088\000\088\000\088\000\088\000\088\000\088\000\088\000\088\000\
- \088\000\088\000\088\000\088\000\088\000\088\000\088\000\088\000\
- \088\000\088\000\088\000\088\000\088\000\088\000\088\000\088\000\
- \088\000\088\000\000\000\000\000\000\000\000\000\088\000\000\000\
- \088\000\088\000\088\000\088\000\088\000\088\000\088\000\088\000\
- \088\000\088\000\088\000\088\000\088\000\088\000\088\000\088\000\
- \088\000\088\000\088\000\088\000\088\000\088\000\088\000\088\000\
- \088\000\088\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\000\000\123\000\123\000\
+ \123\000\123\000\123\000\123\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\131\000\131\000\131\000\131\000\131\000\131\000\
+ \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
+ \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
+ \131\000\000\000\131\000\131\000\131\000\131\000\131\000\131\000\
+ \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
+ \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
+ \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
+ \131\000\132\000\131\000\131\000\131\000\131\000\131\000\131\000\
+ \131\000\131\000\132\000\132\000\132\000\132\000\132\000\132\000\
+ \132\000\132\000\132\000\132\000\000\000\000\000\032\000\000\000\
+ \000\000\000\000\000\000\132\000\132\000\132\000\132\000\132\000\
+ \132\000\132\000\132\000\132\000\132\000\132\000\132\000\132\000\
+ \132\000\132\000\132\000\132\000\132\000\132\000\132\000\132\000\
+ \132\000\132\000\132\000\132\000\132\000\000\000\000\000\000\000\
+ \000\000\132\000\000\000\132\000\132\000\132\000\132\000\132\000\
+ \132\000\132\000\132\000\132\000\132\000\132\000\132\000\132\000\
+ \132\000\132\000\132\000\132\000\132\000\132\000\132\000\132\000\
+ \132\000\132\000\132\000\132\000\132\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\000\000\088\000\
- \088\000\088\000\088\000\088\000\088\000\088\000\088\000\088\000\
- \088\000\088\000\088\000\088\000\088\000\088\000\088\000\088\000\
- \088\000\088\000\088\000\088\000\088\000\088\000\000\000\088\000\
- \088\000\088\000\088\000\088\000\088\000\088\000\088\000\088\000\
- \088\000\088\000\088\000\088\000\088\000\088\000\088\000\088\000\
- \088\000\088\000\088\000\088\000\088\000\088\000\088\000\088\000\
- \088\000\088\000\088\000\088\000\088\000\088\000\088\000\088\000\
- \088\000\088\000\088\000\088\000\088\000\088\000\088\000\088\000\
- \088\000\088\000\088\000\088\000\088\000\088\000\088\000\088\000\
- \088\000\000\000\000\000\030\000\000\000\000\000\000\000\086\000\
- \088\000\088\000\088\000\088\000\088\000\088\000\088\000\088\000\
- \088\000\088\000\088\000\088\000\088\000\088\000\088\000\088\000\
- \088\000\088\000\088\000\088\000\088\000\088\000\088\000\088\000\
- \088\000\088\000\000\000\000\000\000\000\000\000\088\000\000\000\
- \088\000\088\000\088\000\088\000\088\000\088\000\088\000\088\000\
- \088\000\088\000\088\000\088\000\088\000\088\000\088\000\088\000\
- \088\000\088\000\088\000\088\000\088\000\088\000\088\000\088\000\
- \088\000\088\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\132\000\132\000\132\000\132\000\132\000\132\000\
+ \132\000\132\000\132\000\132\000\132\000\132\000\132\000\132\000\
+ \132\000\132\000\132\000\132\000\132\000\132\000\132\000\132\000\
+ \132\000\000\000\132\000\132\000\132\000\132\000\132\000\132\000\
+ \132\000\132\000\132\000\132\000\132\000\132\000\132\000\132\000\
+ \132\000\132\000\132\000\132\000\132\000\132\000\132\000\132\000\
+ \132\000\132\000\132\000\132\000\132\000\132\000\132\000\132\000\
+ \132\000\000\000\132\000\132\000\132\000\132\000\132\000\132\000\
+ \132\000\132\000\142\000\000\000\142\000\000\000\000\000\154\000\
+ \000\000\142\000\153\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\141\000\141\000\141\000\141\000\141\000\141\000\
+ \141\000\141\000\141\000\141\000\000\000\032\000\000\000\032\000\
+ \000\000\000\000\000\000\000\000\032\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\152\000\152\000\152\000\
+ \152\000\152\000\152\000\152\000\152\000\152\000\152\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\000\000\142\000\000\000\
+ \000\000\000\000\000\000\000\000\142\000\157\000\000\000\000\000\
+ \157\000\157\000\157\000\000\000\000\000\000\000\157\000\157\000\
+ \142\000\157\000\157\000\157\000\142\000\000\000\142\000\000\000\
+ \000\000\032\000\140\000\000\000\000\000\000\000\157\000\032\000\
+ \157\000\157\000\157\000\157\000\157\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\032\000\000\000\000\000\000\000\032\000\
+ \000\000\032\000\000\000\000\000\000\000\151\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \157\000\000\000\157\000\000\000\000\000\000\000\000\000\000\000\
+ \159\000\000\000\000\000\159\000\159\000\159\000\000\000\000\000\
+ \000\000\159\000\159\000\000\000\159\000\159\000\159\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \157\000\159\000\157\000\159\000\159\000\159\000\159\000\159\000\
+ \160\000\160\000\160\000\160\000\160\000\160\000\160\000\160\000\
+ \160\000\160\000\160\000\160\000\160\000\160\000\160\000\160\000\
+ \160\000\160\000\160\000\160\000\160\000\160\000\160\000\160\000\
+ \160\000\160\000\000\000\159\000\000\000\159\000\160\000\000\000\
+ \160\000\160\000\160\000\160\000\160\000\160\000\160\000\160\000\
+ \160\000\160\000\160\000\160\000\160\000\160\000\160\000\160\000\
+ \160\000\160\000\160\000\160\000\160\000\160\000\160\000\160\000\
+ \160\000\160\000\000\000\159\000\000\000\159\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\000\000\088\000\
- \088\000\088\000\088\000\088\000\088\000\088\000\088\000\088\000\
- \088\000\088\000\088\000\088\000\088\000\088\000\088\000\088\000\
- \088\000\088\000\088\000\088\000\088\000\088\000\000\000\088\000\
- \088\000\088\000\088\000\088\000\088\000\088\000\088\000\088\000\
- \088\000\088\000\088\000\088\000\088\000\088\000\088\000\088\000\
- \088\000\088\000\088\000\088\000\088\000\088\000\088\000\088\000\
- \088\000\088\000\088\000\088\000\088\000\088\000\089\000\088\000\
- \088\000\088\000\088\000\088\000\088\000\088\000\088\000\089\000\
- \089\000\089\000\089\000\089\000\089\000\089\000\089\000\089\000\
- \089\000\000\000\000\000\030\000\000\000\000\000\000\000\000\000\
- \089\000\089\000\089\000\089\000\089\000\089\000\089\000\089\000\
- \089\000\089\000\089\000\089\000\089\000\089\000\089\000\089\000\
- \089\000\089\000\089\000\089\000\089\000\089\000\089\000\089\000\
- \089\000\089\000\000\000\000\000\000\000\000\000\089\000\000\000\
- \089\000\089\000\089\000\089\000\089\000\089\000\089\000\089\000\
- \089\000\089\000\089\000\089\000\089\000\089\000\089\000\089\000\
- \089\000\089\000\089\000\089\000\089\000\089\000\089\000\089\000\
- \089\000\089\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\255\255\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\160\000\
+ \160\000\160\000\160\000\160\000\160\000\160\000\160\000\160\000\
+ \160\000\160\000\160\000\160\000\160\000\160\000\160\000\160\000\
+ \160\000\160\000\160\000\160\000\160\000\160\000\000\000\160\000\
+ \160\000\160\000\160\000\160\000\160\000\160\000\160\000\160\000\
+ \160\000\160\000\160\000\160\000\160\000\160\000\160\000\160\000\
+ \160\000\160\000\160\000\160\000\160\000\160\000\160\000\160\000\
+ \160\000\160\000\160\000\160\000\160\000\160\000\000\000\160\000\
+ \160\000\160\000\160\000\160\000\160\000\160\000\160\000\159\000\
+ \000\000\000\000\159\000\159\000\159\000\000\000\000\000\000\000\
+ \159\000\159\000\000\000\159\000\159\000\159\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \159\000\000\000\159\000\159\000\159\000\159\000\159\000\000\000\
+ \000\000\000\000\000\000\160\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\160\000\160\000\160\000\160\000\
+ \160\000\160\000\160\000\160\000\160\000\160\000\000\000\000\000\
+ \030\000\000\000\159\000\000\000\159\000\160\000\160\000\160\000\
+ \160\000\160\000\160\000\160\000\160\000\160\000\160\000\160\000\
+ \160\000\160\000\160\000\160\000\160\000\160\000\160\000\160\000\
+ \160\000\160\000\160\000\160\000\160\000\160\000\160\000\000\000\
+ \000\000\000\000\159\000\160\000\159\000\160\000\160\000\160\000\
+ \160\000\160\000\160\000\160\000\160\000\160\000\160\000\160\000\
+ \160\000\160\000\160\000\160\000\160\000\160\000\160\000\160\000\
+ \160\000\160\000\160\000\160\000\160\000\160\000\160\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\000\000\089\000\
- \089\000\089\000\089\000\089\000\089\000\089\000\089\000\089\000\
- \089\000\089\000\089\000\089\000\089\000\089\000\089\000\089\000\
- \089\000\089\000\089\000\089\000\089\000\089\000\000\000\089\000\
- \089\000\089\000\089\000\089\000\089\000\089\000\089\000\089\000\
- \089\000\089\000\089\000\089\000\089\000\089\000\089\000\089\000\
- \089\000\089\000\089\000\089\000\089\000\089\000\089\000\089\000\
- \089\000\089\000\089\000\089\000\089\000\089\000\000\000\089\000\
- \089\000\089\000\089\000\089\000\089\000\089\000\089\000\099\000\
- \000\000\099\000\000\000\000\000\111\000\000\000\099\000\110\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\000\000\098\000\
- \098\000\098\000\098\000\098\000\098\000\098\000\098\000\098\000\
- \098\000\000\000\030\000\000\000\030\000\000\000\000\000\000\000\
- \000\000\030\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\109\000\109\000\109\000\109\000\109\000\109\000\
- \109\000\109\000\109\000\109\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\099\000\000\000\000\000\000\000\000\000\
- \000\000\099\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\000\000\099\000\000\000\000\000\
- \000\000\099\000\000\000\099\000\000\000\000\000\030\000\097\000\
- \000\000\000\000\000\000\000\000\030\000\116\000\000\000\000\000\
- \116\000\116\000\116\000\000\000\000\000\000\000\116\000\116\000\
- \030\000\116\000\116\000\116\000\030\000\000\000\030\000\000\000\
- \000\000\000\000\108\000\000\000\000\000\000\000\116\000\000\000\
- \116\000\116\000\116\000\116\000\116\000\117\000\117\000\117\000\
- \117\000\117\000\117\000\117\000\117\000\117\000\117\000\117\000\
- \117\000\117\000\117\000\117\000\117\000\117\000\117\000\117\000\
- \117\000\117\000\117\000\117\000\117\000\117\000\117\000\000\000\
- \000\000\000\000\116\000\117\000\000\000\117\000\117\000\117\000\
- \117\000\117\000\117\000\117\000\117\000\117\000\117\000\117\000\
- \117\000\117\000\117\000\117\000\117\000\117\000\117\000\117\000\
- \117\000\117\000\117\000\117\000\117\000\117\000\117\000\000\000\
- \116\000\000\000\116\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\160\000\160\000\160\000\160\000\
+ \160\000\160\000\160\000\160\000\160\000\160\000\160\000\160\000\
+ \160\000\160\000\160\000\160\000\160\000\160\000\160\000\160\000\
+ \160\000\160\000\160\000\000\000\160\000\160\000\160\000\160\000\
+ \160\000\160\000\160\000\160\000\160\000\160\000\160\000\160\000\
+ \160\000\160\000\160\000\160\000\160\000\160\000\160\000\160\000\
+ \160\000\160\000\160\000\160\000\160\000\160\000\160\000\160\000\
+ \160\000\160\000\160\000\000\000\160\000\160\000\160\000\160\000\
+ \160\000\160\000\160\000\160\000\162\000\000\000\000\000\162\000\
+ \162\000\162\000\000\000\000\000\000\000\162\000\162\000\000\000\
+ \162\000\162\000\162\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\162\000\000\000\162\000\
+ \162\000\162\000\162\000\162\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\163\000\000\000\162\000\
+ \000\000\162\000\163\000\000\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\163\000\000\000\162\000\
+ \000\000\162\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\255\255\000\000\117\000\117\000\117\000\117\000\
- \117\000\117\000\117\000\117\000\117\000\117\000\117\000\117\000\
- \117\000\117\000\117\000\117\000\117\000\117\000\117\000\117\000\
- \117\000\117\000\117\000\000\000\117\000\117\000\117\000\117\000\
- \117\000\117\000\117\000\117\000\117\000\117\000\117\000\117\000\
- \117\000\117\000\117\000\117\000\117\000\117\000\117\000\117\000\
- \117\000\117\000\117\000\117\000\117\000\117\000\117\000\117\000\
- \117\000\117\000\117\000\000\000\117\000\117\000\117\000\117\000\
- \117\000\117\000\117\000\117\000\116\000\000\000\000\000\116\000\
- \116\000\116\000\000\000\000\000\000\000\116\000\116\000\000\000\
- \116\000\116\000\116\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\000\000\116\000\000\000\116\000\
- \116\000\116\000\116\000\116\000\000\000\000\000\000\000\000\000\
- \117\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\117\000\117\000\117\000\117\000\117\000\117\000\117\000\
- \117\000\117\000\117\000\000\000\000\000\028\000\000\000\000\000\
- \000\000\116\000\117\000\117\000\117\000\117\000\117\000\117\000\
- \117\000\117\000\117\000\117\000\117\000\117\000\117\000\117\000\
- \117\000\117\000\117\000\117\000\117\000\117\000\117\000\117\000\
- \117\000\117\000\117\000\117\000\000\000\000\000\000\000\116\000\
- \117\000\116\000\117\000\117\000\117\000\117\000\117\000\117\000\
- \117\000\117\000\117\000\117\000\117\000\117\000\117\000\117\000\
- \117\000\117\000\117\000\117\000\117\000\117\000\117\000\117\000\
- \117\000\117\000\117\000\117\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\000\000\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\000\000\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\162\000\000\000\000\000\162\000\162\000\
+ \162\000\000\000\000\000\000\000\162\000\162\000\000\000\162\000\
+ \162\000\162\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\162\000\000\000\162\000\162\000\
+ \162\000\162\000\162\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\163\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\000\000\162\000\030\000\
+ \162\000\000\000\000\000\164\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\163\000\162\000\000\000\
+ \162\000\000\000\163\000\000\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\163\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\165\000\165\000\165\000\165\000\
+ \165\000\165\000\165\000\165\000\165\000\165\000\165\000\165\000\
+ \165\000\165\000\165\000\165\000\165\000\165\000\165\000\165\000\
+ \165\000\165\000\165\000\165\000\165\000\165\000\000\000\000\000\
+ \000\000\000\000\165\000\000\000\165\000\165\000\165\000\165\000\
+ \165\000\165\000\165\000\165\000\165\000\165\000\165\000\165\000\
+ \165\000\165\000\165\000\165\000\165\000\165\000\165\000\165\000\
+ \165\000\165\000\165\000\165\000\165\000\165\000\000\000\000\000\
+ \000\000\000\000\000\000\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\000\000\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\000\000\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\165\000\165\000\165\000\165\000\165\000\
+ \165\000\165\000\165\000\165\000\165\000\165\000\165\000\165\000\
+ \165\000\165\000\165\000\165\000\165\000\165\000\165\000\165\000\
+ \165\000\165\000\000\000\165\000\165\000\165\000\165\000\165\000\
+ \165\000\165\000\165\000\165\000\165\000\165\000\165\000\165\000\
+ \165\000\165\000\165\000\165\000\165\000\165\000\165\000\165\000\
+ \165\000\165\000\165\000\165\000\165\000\165\000\165\000\165\000\
+ \165\000\165\000\165\000\165\000\165\000\165\000\165\000\165\000\
+ \165\000\165\000\165\000\165\000\165\000\165\000\165\000\165\000\
+ \165\000\165\000\165\000\165\000\165\000\000\000\000\000\166\000\
+ \000\000\000\000\000\000\000\000\165\000\165\000\165\000\165\000\
+ \165\000\165\000\165\000\165\000\165\000\165\000\165\000\165\000\
+ \165\000\165\000\165\000\165\000\165\000\165\000\165\000\165\000\
+ \165\000\165\000\165\000\165\000\165\000\165\000\000\000\000\000\
+ \000\000\000\000\165\000\000\000\165\000\165\000\165\000\165\000\
+ \165\000\165\000\165\000\165\000\165\000\165\000\165\000\165\000\
+ \165\000\165\000\165\000\165\000\165\000\165\000\165\000\165\000\
+ \165\000\165\000\165\000\165\000\165\000\165\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\174\000\174\000\174\000\174\000\
+ \174\000\174\000\174\000\174\000\174\000\174\000\174\000\174\000\
+ \174\000\174\000\174\000\174\000\174\000\174\000\174\000\174\000\
+ \174\000\174\000\174\000\174\000\174\000\174\000\000\000\000\000\
+ \000\000\000\000\174\000\000\000\174\000\174\000\174\000\174\000\
+ \174\000\174\000\174\000\174\000\174\000\174\000\174\000\174\000\
+ \174\000\174\000\174\000\174\000\174\000\174\000\174\000\174\000\
+ \174\000\174\000\174\000\174\000\174\000\174\000\000\000\000\000\
+ \000\000\000\000\000\000\165\000\165\000\165\000\165\000\165\000\
+ \165\000\165\000\165\000\165\000\165\000\165\000\165\000\165\000\
+ \165\000\165\000\165\000\165\000\165\000\165\000\165\000\165\000\
+ \165\000\165\000\000\000\165\000\165\000\165\000\165\000\165\000\
+ \165\000\165\000\165\000\165\000\165\000\165\000\165\000\165\000\
+ \165\000\165\000\165\000\165\000\165\000\165\000\165\000\165\000\
+ \165\000\165\000\165\000\165\000\165\000\165\000\165\000\165\000\
+ \165\000\165\000\000\000\165\000\165\000\165\000\165\000\165\000\
+ \165\000\165\000\165\000\174\000\174\000\174\000\174\000\174\000\
+ \174\000\174\000\174\000\174\000\174\000\174\000\174\000\174\000\
+ \174\000\174\000\174\000\174\000\174\000\174\000\174\000\174\000\
+ \174\000\174\000\000\000\174\000\174\000\174\000\174\000\174\000\
+ \174\000\174\000\174\000\174\000\174\000\174\000\174\000\174\000\
+ \174\000\174\000\174\000\174\000\174\000\174\000\174\000\174\000\
+ \174\000\174\000\174\000\174\000\174\000\174\000\174\000\174\000\
+ \174\000\174\000\000\000\174\000\174\000\174\000\174\000\174\000\
+ \174\000\174\000\174\000\173\000\173\000\173\000\173\000\173\000\
+ \173\000\173\000\173\000\173\000\173\000\173\000\173\000\173\000\
+ \173\000\173\000\173\000\173\000\173\000\173\000\173\000\173\000\
+ \173\000\173\000\173\000\173\000\173\000\000\000\000\000\000\000\
+ \000\000\173\000\000\000\173\000\173\000\173\000\173\000\173\000\
+ \173\000\173\000\173\000\173\000\173\000\173\000\173\000\173\000\
+ \173\000\173\000\173\000\173\000\173\000\173\000\173\000\173\000\
+ \173\000\173\000\173\000\173\000\173\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\117\000\117\000\117\000\117\000\117\000\117\000\117\000\
- \117\000\117\000\117\000\117\000\117\000\117\000\117\000\117\000\
- \117\000\117\000\117\000\117\000\117\000\117\000\117\000\117\000\
- \000\000\117\000\117\000\117\000\117\000\117\000\117\000\117\000\
- \117\000\117\000\117\000\117\000\117\000\117\000\117\000\117\000\
- \117\000\117\000\117\000\117\000\117\000\117\000\117\000\117\000\
- \117\000\117\000\117\000\117\000\117\000\117\000\117\000\117\000\
- \000\000\117\000\117\000\117\000\117\000\117\000\117\000\117\000\
- \117\000\119\000\000\000\000\000\119\000\119\000\119\000\000\000\
- \000\000\000\000\119\000\119\000\000\000\119\000\119\000\119\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\119\000\000\000\119\000\119\000\119\000\119\000\
- \119\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
- \120\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
- \120\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
- \120\000\120\000\120\000\000\000\000\000\000\000\119\000\120\000\
- \000\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
- \120\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
- \120\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
- \120\000\120\000\120\000\000\000\119\000\000\000\119\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\173\000\173\000\173\000\173\000\173\000\173\000\
+ \173\000\173\000\173\000\173\000\173\000\173\000\173\000\173\000\
+ \173\000\173\000\173\000\173\000\173\000\173\000\173\000\173\000\
+ \173\000\000\000\173\000\173\000\173\000\173\000\173\000\173\000\
+ \173\000\173\000\173\000\173\000\173\000\173\000\173\000\173\000\
+ \173\000\173\000\173\000\173\000\173\000\173\000\173\000\173\000\
+ \173\000\173\000\173\000\173\000\173\000\173\000\173\000\173\000\
+ \173\000\173\000\173\000\173\000\173\000\173\000\173\000\173\000\
+ \173\000\173\000\173\000\173\000\173\000\173\000\173\000\173\000\
+ \173\000\173\000\173\000\173\000\000\000\000\000\030\000\000\000\
+ \000\000\000\000\171\000\173\000\173\000\173\000\173\000\173\000\
+ \173\000\173\000\173\000\173\000\173\000\173\000\173\000\173\000\
+ \173\000\173\000\173\000\173\000\173\000\173\000\173\000\173\000\
+ \173\000\173\000\173\000\173\000\173\000\000\000\000\000\000\000\
+ \000\000\173\000\000\000\173\000\173\000\173\000\173\000\173\000\
+ \173\000\173\000\173\000\173\000\173\000\173\000\173\000\173\000\
+ \173\000\173\000\173\000\173\000\173\000\173\000\173\000\173\000\
+ \173\000\173\000\173\000\173\000\173\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \120\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
- \120\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
- \120\000\120\000\120\000\120\000\120\000\120\000\120\000\000\000\
- \120\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
- \120\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
- \120\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
- \120\000\120\000\120\000\120\000\120\000\120\000\120\000\000\000\
- \120\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
- \119\000\000\000\000\000\119\000\119\000\119\000\000\000\000\000\
- \000\000\119\000\119\000\000\000\119\000\119\000\119\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\119\000\000\000\119\000\119\000\119\000\119\000\119\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\120\000\000\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\000\000\120\000\
- \120\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
- \120\000\000\000\000\000\028\000\000\000\119\000\000\000\121\000\
- \120\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
- \120\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
- \120\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
- \120\000\120\000\000\000\119\000\000\000\119\000\120\000\000\000\
- \120\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
- \120\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
- \120\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
- \120\000\120\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \122\000\122\000\122\000\122\000\122\000\122\000\122\000\122\000\
- \122\000\122\000\122\000\122\000\122\000\122\000\122\000\122\000\
- \122\000\122\000\122\000\122\000\122\000\122\000\122\000\122\000\
- \122\000\122\000\000\000\000\000\000\000\000\000\122\000\000\000\
- \122\000\122\000\122\000\122\000\122\000\122\000\122\000\122\000\
- \122\000\122\000\122\000\122\000\122\000\122\000\122\000\122\000\
- \122\000\122\000\122\000\122\000\122\000\122\000\122\000\122\000\
- \122\000\122\000\000\000\000\000\000\000\000\000\000\000\120\000\
- \120\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
- \120\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
- \120\000\120\000\120\000\120\000\120\000\120\000\000\000\120\000\
- \120\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
- \120\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
- \120\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
- \120\000\120\000\120\000\120\000\120\000\120\000\000\000\120\000\
- \120\000\120\000\120\000\120\000\120\000\120\000\120\000\122\000\
- \122\000\122\000\122\000\122\000\122\000\122\000\122\000\122\000\
- \122\000\122\000\122\000\122\000\122\000\122\000\122\000\122\000\
- \122\000\122\000\122\000\122\000\122\000\122\000\000\000\122\000\
- \122\000\122\000\122\000\122\000\122\000\122\000\122\000\122\000\
- \122\000\122\000\122\000\122\000\122\000\122\000\122\000\122\000\
- \122\000\122\000\122\000\122\000\122\000\122\000\122\000\122\000\
- \122\000\122\000\122\000\122\000\122\000\122\000\122\000\122\000\
- \122\000\122\000\122\000\122\000\122\000\122\000\122\000\122\000\
- \122\000\122\000\122\000\122\000\122\000\122\000\122\000\122\000\
- \122\000\000\000\000\000\123\000\000\000\000\000\000\000\000\000\
- \122\000\122\000\122\000\122\000\122\000\122\000\122\000\122\000\
- \122\000\122\000\122\000\122\000\122\000\122\000\122\000\122\000\
- \122\000\122\000\122\000\122\000\122\000\122\000\122\000\122\000\
- \122\000\122\000\000\000\000\000\000\000\000\000\122\000\000\000\
- \122\000\122\000\122\000\122\000\122\000\122\000\122\000\122\000\
- \122\000\122\000\122\000\122\000\122\000\122\000\122\000\122\000\
- \122\000\122\000\122\000\122\000\122\000\122\000\122\000\122\000\
- \122\000\122\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
- \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
- \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
- \131\000\131\000\000\000\000\000\000\000\000\000\131\000\000\000\
- \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
- \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
- \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
- \131\000\131\000\000\000\000\000\000\000\000\000\000\000\122\000\
- \122\000\122\000\122\000\122\000\122\000\122\000\122\000\122\000\
- \122\000\122\000\122\000\122\000\122\000\122\000\122\000\122\000\
- \122\000\122\000\122\000\122\000\122\000\122\000\000\000\122\000\
- \122\000\122\000\122\000\122\000\122\000\122\000\122\000\122\000\
- \122\000\122\000\122\000\122\000\122\000\122\000\122\000\122\000\
- \122\000\122\000\122\000\122\000\122\000\122\000\122\000\122\000\
- \122\000\122\000\122\000\122\000\122\000\122\000\000\000\122\000\
- \122\000\122\000\122\000\122\000\122\000\122\000\122\000\131\000\
- \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
- \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
- \131\000\131\000\131\000\131\000\131\000\131\000\000\000\131\000\
- \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
- \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
- \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
- \131\000\131\000\131\000\131\000\131\000\131\000\000\000\131\000\
- \131\000\131\000\131\000\131\000\131\000\131\000\131\000\130\000\
- \130\000\130\000\130\000\130\000\130\000\130\000\130\000\130\000\
- \130\000\130\000\130\000\130\000\130\000\130\000\130\000\130\000\
- \130\000\130\000\130\000\130\000\130\000\130\000\130\000\130\000\
- \130\000\000\000\000\000\000\000\000\000\130\000\000\000\130\000\
- \130\000\130\000\130\000\130\000\130\000\130\000\130\000\130\000\
- \130\000\130\000\130\000\130\000\130\000\130\000\130\000\130\000\
- \130\000\130\000\130\000\130\000\130\000\130\000\130\000\130\000\
- \130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\173\000\173\000\173\000\173\000\173\000\173\000\
+ \173\000\173\000\173\000\173\000\173\000\173\000\173\000\173\000\
+ \173\000\173\000\173\000\173\000\173\000\173\000\173\000\173\000\
+ \173\000\000\000\173\000\173\000\173\000\173\000\173\000\173\000\
+ \173\000\173\000\173\000\173\000\173\000\173\000\173\000\173\000\
+ \173\000\173\000\173\000\173\000\173\000\173\000\173\000\173\000\
+ \173\000\173\000\173\000\173\000\173\000\173\000\173\000\173\000\
+ \173\000\174\000\173\000\173\000\173\000\173\000\173\000\173\000\
+ \173\000\173\000\174\000\174\000\174\000\174\000\174\000\174\000\
+ \174\000\174\000\174\000\174\000\000\000\000\000\030\000\000\000\
+ \000\000\000\000\000\000\174\000\174\000\174\000\174\000\174\000\
+ \174\000\174\000\174\000\174\000\174\000\174\000\174\000\174\000\
+ \174\000\174\000\174\000\174\000\174\000\174\000\174\000\174\000\
+ \174\000\174\000\174\000\174\000\174\000\000\000\000\000\000\000\
+ \000\000\174\000\000\000\174\000\174\000\174\000\174\000\174\000\
+ \174\000\174\000\174\000\174\000\174\000\174\000\174\000\174\000\
+ \174\000\174\000\174\000\174\000\174\000\174\000\174\000\174\000\
+ \174\000\174\000\174\000\174\000\174\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\130\000\130\000\
- \130\000\130\000\130\000\130\000\130\000\130\000\130\000\130\000\
- \130\000\130\000\130\000\130\000\130\000\130\000\130\000\130\000\
- \130\000\130\000\130\000\130\000\130\000\000\000\130\000\130\000\
- \130\000\130\000\130\000\130\000\130\000\130\000\130\000\130\000\
- \130\000\130\000\130\000\130\000\130\000\130\000\130\000\130\000\
- \130\000\130\000\130\000\130\000\130\000\130\000\130\000\130\000\
- \130\000\130\000\130\000\130\000\130\000\130\000\130\000\130\000\
- \130\000\130\000\130\000\130\000\130\000\130\000\130\000\130\000\
- \130\000\130\000\130\000\130\000\130\000\130\000\130\000\130\000\
- \000\000\000\000\028\000\000\000\000\000\000\000\128\000\130\000\
- \130\000\130\000\130\000\130\000\130\000\130\000\130\000\130\000\
- \130\000\130\000\130\000\130\000\130\000\130\000\130\000\130\000\
- \130\000\130\000\130\000\130\000\130\000\130\000\130\000\130\000\
- \130\000\000\000\000\000\000\000\000\000\130\000\000\000\130\000\
- \130\000\130\000\130\000\130\000\130\000\130\000\130\000\130\000\
- \130\000\130\000\130\000\130\000\130\000\130\000\130\000\130\000\
- \130\000\130\000\130\000\130\000\130\000\130\000\130\000\130\000\
- \130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\130\000\130\000\
- \130\000\130\000\130\000\130\000\130\000\130\000\130\000\130\000\
- \130\000\130\000\130\000\130\000\130\000\130\000\130\000\130\000\
- \130\000\130\000\130\000\130\000\130\000\000\000\130\000\130\000\
- \130\000\130\000\130\000\130\000\130\000\130\000\130\000\130\000\
- \130\000\130\000\130\000\130\000\130\000\130\000\130\000\130\000\
- \130\000\130\000\130\000\130\000\130\000\130\000\130\000\130\000\
- \130\000\130\000\130\000\130\000\130\000\131\000\130\000\130\000\
- \130\000\130\000\130\000\130\000\130\000\130\000\131\000\131\000\
- \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
- \000\000\000\000\028\000\000\000\000\000\000\000\000\000\131\000\
- \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
- \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
- \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
- \131\000\000\000\000\000\000\000\000\000\131\000\000\000\131\000\
- \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
- \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
- \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
- \131\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\131\000\131\000\
- \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
- \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
- \131\000\131\000\131\000\131\000\131\000\000\000\131\000\131\000\
- \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
- \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
- \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
- \131\000\131\000\131\000\131\000\131\000\000\000\131\000\131\000\
- \131\000\131\000\131\000\131\000\131\000\131\000\028\000\000\000\
- \000\000\134\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \133\000\000\000\134\000\134\000\134\000\134\000\134\000\134\000\
- \134\000\134\000\134\000\134\000\085\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\134\000\134\000\134\000\134\000\134\000\
- \134\000\134\000\134\000\134\000\134\000\134\000\134\000\134\000\
- \134\000\134\000\134\000\134\000\134\000\134\000\134\000\134\000\
- \134\000\134\000\134\000\134\000\134\000\000\000\000\000\000\000\
- \000\000\134\000\135\000\134\000\134\000\134\000\134\000\134\000\
- \134\000\134\000\134\000\134\000\134\000\134\000\134\000\134\000\
- \134\000\134\000\134\000\134\000\134\000\134\000\134\000\134\000\
- \134\000\134\000\134\000\134\000\134\000\000\000\000\000\000\000\
+ \000\000\000\000\174\000\174\000\174\000\174\000\174\000\174\000\
+ \174\000\174\000\174\000\174\000\174\000\174\000\174\000\174\000\
+ \174\000\174\000\174\000\174\000\174\000\174\000\174\000\174\000\
+ \174\000\000\000\174\000\174\000\174\000\174\000\174\000\174\000\
+ \174\000\174\000\174\000\174\000\174\000\174\000\174\000\174\000\
+ \174\000\174\000\174\000\174\000\174\000\174\000\174\000\174\000\
+ \174\000\174\000\174\000\174\000\174\000\174\000\174\000\174\000\
+ \174\000\000\000\174\000\174\000\174\000\174\000\174\000\174\000\
+ \174\000\174\000\030\000\000\000\000\000\177\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\176\000\000\000\177\000\177\000\
+ \177\000\177\000\177\000\177\000\177\000\177\000\177\000\177\000\
+ \128\000\000\000\000\000\000\000\000\000\000\000\000\000\177\000\
+ \177\000\177\000\177\000\177\000\177\000\177\000\177\000\177\000\
+ \177\000\177\000\177\000\177\000\177\000\177\000\177\000\177\000\
+ \177\000\177\000\177\000\177\000\177\000\177\000\177\000\177\000\
+ \177\000\000\000\000\000\000\000\000\000\177\000\178\000\177\000\
+ \177\000\177\000\177\000\177\000\177\000\177\000\177\000\177\000\
+ \177\000\177\000\177\000\177\000\177\000\177\000\177\000\177\000\
+ \177\000\177\000\177\000\177\000\177\000\177\000\177\000\177\000\
+ \177\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\000\000\177\000\177\000\
+ \177\000\177\000\177\000\177\000\177\000\177\000\177\000\177\000\
+ \177\000\177\000\177\000\177\000\177\000\177\000\177\000\177\000\
+ \177\000\177\000\177\000\177\000\177\000\000\000\177\000\177\000\
+ \177\000\177\000\177\000\177\000\177\000\177\000\177\000\177\000\
+ \177\000\177\000\177\000\177\000\177\000\177\000\177\000\177\000\
+ \177\000\177\000\177\000\177\000\177\000\177\000\177\000\177\000\
+ \177\000\177\000\177\000\177\000\177\000\000\000\177\000\177\000\
+ \177\000\177\000\177\000\177\000\177\000\177\000\255\255\180\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\134\000\134\000\134\000\134\000\134\000\134\000\
- \134\000\134\000\134\000\134\000\134\000\134\000\134\000\134\000\
- \134\000\134\000\134\000\134\000\134\000\134\000\134\000\134\000\
- \134\000\000\000\134\000\134\000\134\000\134\000\134\000\134\000\
- \134\000\134\000\134\000\134\000\134\000\134\000\134\000\134\000\
- \134\000\134\000\134\000\134\000\134\000\134\000\134\000\134\000\
- \134\000\134\000\134\000\134\000\134\000\134\000\134\000\134\000\
- \134\000\000\000\134\000\134\000\134\000\134\000\134\000\134\000\
- \134\000\134\000\255\255\137\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\137\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\085\000\000\000\
- \000\000\000\000\000\000\000\000\000\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\000\000\
- \000\000\000\000\000\000\137\000\000\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\000\000\
+ \180\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\128\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\000\000\000\000\000\000\000\000\180\000\
+ \000\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\137\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\000\000\137\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\000\000\137\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\136\000\000\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\085\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\137\000\
- \000\000\000\000\000\000\000\000\137\000\000\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\137\000\
+ \180\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\180\000\180\000\180\000\180\000\000\000\
+ \180\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\180\000\180\000\180\000\180\000\000\000\
+ \180\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\000\000\000\000\000\000\000\000\000\000\000\000\179\000\
+ \000\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\128\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\180\000\000\000\000\000\000\000\000\000\
+ \180\000\000\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\180\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\000\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\000\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\085\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\137\000\
- \000\000\000\000\000\000\000\000\137\000\000\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\137\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\144\000\144\000\
- \144\000\144\000\144\000\144\000\144\000\144\000\144\000\144\000\
- \144\000\144\000\144\000\144\000\144\000\144\000\144\000\144\000\
- \144\000\144\000\144\000\144\000\144\000\144\000\144\000\144\000\
- \000\000\000\000\000\000\000\000\144\000\000\000\144\000\144\000\
- \144\000\144\000\144\000\144\000\144\000\144\000\144\000\144\000\
- \144\000\144\000\144\000\144\000\144\000\144\000\144\000\144\000\
- \144\000\144\000\144\000\144\000\144\000\144\000\144\000\144\000\
- \000\000\000\000\000\000\000\000\000\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\000\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\000\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\144\000\144\000\144\000\
- \144\000\144\000\144\000\144\000\144\000\144\000\144\000\144\000\
- \144\000\144\000\144\000\144\000\144\000\144\000\144\000\144\000\
- \144\000\144\000\144\000\144\000\000\000\144\000\144\000\144\000\
- \144\000\144\000\144\000\144\000\144\000\144\000\144\000\144\000\
- \144\000\144\000\144\000\144\000\144\000\144\000\144\000\144\000\
- \144\000\144\000\144\000\144\000\144\000\144\000\144\000\144\000\
- \144\000\144\000\144\000\144\000\000\000\144\000\144\000\144\000\
- \144\000\144\000\144\000\144\000\144\000\143\000\143\000\143\000\
- \143\000\143\000\143\000\143\000\143\000\143\000\143\000\143\000\
- \143\000\143\000\143\000\143\000\143\000\143\000\143\000\143\000\
- \143\000\143\000\143\000\143\000\143\000\143\000\143\000\000\000\
- \000\000\000\000\000\000\143\000\000\000\143\000\143\000\143\000\
- \143\000\143\000\143\000\143\000\143\000\143\000\143\000\143\000\
- \143\000\143\000\143\000\143\000\143\000\143\000\143\000\143\000\
- \143\000\143\000\143\000\143\000\143\000\143\000\143\000\000\000\
+ \000\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \000\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\128\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\180\000\000\000\000\000\000\000\000\000\
+ \180\000\000\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\180\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\187\000\187\000\187\000\187\000\187\000\187\000\
+ \187\000\187\000\187\000\187\000\187\000\187\000\187\000\187\000\
+ \187\000\187\000\187\000\187\000\187\000\187\000\187\000\187\000\
+ \187\000\187\000\187\000\187\000\000\000\000\000\000\000\000\000\
+ \187\000\000\000\187\000\187\000\187\000\187\000\187\000\187\000\
+ \187\000\187\000\187\000\187\000\187\000\187\000\187\000\187\000\
+ \187\000\187\000\187\000\187\000\187\000\187\000\187\000\187\000\
+ \187\000\187\000\187\000\187\000\000\000\000\000\000\000\000\000\
+ \000\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \000\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \000\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\187\000\187\000\187\000\187\000\187\000\187\000\187\000\
+ \187\000\187\000\187\000\187\000\187\000\187\000\187\000\187\000\
+ \187\000\187\000\187\000\187\000\187\000\187\000\187\000\187\000\
+ \000\000\187\000\187\000\187\000\187\000\187\000\187\000\187\000\
+ \187\000\187\000\187\000\187\000\187\000\187\000\187\000\187\000\
+ \187\000\187\000\187\000\187\000\187\000\187\000\187\000\187\000\
+ \187\000\187\000\187\000\187\000\187\000\187\000\187\000\187\000\
+ \000\000\187\000\187\000\187\000\187\000\187\000\187\000\187\000\
+ \187\000\186\000\186\000\186\000\186\000\186\000\186\000\186\000\
+ \186\000\186\000\186\000\186\000\186\000\186\000\186\000\186\000\
+ \186\000\186\000\186\000\186\000\186\000\186\000\186\000\186\000\
+ \186\000\186\000\186\000\000\000\000\000\000\000\000\000\186\000\
+ \000\000\186\000\186\000\186\000\186\000\186\000\186\000\186\000\
+ \186\000\186\000\186\000\186\000\186\000\186\000\186\000\186\000\
+ \186\000\186\000\186\000\186\000\186\000\186\000\186\000\186\000\
+ \186\000\186\000\186\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\143\000\143\000\143\000\143\000\
- \143\000\143\000\143\000\143\000\143\000\143\000\143\000\143\000\
- \143\000\143\000\143\000\143\000\143\000\143\000\143\000\143\000\
- \143\000\143\000\143\000\000\000\143\000\143\000\143\000\143\000\
- \143\000\143\000\143\000\143\000\143\000\143\000\143\000\143\000\
- \143\000\143\000\143\000\143\000\143\000\143\000\143\000\143\000\
- \143\000\143\000\143\000\143\000\143\000\143\000\143\000\143\000\
- \143\000\143\000\143\000\143\000\143\000\143\000\143\000\143\000\
- \143\000\143\000\143\000\143\000\143\000\143\000\143\000\143\000\
- \143\000\143\000\143\000\143\000\143\000\143\000\000\000\000\000\
- \032\000\000\000\000\000\000\000\141\000\143\000\143\000\143\000\
- \143\000\143\000\143\000\143\000\143\000\143\000\143\000\143\000\
- \143\000\143\000\143\000\143\000\143\000\143\000\143\000\143\000\
- \143\000\143\000\143\000\143\000\143\000\143\000\143\000\000\000\
- \000\000\000\000\000\000\143\000\000\000\143\000\143\000\143\000\
- \143\000\143\000\143\000\143\000\143\000\143\000\143\000\143\000\
- \143\000\143\000\143\000\143\000\143\000\143\000\143\000\143\000\
- \143\000\143\000\143\000\143\000\143\000\143\000\143\000\000\000\
+ \186\000\186\000\186\000\186\000\186\000\186\000\186\000\186\000\
+ \186\000\186\000\186\000\186\000\186\000\186\000\186\000\186\000\
+ \186\000\186\000\186\000\186\000\186\000\186\000\186\000\000\000\
+ \186\000\186\000\186\000\186\000\186\000\186\000\186\000\186\000\
+ \186\000\186\000\186\000\186\000\186\000\186\000\186\000\186\000\
+ \186\000\186\000\186\000\186\000\186\000\186\000\186\000\186\000\
+ \186\000\186\000\186\000\186\000\186\000\186\000\186\000\186\000\
+ \186\000\186\000\186\000\186\000\186\000\186\000\186\000\186\000\
+ \186\000\186\000\186\000\186\000\186\000\186\000\186\000\186\000\
+ \186\000\186\000\000\000\000\000\034\000\000\000\000\000\000\000\
+ \184\000\186\000\186\000\186\000\186\000\186\000\186\000\186\000\
+ \186\000\186\000\186\000\186\000\186\000\186\000\186\000\186\000\
+ \186\000\186\000\186\000\186\000\186\000\186\000\186\000\186\000\
+ \186\000\186\000\186\000\000\000\000\000\000\000\000\000\186\000\
+ \000\000\186\000\186\000\186\000\186\000\186\000\186\000\186\000\
+ \186\000\186\000\186\000\186\000\186\000\186\000\186\000\186\000\
+ \186\000\186\000\186\000\186\000\186\000\186\000\186\000\186\000\
+ \186\000\186\000\186\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\143\000\143\000\143\000\143\000\
- \143\000\143\000\143\000\143\000\143\000\143\000\143\000\143\000\
- \143\000\143\000\143\000\143\000\143\000\143\000\143\000\143\000\
- \143\000\143\000\143\000\000\000\143\000\143\000\143\000\143\000\
- \143\000\143\000\143\000\143\000\143\000\143\000\143\000\143\000\
- \143\000\143\000\143\000\143\000\143\000\143\000\143\000\143\000\
- \143\000\143\000\143\000\143\000\143\000\143\000\143\000\143\000\
- \143\000\143\000\143\000\144\000\143\000\143\000\143\000\143\000\
- \143\000\143\000\143\000\143\000\144\000\144\000\144\000\144\000\
- \144\000\144\000\144\000\144\000\144\000\144\000\000\000\000\000\
- \032\000\000\000\000\000\000\000\000\000\144\000\144\000\144\000\
- \144\000\144\000\144\000\144\000\144\000\144\000\144\000\144\000\
- \144\000\144\000\144\000\144\000\144\000\144\000\144\000\144\000\
- \144\000\144\000\144\000\144\000\144\000\144\000\144\000\000\000\
- \000\000\000\000\000\000\144\000\000\000\144\000\144\000\144\000\
- \144\000\144\000\144\000\144\000\144\000\144\000\144\000\144\000\
- \144\000\144\000\144\000\144\000\144\000\144\000\144\000\144\000\
- \144\000\144\000\144\000\144\000\144\000\144\000\144\000\000\000\
+ \186\000\186\000\186\000\186\000\186\000\186\000\186\000\186\000\
+ \186\000\186\000\186\000\186\000\186\000\186\000\186\000\186\000\
+ \186\000\186\000\186\000\186\000\186\000\186\000\186\000\000\000\
+ \186\000\186\000\186\000\186\000\186\000\186\000\186\000\186\000\
+ \186\000\186\000\186\000\186\000\186\000\186\000\186\000\186\000\
+ \186\000\186\000\186\000\186\000\186\000\186\000\186\000\186\000\
+ \186\000\186\000\186\000\186\000\186\000\186\000\186\000\187\000\
+ \186\000\186\000\186\000\186\000\186\000\186\000\186\000\186\000\
+ \187\000\187\000\187\000\187\000\187\000\187\000\187\000\187\000\
+ \187\000\187\000\000\000\000\000\034\000\000\000\000\000\000\000\
+ \000\000\187\000\187\000\187\000\187\000\187\000\187\000\187\000\
+ \187\000\187\000\187\000\187\000\187\000\187\000\187\000\187\000\
+ \187\000\187\000\187\000\187\000\187\000\187\000\187\000\187\000\
+ \187\000\187\000\187\000\000\000\000\000\000\000\000\000\187\000\
+ \000\000\187\000\187\000\187\000\187\000\187\000\187\000\187\000\
+ \187\000\187\000\187\000\187\000\187\000\187\000\187\000\187\000\
+ \187\000\187\000\187\000\187\000\187\000\187\000\187\000\187\000\
+ \187\000\187\000\187\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\144\000\144\000\144\000\144\000\
- \144\000\144\000\144\000\144\000\144\000\144\000\144\000\144\000\
- \144\000\144\000\144\000\144\000\144\000\144\000\144\000\144\000\
- \144\000\144\000\144\000\000\000\144\000\144\000\144\000\144\000\
- \144\000\144\000\144\000\144\000\144\000\144\000\144\000\144\000\
- \144\000\144\000\144\000\144\000\144\000\144\000\144\000\144\000\
- \144\000\144\000\144\000\144\000\144\000\144\000\144\000\144\000\
- \144\000\144\000\144\000\000\000\144\000\144\000\144\000\144\000\
- \144\000\144\000\144\000\144\000\000\000";
+ \187\000\187\000\187\000\187\000\187\000\187\000\187\000\187\000\
+ \187\000\187\000\187\000\187\000\187\000\187\000\187\000\187\000\
+ \187\000\187\000\187\000\187\000\187\000\187\000\187\000\000\000\
+ \187\000\187\000\187\000\187\000\187\000\187\000\187\000\187\000\
+ \187\000\187\000\187\000\187\000\187\000\187\000\187\000\187\000\
+ \187\000\187\000\187\000\187\000\187\000\187\000\187\000\187\000\
+ \187\000\187\000\187\000\187\000\187\000\187\000\187\000\000\000\
+ \187\000\187\000\187\000\187\000\187\000\187\000\187\000\187\000\
+ \000\000";
Lexing.lex_check =
"\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\000\000\000\000\027\000\000\000\000\000\068\000\074\000\
- \078\000\105\000\125\000\140\000\255\255\255\255\255\255\255\255\
+ \255\255\000\000\000\000\029\000\000\000\000\000\097\000\103\000\
+ \121\000\099\000\102\000\148\000\099\000\102\000\168\000\183\000\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\000\000\009\000\
- \011\000\012\000\013\000\014\000\012\000\012\000\017\000\026\000\
- \038\000\038\000\026\000\039\000\039\000\039\000\039\000\039\000\
- \039\000\039\000\039\000\047\000\049\000\010\000\055\000\010\000\
- \058\000\082\000\014\000\082\000\083\000\084\000\026\000\082\000\
- \091\000\048\000\092\000\093\000\012\000\094\000\099\000\101\000\
- \103\000\126\000\014\000\014\000\014\000\014\000\014\000\014\000\
- \014\000\014\000\014\000\014\000\045\000\045\000\045\000\045\000\
- \045\000\045\000\045\000\045\000\045\000\045\000\048\000\092\000\
+ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\012\000\
+ \016\000\028\000\040\000\040\000\028\000\020\000\049\000\038\000\
+ \020\000\038\000\051\000\057\000\038\000\038\000\038\000\038\000\
+ \038\000\038\000\038\000\038\000\038\000\038\000\066\000\016\000\
+ \028\000\041\000\041\000\041\000\041\000\041\000\041\000\041\000\
+ \041\000\050\000\126\000\100\000\127\000\134\000\100\000\016\000\
+ \016\000\016\000\016\000\016\000\016\000\016\000\016\000\016\000\
+ \016\000\047\000\047\000\047\000\047\000\047\000\047\000\047\000\
+ \047\000\047\000\047\000\100\000\136\000\137\000\050\000\142\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\000\000\010\000\
+ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\000\000\255\255\
+ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\144\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\003\000\003\000\003\000\003\000\003\000\003\000\003\000\
- \003\000\003\000\003\000\003\000\003\000\003\000\003\000\003\000\
- \003\000\003\000\003\000\003\000\003\000\003\000\003\000\003\000\
- \003\000\003\000\003\000\003\000\003\000\003\000\003\000\003\000\
- \003\000\003\000\004\000\003\000\003\000\004\000\004\000\004\000\
- \255\255\003\000\003\000\004\000\004\000\003\000\004\000\004\000\
- \004\000\037\000\037\000\037\000\037\000\037\000\037\000\037\000\
- \037\000\037\000\037\000\004\000\003\000\004\000\004\000\004\000\
- \004\000\004\000\036\000\255\255\036\000\255\255\037\000\036\000\
- \036\000\036\000\036\000\036\000\036\000\036\000\036\000\036\000\
- \036\000\054\000\054\000\054\000\054\000\054\000\054\000\054\000\
- \054\000\054\000\054\000\111\000\003\000\003\000\003\000\004\000\
- \037\000\003\000\110\000\110\000\255\255\255\255\037\000\070\000\
- \073\000\255\255\070\000\073\000\133\000\255\255\136\000\127\000\
- \018\000\127\000\111\000\018\000\255\255\127\000\255\255\255\255\
- \133\000\110\000\136\000\255\255\003\000\004\000\003\000\004\000\
- \003\000\003\000\003\000\003\000\003\000\003\000\003\000\003\000\
- \003\000\003\000\003\000\003\000\003\000\003\000\003\000\003\000\
- \003\000\003\000\003\000\003\000\003\000\003\000\003\000\003\000\
- \003\000\003\000\003\000\003\000\003\000\003\000\003\000\003\000\
- \003\000\003\000\003\000\003\000\003\000\003\000\003\000\003\000\
- \003\000\003\000\003\000\003\000\003\000\003\000\003\000\003\000\
- \003\000\003\000\003\000\003\000\003\000\003\000\003\000\003\000\
- \003\000\003\000\003\000\003\000\003\000\003\000\003\000\003\000\
- \003\000\007\000\018\000\255\255\007\000\007\000\007\000\255\255\
- \255\255\255\255\007\000\007\000\255\255\007\000\007\000\007\000\
- \255\255\071\000\255\255\255\255\071\000\139\000\124\000\139\000\
- \003\000\124\000\007\000\139\000\007\000\007\000\007\000\007\000\
- \007\000\255\255\255\255\043\000\043\000\255\255\255\255\008\000\
- \255\255\071\000\008\000\008\000\008\000\255\255\255\255\255\255\
- \008\000\008\000\255\255\008\000\008\000\008\000\255\255\255\255\
- \003\000\255\255\255\255\255\255\255\255\007\000\007\000\043\000\
- \008\000\003\000\008\000\008\000\008\000\008\000\008\000\255\255\
- \124\000\255\255\124\000\255\255\015\000\255\255\255\255\015\000\
- \015\000\015\000\043\000\255\255\255\255\015\000\015\000\255\255\
- \015\000\015\000\015\000\255\255\007\000\007\000\007\000\043\000\
- \255\255\043\000\255\255\008\000\008\000\015\000\255\255\015\000\
- \015\000\015\000\015\000\015\000\255\255\255\255\255\255\016\000\
- \255\255\255\255\016\000\016\000\016\000\255\255\255\255\016\000\
- \016\000\016\000\255\255\016\000\016\000\016\000\255\255\255\255\
- \255\255\255\255\008\000\255\255\008\000\255\255\255\255\255\255\
- \016\000\015\000\016\000\016\000\016\000\016\000\016\000\255\255\
- \255\255\020\000\255\255\020\000\020\000\020\000\020\000\020\000\
- \020\000\020\000\020\000\020\000\020\000\070\000\073\000\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\018\000\015\000\
- \020\000\015\000\255\255\255\255\016\000\255\255\255\255\020\000\
- \255\255\255\255\021\000\255\255\021\000\021\000\021\000\021\000\
- \021\000\021\000\021\000\021\000\021\000\021\000\255\255\255\255\
- \255\255\255\255\020\000\255\255\255\255\255\255\021\000\255\255\
- \020\000\021\000\016\000\255\255\016\000\255\255\255\255\020\000\
- \021\000\020\000\255\255\021\000\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\021\000\255\255\255\255\255\255\
- \072\000\072\000\255\255\021\000\072\000\255\255\021\000\255\255\
- \255\255\021\000\255\255\255\255\255\255\255\255\255\255\255\255\
- \021\000\255\255\021\000\021\000\022\000\255\255\255\255\072\000\
- \255\255\072\000\255\255\255\255\021\000\022\000\022\000\022\000\
- \022\000\022\000\022\000\022\000\022\000\022\000\022\000\071\000\
- \255\255\255\255\255\255\255\255\124\000\255\255\022\000\022\000\
- \022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\
- \022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\
- \022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\
- \255\255\255\255\255\255\255\255\022\000\255\255\022\000\022\000\
- \022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\
- \022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\
- \022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\
- \040\000\040\000\040\000\040\000\040\000\040\000\040\000\040\000\
- \040\000\040\000\104\000\255\255\255\255\104\000\255\255\255\255\
- \067\000\040\000\040\000\040\000\040\000\040\000\040\000\056\000\
- \056\000\056\000\056\000\056\000\056\000\056\000\056\000\056\000\
- \056\000\255\255\104\000\255\255\255\255\255\255\255\255\067\000\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\040\000\040\000\040\000\040\000\040\000\040\000\067\000\
- \067\000\067\000\067\000\067\000\067\000\067\000\067\000\067\000\
- \067\000\255\255\255\255\255\255\255\255\022\000\022\000\022\000\
- \022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\
- \022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\
- \022\000\022\000\022\000\022\000\104\000\022\000\022\000\022\000\
- \022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\
- \022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\
- \022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\
- \022\000\022\000\022\000\022\000\023\000\022\000\022\000\022\000\
- \022\000\022\000\022\000\022\000\022\000\023\000\023\000\023\000\
- \023\000\023\000\023\000\023\000\023\000\023\000\023\000\072\000\
- \255\255\255\255\255\255\255\255\255\255\255\255\023\000\023\000\
- \023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\
- \023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\
- \023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\
- \255\255\255\255\255\255\255\255\023\000\255\255\023\000\023\000\
- \023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\
- \023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\
- \023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\
- \041\000\041\000\041\000\041\000\041\000\041\000\041\000\041\000\
- \041\000\041\000\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\041\000\041\000\041\000\041\000\041\000\041\000\255\255\
- \255\255\255\255\255\255\255\255\041\000\098\000\098\000\098\000\
- \098\000\098\000\098\000\098\000\098\000\098\000\098\000\255\255\
- \255\255\255\255\138\000\255\255\255\255\138\000\255\255\041\000\
- \104\000\041\000\041\000\041\000\041\000\041\000\041\000\255\255\
- \255\255\255\255\255\255\255\255\041\000\255\255\041\000\255\255\
- \255\255\255\255\255\255\255\255\138\000\023\000\023\000\023\000\
- \023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\
- \023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\
- \023\000\023\000\023\000\023\000\138\000\023\000\023\000\023\000\
- \023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\
- \023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\
+ \000\000\003\000\146\000\169\000\003\000\003\000\003\000\099\000\
+ \102\000\255\255\003\000\003\000\135\000\003\000\003\000\003\000\
+ \039\000\039\000\039\000\039\000\039\000\039\000\039\000\039\000\
+ \039\000\039\000\003\000\176\000\003\000\003\000\003\000\003\000\
+ \003\000\069\000\005\000\005\000\069\000\039\000\005\000\176\000\
+ \255\255\135\000\255\255\005\000\005\000\056\000\056\000\056\000\
+ \056\000\056\000\056\000\056\000\056\000\056\000\056\000\005\000\
+ \069\000\005\000\005\000\005\000\003\000\005\000\003\000\039\000\
+ \125\000\069\000\125\000\255\255\006\000\039\000\125\000\006\000\
+ \006\000\006\000\179\000\255\255\006\000\006\000\006\000\154\000\
+ \006\000\006\000\006\000\255\255\081\000\255\255\179\000\081\000\
+ \153\000\153\000\005\000\005\000\003\000\006\000\003\000\006\000\
+ \006\000\006\000\006\000\006\000\255\255\255\255\154\000\255\255\
+ \255\255\007\000\255\255\081\000\007\000\007\000\007\000\153\000\
+ \255\255\007\000\007\000\007\000\081\000\007\000\007\000\007\000\
+ \255\255\005\000\005\000\020\000\255\255\255\255\255\255\006\000\
+ \006\000\006\000\007\000\255\255\007\000\007\000\007\000\007\000\
+ \007\000\170\000\182\000\170\000\182\000\255\255\008\000\170\000\
+ \182\000\008\000\008\000\008\000\255\255\255\255\008\000\008\000\
+ \008\000\100\000\008\000\008\000\008\000\255\255\255\255\006\000\
+ \006\000\006\000\255\255\255\255\007\000\007\000\007\000\008\000\
+ \255\255\008\000\008\000\008\000\008\000\008\000\167\000\147\000\
+ \255\255\167\000\147\000\009\000\255\255\255\255\009\000\009\000\
+ \009\000\255\255\255\255\009\000\009\000\009\000\255\255\009\000\
+ \009\000\009\000\255\255\255\255\007\000\007\000\007\000\147\000\
+ \255\255\008\000\008\000\008\000\009\000\255\255\009\000\009\000\
+ \009\000\009\000\009\000\255\255\255\255\255\255\255\255\255\255\
+ \181\000\255\255\255\255\181\000\010\000\010\000\255\255\010\000\
+ \167\000\255\255\167\000\013\000\013\000\010\000\010\000\013\000\
+ \255\255\008\000\008\000\008\000\013\000\013\000\009\000\009\000\
+ \009\000\010\000\181\000\010\000\010\000\010\000\255\255\010\000\
+ \013\000\255\255\013\000\013\000\013\000\255\255\013\000\011\000\
+ \011\000\147\000\011\000\255\255\255\255\045\000\045\000\255\255\
+ \011\000\011\000\181\000\255\255\255\255\255\255\009\000\009\000\
+ \009\000\255\255\010\000\255\255\011\000\010\000\011\000\011\000\
+ \011\000\255\255\011\000\013\000\013\000\255\255\255\255\255\255\
+ \255\255\045\000\255\255\255\255\255\255\255\255\255\255\014\000\
+ \014\000\255\255\255\255\014\000\255\255\255\255\255\255\255\255\
+ \014\000\014\000\010\000\010\000\045\000\011\000\255\255\255\255\
+ \011\000\255\255\013\000\013\000\014\000\255\255\014\000\014\000\
+ \014\000\045\000\014\000\045\000\046\000\046\000\046\000\046\000\
+ \046\000\046\000\046\000\046\000\046\000\046\000\255\255\017\000\
+ \255\255\255\255\017\000\017\000\017\000\011\000\011\000\017\000\
+ \017\000\017\000\255\255\017\000\017\000\017\000\255\255\014\000\
+ \014\000\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \017\000\255\255\017\000\017\000\017\000\017\000\017\000\255\255\
+ \255\255\255\255\255\255\046\000\255\255\255\255\255\255\255\255\
+ \018\000\255\255\255\255\018\000\018\000\018\000\014\000\014\000\
+ \018\000\018\000\018\000\255\255\018\000\018\000\018\000\255\255\
+ \255\255\255\255\017\000\017\000\017\000\255\255\255\255\255\255\
+ \255\255\018\000\255\255\018\000\018\000\018\000\018\000\018\000\
+ \058\000\058\000\058\000\058\000\058\000\058\000\058\000\058\000\
+ \058\000\058\000\255\255\019\000\167\000\147\000\019\000\255\255\
+ \255\255\255\255\017\000\017\000\017\000\255\255\255\255\255\255\
+ \255\255\255\255\255\255\018\000\255\255\018\000\255\255\255\255\
+ \101\000\101\000\019\000\019\000\101\000\255\255\019\000\019\000\
+ \019\000\255\255\019\000\255\255\019\000\019\000\255\255\019\000\
+ \019\000\019\000\122\000\255\255\255\255\122\000\181\000\101\000\
+ \255\255\101\000\255\255\018\000\019\000\018\000\019\000\019\000\
+ \019\000\019\000\019\000\022\000\255\255\022\000\022\000\022\000\
+ \022\000\022\000\022\000\022\000\022\000\022\000\022\000\122\000\
+ \141\000\141\000\141\000\141\000\141\000\141\000\141\000\141\000\
+ \141\000\141\000\022\000\255\255\255\255\019\000\019\000\255\255\
+ \019\000\022\000\255\255\255\255\023\000\255\255\023\000\023\000\
\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\
- \023\000\023\000\023\000\023\000\255\255\023\000\023\000\023\000\
- \023\000\023\000\023\000\023\000\023\000\024\000\255\255\255\255\
- \024\000\024\000\024\000\255\255\255\255\255\255\024\000\024\000\
- \255\255\024\000\024\000\024\000\100\000\100\000\100\000\100\000\
- \100\000\100\000\100\000\100\000\100\000\100\000\024\000\255\255\
- \024\000\024\000\024\000\024\000\024\000\255\255\255\255\079\000\
- \255\255\255\255\079\000\255\255\255\255\255\255\255\255\255\255\
- \044\000\044\000\044\000\044\000\044\000\044\000\044\000\044\000\
- \044\000\044\000\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\024\000\024\000\079\000\024\000\024\000\024\000\
+ \255\255\255\255\255\255\255\255\022\000\255\255\255\255\255\255\
+ \023\000\255\255\022\000\023\000\255\255\019\000\019\000\255\255\
+ \019\000\022\000\023\000\022\000\122\000\023\000\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\023\000\255\255\
+ \255\255\255\255\255\255\255\255\255\255\023\000\255\255\255\255\
+ \023\000\255\255\255\255\023\000\255\255\255\255\255\255\255\255\
+ \255\255\255\255\023\000\255\255\023\000\023\000\024\000\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\023\000\024\000\
\024\000\024\000\024\000\024\000\024\000\024\000\024\000\024\000\
+ \024\000\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
\024\000\024\000\024\000\024\000\024\000\024\000\024\000\024\000\
- \024\000\024\000\024\000\024\000\024\000\024\000\024\000\044\000\
- \024\000\025\000\024\000\255\255\025\000\025\000\025\000\255\255\
- \255\255\255\255\025\000\025\000\255\255\025\000\025\000\025\000\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\079\000\025\000\255\255\025\000\025\000\025\000\025\000\
- \025\000\109\000\109\000\109\000\109\000\109\000\109\000\109\000\
- \109\000\109\000\109\000\112\000\112\000\112\000\112\000\112\000\
- \112\000\112\000\112\000\112\000\112\000\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\025\000\025\000\
- \138\000\025\000\025\000\025\000\025\000\025\000\025\000\025\000\
- \025\000\025\000\025\000\025\000\025\000\025\000\025\000\025\000\
- \025\000\025\000\025\000\025\000\025\000\025\000\025\000\025\000\
- \025\000\025\000\025\000\255\255\025\000\255\255\025\000\255\255\
- \255\255\255\255\255\255\024\000\024\000\024\000\024\000\024\000\
\024\000\024\000\024\000\024\000\024\000\024\000\024\000\024\000\
\024\000\024\000\024\000\024\000\024\000\024\000\024\000\024\000\
- \024\000\024\000\024\000\255\255\024\000\024\000\024\000\024\000\
- \024\000\024\000\024\000\024\000\053\000\053\000\053\000\053\000\
- \053\000\053\000\053\000\053\000\053\000\053\000\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\053\000\053\000\053\000\
- \053\000\053\000\053\000\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \024\000\024\000\255\255\255\255\255\255\255\255\024\000\255\255\
+ \024\000\024\000\024\000\024\000\024\000\024\000\024\000\024\000\
+ \024\000\024\000\024\000\024\000\024\000\024\000\024\000\024\000\
+ \024\000\024\000\024\000\024\000\024\000\024\000\024\000\024\000\
+ \024\000\024\000\042\000\042\000\042\000\042\000\042\000\042\000\
+ \042\000\042\000\042\000\042\000\255\255\255\255\255\255\255\255\
+ \255\255\255\255\096\000\042\000\042\000\042\000\042\000\042\000\
+ \042\000\255\255\255\255\255\255\255\255\255\255\255\255\101\000\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\053\000\053\000\053\000\
- \053\000\053\000\053\000\255\255\255\255\079\000\255\255\025\000\
+ \255\255\096\000\255\255\255\255\255\255\255\255\255\255\255\255\
+ \122\000\255\255\255\255\042\000\042\000\042\000\042\000\042\000\
+ \042\000\096\000\096\000\096\000\096\000\096\000\096\000\096\000\
+ \096\000\096\000\096\000\255\255\255\255\255\255\255\255\024\000\
+ \024\000\024\000\024\000\024\000\024\000\024\000\024\000\024\000\
+ \024\000\024\000\024\000\024\000\024\000\024\000\024\000\024\000\
+ \024\000\024\000\024\000\024\000\024\000\024\000\255\255\024\000\
+ \024\000\024\000\024\000\024\000\024\000\024\000\024\000\024\000\
+ \024\000\024\000\024\000\024\000\024\000\024\000\024\000\024\000\
+ \024\000\024\000\024\000\024\000\024\000\024\000\024\000\024\000\
+ \024\000\024\000\024\000\024\000\024\000\024\000\025\000\024\000\
+ \024\000\024\000\024\000\024\000\024\000\024\000\024\000\025\000\
+ \025\000\025\000\025\000\025\000\025\000\025\000\025\000\025\000\
+ \025\000\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \025\000\025\000\025\000\025\000\025\000\025\000\025\000\025\000\
\025\000\025\000\025\000\025\000\025\000\025\000\025\000\025\000\
\025\000\025\000\025\000\025\000\025\000\025\000\025\000\025\000\
- \025\000\025\000\025\000\025\000\025\000\025\000\025\000\029\000\
+ \025\000\025\000\255\255\255\255\255\255\255\255\025\000\255\255\
\025\000\025\000\025\000\025\000\025\000\025\000\025\000\025\000\
- \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\
- \029\000\029\000\029\000\255\255\255\255\255\255\255\255\255\255\
- \255\255\029\000\029\000\029\000\029\000\029\000\029\000\029\000\
- \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\
- \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\
- \029\000\029\000\029\000\255\255\255\255\255\255\255\255\029\000\
- \255\255\029\000\029\000\029\000\029\000\029\000\029\000\029\000\
- \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\
- \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\
- \029\000\029\000\029\000\042\000\042\000\042\000\042\000\042\000\
- \042\000\042\000\042\000\255\255\255\255\255\255\255\255\255\255\
- \255\255\057\000\057\000\057\000\057\000\057\000\057\000\057\000\
- \057\000\057\000\057\000\255\255\255\255\255\255\255\255\042\000\
- \255\255\255\255\057\000\057\000\057\000\057\000\057\000\057\000\
+ \025\000\025\000\025\000\025\000\025\000\025\000\025\000\025\000\
+ \025\000\025\000\025\000\025\000\025\000\025\000\025\000\025\000\
+ \025\000\025\000\043\000\043\000\043\000\043\000\043\000\043\000\
+ \043\000\043\000\043\000\043\000\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\043\000\043\000\043\000\043\000\043\000\
+ \043\000\255\255\255\255\255\255\255\255\255\255\043\000\143\000\
+ \143\000\143\000\143\000\143\000\143\000\143\000\143\000\143\000\
+ \143\000\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\043\000\255\255\043\000\043\000\043\000\043\000\043\000\
+ \043\000\255\255\255\255\255\255\255\255\255\255\043\000\255\255\
+ \043\000\255\255\255\255\255\255\255\255\255\255\255\255\025\000\
+ \025\000\025\000\025\000\025\000\025\000\025\000\025\000\025\000\
+ \025\000\025\000\025\000\025\000\025\000\025\000\025\000\025\000\
+ \025\000\025\000\025\000\025\000\025\000\025\000\255\255\025\000\
+ \025\000\025\000\025\000\025\000\025\000\025\000\025\000\025\000\
+ \025\000\025\000\025\000\025\000\025\000\025\000\025\000\025\000\
+ \025\000\025\000\025\000\025\000\025\000\025\000\025\000\025\000\
+ \025\000\025\000\025\000\025\000\025\000\025\000\255\255\025\000\
+ \025\000\025\000\025\000\025\000\025\000\025\000\025\000\026\000\
+ \255\255\255\255\026\000\026\000\026\000\255\255\255\255\255\255\
+ \026\000\026\000\255\255\026\000\026\000\026\000\152\000\152\000\
+ \152\000\152\000\152\000\152\000\152\000\152\000\152\000\152\000\
+ \026\000\255\255\026\000\026\000\026\000\026\000\026\000\155\000\
+ \155\000\155\000\155\000\155\000\155\000\155\000\155\000\155\000\
+ \155\000\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\042\000\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\042\000\
- \255\255\042\000\057\000\057\000\057\000\057\000\057\000\057\000\
- \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\
- \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\
- \029\000\029\000\029\000\029\000\029\000\029\000\029\000\255\255\
- \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\
- \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\
- \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\
- \029\000\029\000\029\000\029\000\029\000\029\000\029\000\031\000\
- \029\000\029\000\029\000\029\000\029\000\029\000\029\000\029\000\
- \031\000\031\000\031\000\031\000\031\000\031\000\031\000\031\000\
- \031\000\031\000\031\000\255\255\255\255\255\255\255\255\255\255\
- \255\255\031\000\031\000\031\000\031\000\031\000\031\000\031\000\
+ \255\255\255\255\026\000\255\255\026\000\026\000\255\255\026\000\
+ \026\000\026\000\026\000\026\000\026\000\026\000\026\000\026\000\
+ \026\000\026\000\026\000\026\000\026\000\026\000\026\000\026\000\
+ \026\000\026\000\026\000\026\000\026\000\026\000\026\000\026\000\
+ \026\000\255\255\026\000\027\000\026\000\255\255\027\000\027\000\
+ \027\000\255\255\255\255\255\255\027\000\027\000\255\255\027\000\
+ \027\000\027\000\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\027\000\255\255\027\000\027\000\
+ \027\000\027\000\027\000\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\027\000\255\255\
+ \027\000\027\000\255\255\027\000\027\000\027\000\027\000\027\000\
+ \027\000\027\000\027\000\027\000\027\000\027\000\027\000\027\000\
+ \027\000\027\000\027\000\027\000\027\000\027\000\027\000\027\000\
+ \027\000\027\000\027\000\027\000\027\000\255\255\027\000\255\255\
+ \027\000\255\255\255\255\255\255\255\255\026\000\026\000\026\000\
+ \026\000\026\000\026\000\026\000\026\000\026\000\026\000\026\000\
+ \026\000\026\000\026\000\026\000\026\000\026\000\026\000\026\000\
+ \026\000\026\000\026\000\026\000\026\000\255\255\026\000\026\000\
+ \026\000\026\000\026\000\026\000\026\000\026\000\055\000\055\000\
+ \055\000\055\000\055\000\055\000\055\000\055\000\055\000\055\000\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\055\000\
+ \055\000\055\000\055\000\055\000\055\000\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\055\000\
+ \055\000\055\000\055\000\055\000\055\000\255\255\255\255\255\255\
+ \255\255\027\000\027\000\027\000\027\000\027\000\027\000\027\000\
+ \027\000\027\000\027\000\027\000\027\000\027\000\027\000\027\000\
+ \027\000\027\000\027\000\027\000\027\000\027\000\027\000\027\000\
+ \027\000\031\000\027\000\027\000\027\000\027\000\027\000\027\000\
+ \027\000\027\000\031\000\031\000\031\000\031\000\031\000\031\000\
+ \031\000\031\000\031\000\031\000\031\000\255\255\255\255\255\255\
+ \255\255\255\255\255\255\031\000\031\000\031\000\031\000\031\000\
\031\000\031\000\031\000\031\000\031\000\031\000\031\000\031\000\
\031\000\031\000\031\000\031\000\031\000\031\000\031\000\031\000\
- \031\000\031\000\031\000\255\255\255\255\255\255\255\255\031\000\
- \255\255\031\000\031\000\031\000\031\000\031\000\031\000\031\000\
+ \031\000\031\000\031\000\031\000\031\000\255\255\255\255\255\255\
+ \255\255\031\000\255\255\031\000\031\000\031\000\031\000\031\000\
\031\000\031\000\031\000\031\000\031\000\031\000\031\000\031\000\
\031\000\031\000\031\000\031\000\031\000\031\000\031\000\031\000\
- \031\000\031\000\031\000\255\255\255\255\255\255\255\255\066\000\
- \066\000\255\255\255\255\066\000\255\255\255\255\255\255\255\255\
- \097\000\097\000\097\000\097\000\097\000\097\000\097\000\097\000\
- \097\000\097\000\255\255\255\255\255\255\255\255\066\000\255\255\
- \066\000\097\000\097\000\097\000\097\000\097\000\097\000\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\066\000\066\000\
- \066\000\066\000\066\000\066\000\066\000\066\000\066\000\066\000\
+ \031\000\031\000\031\000\031\000\031\000\044\000\044\000\044\000\
+ \044\000\044\000\044\000\044\000\044\000\255\255\255\255\255\255\
+ \255\255\255\255\255\255\059\000\059\000\059\000\059\000\059\000\
+ \059\000\059\000\059\000\059\000\059\000\255\255\255\255\255\255\
+ \255\255\044\000\255\255\255\255\059\000\059\000\059\000\059\000\
+ \059\000\059\000\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\044\000\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\097\000\097\000\097\000\097\000\097\000\097\000\255\255\
- \031\000\031\000\031\000\031\000\031\000\031\000\031\000\031\000\
+ \255\255\044\000\255\255\044\000\059\000\059\000\059\000\059\000\
+ \059\000\059\000\031\000\031\000\031\000\031\000\031\000\031\000\
\031\000\031\000\031\000\031\000\031\000\031\000\031\000\031\000\
- \031\000\031\000\031\000\031\000\031\000\031\000\031\000\255\255\
\031\000\031\000\031\000\031\000\031\000\031\000\031\000\031\000\
+ \031\000\255\255\031\000\031\000\031\000\031\000\031\000\031\000\
\031\000\031\000\031\000\031\000\031\000\031\000\031\000\031\000\
\031\000\031\000\031\000\031\000\031\000\031\000\031\000\031\000\
- \031\000\031\000\031\000\031\000\031\000\031\000\031\000\255\255\
\031\000\031\000\031\000\031\000\031\000\031\000\031\000\031\000\
- \046\000\061\000\046\000\255\255\061\000\061\000\061\000\046\000\
- \255\255\255\255\061\000\061\000\255\255\061\000\061\000\061\000\
- \046\000\046\000\046\000\046\000\046\000\046\000\046\000\046\000\
- \046\000\046\000\061\000\255\255\061\000\061\000\061\000\061\000\
- \061\000\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \031\000\033\000\031\000\031\000\031\000\031\000\031\000\031\000\
+ \031\000\031\000\033\000\033\000\033\000\033\000\033\000\033\000\
+ \033\000\033\000\033\000\033\000\033\000\255\255\255\255\255\255\
+ \255\255\255\255\255\255\033\000\033\000\033\000\033\000\033\000\
+ \033\000\033\000\033\000\033\000\033\000\033\000\033\000\033\000\
+ \033\000\033\000\033\000\033\000\033\000\033\000\033\000\033\000\
+ \033\000\033\000\033\000\033\000\033\000\255\255\255\255\255\255\
+ \255\255\033\000\255\255\033\000\033\000\033\000\033\000\033\000\
+ \033\000\033\000\033\000\033\000\033\000\033\000\033\000\033\000\
+ \033\000\033\000\033\000\033\000\033\000\033\000\033\000\033\000\
+ \033\000\033\000\033\000\033\000\033\000\095\000\095\000\255\255\
+ \255\255\095\000\255\255\255\255\255\255\255\255\140\000\140\000\
+ \140\000\140\000\140\000\140\000\140\000\140\000\140\000\140\000\
+ \255\255\255\255\255\255\255\255\095\000\255\255\095\000\140\000\
+ \140\000\140\000\140\000\140\000\140\000\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\095\000\095\000\095\000\095\000\
+ \095\000\095\000\095\000\095\000\095\000\095\000\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\140\000\
+ \140\000\140\000\140\000\140\000\140\000\255\255\255\255\255\255\
+ \255\255\255\255\033\000\033\000\033\000\033\000\033\000\033\000\
+ \033\000\033\000\033\000\033\000\033\000\033\000\033\000\033\000\
+ \033\000\033\000\033\000\033\000\033\000\033\000\033\000\033\000\
+ \033\000\255\255\033\000\033\000\033\000\033\000\033\000\033\000\
+ \033\000\033\000\033\000\033\000\033\000\033\000\033\000\033\000\
+ \033\000\033\000\033\000\033\000\033\000\033\000\033\000\033\000\
+ \033\000\033\000\033\000\033\000\033\000\033\000\033\000\033\000\
+ \033\000\255\255\033\000\033\000\033\000\033\000\033\000\033\000\
+ \033\000\033\000\048\000\255\255\048\000\255\255\255\255\060\000\
+ \060\000\048\000\060\000\255\255\255\255\255\255\255\255\255\255\
+ \060\000\060\000\048\000\048\000\048\000\048\000\048\000\048\000\
+ \048\000\048\000\048\000\048\000\060\000\255\255\060\000\060\000\
+ \060\000\255\255\060\000\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\085\000\085\000\
+ \255\255\255\255\085\000\255\255\255\255\255\255\255\255\085\000\
+ \085\000\255\255\255\255\255\255\255\255\060\000\048\000\255\255\
+ \060\000\255\255\255\255\085\000\048\000\085\000\085\000\085\000\
+ \061\000\085\000\255\255\061\000\255\255\255\255\255\255\255\255\
+ \048\000\255\255\255\255\255\255\048\000\255\255\048\000\255\255\
+ \255\255\255\255\048\000\255\255\255\255\060\000\060\000\061\000\
+ \061\000\255\255\255\255\061\000\061\000\061\000\085\000\085\000\
+ \255\255\061\000\061\000\255\255\061\000\061\000\061\000\255\255\
+ \062\000\255\255\255\255\062\000\095\000\255\255\255\255\255\255\
+ \255\255\061\000\255\255\061\000\061\000\061\000\061\000\061\000\
+ \255\255\255\255\255\255\255\255\255\255\085\000\085\000\062\000\
\062\000\255\255\255\255\062\000\062\000\062\000\255\255\255\255\
- \255\255\062\000\062\000\255\255\062\000\062\000\062\000\255\255\
- \255\255\255\255\255\255\255\255\046\000\255\255\061\000\255\255\
- \255\255\062\000\046\000\062\000\062\000\062\000\062\000\062\000\
- \255\255\255\255\255\255\255\255\255\255\255\255\046\000\255\255\
- \255\255\255\255\046\000\255\255\046\000\255\255\063\000\255\255\
- \046\000\063\000\063\000\063\000\061\000\255\255\061\000\063\000\
- \063\000\255\255\063\000\063\000\063\000\062\000\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\063\000\
- \255\255\063\000\063\000\063\000\063\000\063\000\066\000\255\255\
- \255\255\255\255\255\255\255\255\255\255\064\000\255\255\255\255\
- \064\000\064\000\064\000\062\000\255\255\062\000\064\000\064\000\
- \255\255\064\000\064\000\064\000\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\063\000\255\255\255\255\064\000\255\255\
- \064\000\064\000\064\000\064\000\064\000\255\255\255\255\255\255\
- \065\000\255\255\255\255\065\000\065\000\065\000\255\255\255\255\
- \255\255\065\000\065\000\255\255\065\000\065\000\065\000\255\255\
- \255\255\063\000\255\255\063\000\255\255\255\255\255\255\255\255\
- \255\255\065\000\064\000\065\000\065\000\065\000\065\000\065\000\
- \102\000\102\000\102\000\102\000\102\000\102\000\102\000\102\000\
- \102\000\102\000\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\102\000\102\000\102\000\102\000\102\000\102\000\255\255\
- \064\000\255\255\064\000\255\255\255\255\065\000\255\255\255\255\
- \046\000\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\102\000\102\000\102\000\102\000\102\000\102\000\255\255\
- \255\255\255\255\255\255\065\000\255\255\065\000\076\000\076\000\
- \076\000\076\000\076\000\076\000\076\000\076\000\076\000\076\000\
- \076\000\076\000\076\000\076\000\076\000\076\000\076\000\076\000\
- \076\000\076\000\076\000\076\000\076\000\076\000\076\000\076\000\
- \076\000\076\000\076\000\076\000\076\000\076\000\076\000\114\000\
- \076\000\076\000\114\000\114\000\114\000\255\255\076\000\076\000\
- \114\000\114\000\076\000\114\000\114\000\114\000\108\000\108\000\
- \108\000\108\000\108\000\108\000\108\000\108\000\108\000\108\000\
- \114\000\076\000\114\000\114\000\114\000\114\000\114\000\108\000\
- \108\000\108\000\108\000\108\000\108\000\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \062\000\062\000\062\000\255\255\062\000\062\000\062\000\255\255\
+ \255\255\255\255\255\255\061\000\255\255\061\000\255\255\255\255\
+ \255\255\062\000\255\255\062\000\062\000\062\000\062\000\062\000\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\076\000\076\000\076\000\114\000\255\255\076\000\108\000\
- \108\000\108\000\108\000\108\000\108\000\255\255\255\255\255\255\
+ \255\255\255\255\255\255\063\000\255\255\255\255\063\000\255\255\
+ \255\255\255\255\255\255\061\000\255\255\061\000\255\255\255\255\
+ \255\255\255\255\255\255\062\000\255\255\062\000\255\255\255\255\
+ \255\255\255\255\063\000\063\000\255\255\255\255\063\000\063\000\
+ \063\000\255\255\063\000\063\000\063\000\063\000\255\255\063\000\
+ \063\000\063\000\064\000\255\255\255\255\064\000\255\255\255\255\
+ \255\255\255\255\048\000\062\000\063\000\062\000\063\000\063\000\
+ \063\000\063\000\063\000\255\255\255\255\255\255\255\255\255\255\
+ \255\255\064\000\064\000\255\255\255\255\064\000\064\000\064\000\
+ \255\255\064\000\064\000\064\000\064\000\255\255\064\000\064\000\
+ \064\000\255\255\255\255\255\255\255\255\063\000\063\000\255\255\
+ \063\000\255\255\255\255\064\000\255\255\064\000\064\000\064\000\
+ \064\000\064\000\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\065\000\255\255\255\255\
+ \065\000\255\255\255\255\255\255\255\255\063\000\063\000\255\255\
+ \063\000\255\255\255\255\255\255\064\000\064\000\255\255\064\000\
+ \255\255\255\255\255\255\255\255\065\000\065\000\255\255\255\255\
+ \065\000\065\000\065\000\255\255\065\000\065\000\065\000\065\000\
+ \255\255\065\000\065\000\065\000\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\064\000\064\000\065\000\064\000\
+ \065\000\065\000\065\000\065\000\065\000\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\068\000\068\000\
+ \255\255\068\000\255\255\255\255\255\255\255\255\255\255\068\000\
+ \068\000\255\255\255\255\255\255\255\255\255\255\255\255\065\000\
+ \065\000\255\255\065\000\068\000\255\255\068\000\068\000\068\000\
+ \255\255\068\000\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\070\000\255\255\255\255\
+ \070\000\255\255\255\255\255\255\255\255\255\255\255\255\065\000\
+ \065\000\255\255\065\000\255\255\068\000\255\255\255\255\068\000\
+ \255\255\255\255\255\255\255\255\070\000\070\000\255\255\255\255\
+ \070\000\070\000\070\000\255\255\255\255\070\000\070\000\070\000\
+ \255\255\070\000\070\000\070\000\071\000\255\255\255\255\071\000\
+ \255\255\255\255\255\255\255\255\068\000\068\000\070\000\255\255\
+ \070\000\070\000\070\000\070\000\070\000\255\255\255\255\255\255\
+ \255\255\255\255\255\255\071\000\071\000\255\255\255\255\071\000\
+ \071\000\071\000\255\255\071\000\071\000\071\000\071\000\255\255\
+ \071\000\071\000\071\000\255\255\255\255\255\255\255\255\255\255\
+ \070\000\255\255\070\000\255\255\255\255\071\000\255\255\071\000\
+ \071\000\071\000\071\000\071\000\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\072\000\
+ \255\255\255\255\072\000\255\255\255\255\255\255\255\255\255\255\
+ \070\000\255\255\070\000\255\255\255\255\255\255\071\000\071\000\
+ \255\255\071\000\255\255\255\255\255\255\255\255\072\000\072\000\
+ \255\255\255\255\072\000\072\000\072\000\255\255\255\255\255\255\
+ \072\000\072\000\255\255\072\000\072\000\072\000\076\000\255\255\
+ \255\255\076\000\255\255\255\255\255\255\255\255\071\000\071\000\
+ \072\000\071\000\072\000\072\000\072\000\072\000\072\000\255\255\
+ \255\255\255\255\255\255\255\255\255\255\076\000\076\000\255\255\
+ \255\255\076\000\076\000\076\000\255\255\076\000\076\000\076\000\
+ \076\000\255\255\076\000\076\000\076\000\255\255\255\255\255\255\
+ \255\255\255\255\072\000\255\255\072\000\255\255\255\255\076\000\
+ \255\255\076\000\076\000\076\000\076\000\076\000\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\077\000\255\255\255\255\077\000\255\255\255\255\255\255\
+ \255\255\255\255\072\000\255\255\072\000\255\255\255\255\255\255\
+ \076\000\076\000\255\255\076\000\255\255\255\255\255\255\255\255\
+ \077\000\077\000\255\255\255\255\077\000\077\000\077\000\255\255\
+ \077\000\077\000\077\000\077\000\255\255\077\000\077\000\077\000\
+ \078\000\255\255\255\255\078\000\255\255\255\255\255\255\255\255\
+ \076\000\076\000\077\000\076\000\077\000\077\000\077\000\077\000\
+ \077\000\255\255\255\255\255\255\255\255\255\255\255\255\078\000\
+ \078\000\255\255\255\255\078\000\078\000\078\000\255\255\078\000\
+ \078\000\078\000\078\000\255\255\078\000\078\000\078\000\255\255\
+ \255\255\255\255\255\255\077\000\077\000\255\255\077\000\255\255\
+ \255\255\078\000\255\255\078\000\078\000\078\000\078\000\078\000\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\076\000\114\000\076\000\114\000\076\000\076\000\076\000\
- \076\000\076\000\076\000\076\000\076\000\076\000\076\000\076\000\
- \076\000\076\000\076\000\076\000\076\000\076\000\076\000\076\000\
- \076\000\076\000\076\000\076\000\076\000\076\000\076\000\076\000\
- \076\000\076\000\076\000\076\000\076\000\076\000\076\000\076\000\
- \076\000\076\000\076\000\076\000\076\000\076\000\076\000\076\000\
- \076\000\076\000\076\000\076\000\076\000\076\000\076\000\076\000\
- \076\000\076\000\076\000\076\000\076\000\076\000\076\000\076\000\
- \076\000\076\000\076\000\076\000\076\000\076\000\113\000\113\000\
- \113\000\113\000\113\000\113\000\113\000\113\000\113\000\113\000\
- \077\000\255\255\255\255\077\000\255\255\255\255\255\255\113\000\
- \113\000\113\000\113\000\113\000\113\000\076\000\255\255\255\255\
+ \255\255\255\255\255\255\079\000\255\255\255\255\079\000\255\255\
+ \255\255\255\255\255\255\077\000\077\000\255\255\077\000\255\255\
+ \255\255\255\255\078\000\078\000\255\255\078\000\255\255\255\255\
+ \255\255\255\255\079\000\079\000\255\255\255\255\079\000\079\000\
+ \079\000\255\255\255\255\079\000\079\000\079\000\255\255\079\000\
+ \079\000\079\000\080\000\255\255\255\255\080\000\255\255\255\255\
+ \255\255\255\255\078\000\078\000\079\000\078\000\079\000\079\000\
+ \079\000\079\000\079\000\255\255\255\255\255\255\255\255\255\255\
+ \255\255\080\000\080\000\255\255\255\255\080\000\080\000\080\000\
+ \255\255\255\255\255\255\080\000\080\000\255\255\080\000\080\000\
+ \080\000\255\255\255\255\255\255\255\255\255\255\079\000\255\255\
+ \079\000\255\255\255\255\080\000\255\255\080\000\080\000\080\000\
+ \080\000\080\000\255\255\255\255\255\255\086\000\255\255\255\255\
+ \086\000\086\000\086\000\255\255\255\255\086\000\086\000\086\000\
+ \255\255\086\000\086\000\086\000\255\255\255\255\079\000\255\255\
+ \079\000\255\255\255\255\255\255\255\255\080\000\086\000\080\000\
+ \086\000\086\000\086\000\086\000\086\000\255\255\255\255\255\255\
+ \255\255\255\255\087\000\255\255\255\255\087\000\087\000\087\000\
+ \255\255\255\255\087\000\087\000\087\000\255\255\087\000\087\000\
+ \087\000\255\255\255\255\255\255\255\255\080\000\255\255\080\000\
+ \086\000\086\000\086\000\087\000\255\255\087\000\087\000\087\000\
+ \087\000\087\000\255\255\255\255\255\255\255\255\255\255\088\000\
+ \255\255\255\255\088\000\088\000\088\000\255\255\255\255\088\000\
+ \088\000\088\000\255\255\088\000\088\000\088\000\255\255\255\255\
+ \086\000\086\000\086\000\255\255\255\255\087\000\087\000\087\000\
+ \088\000\255\255\088\000\088\000\088\000\088\000\088\000\255\255\
+ \255\255\255\255\255\255\255\255\089\000\255\255\255\255\089\000\
+ \089\000\089\000\255\255\255\255\089\000\089\000\089\000\255\255\
+ \089\000\089\000\089\000\255\255\255\255\087\000\087\000\087\000\
+ \255\255\255\255\088\000\088\000\088\000\089\000\255\255\089\000\
+ \089\000\089\000\089\000\089\000\255\255\255\255\255\255\255\255\
+ \255\255\090\000\255\255\255\255\090\000\090\000\090\000\255\255\
+ \255\255\090\000\090\000\090\000\255\255\090\000\090\000\090\000\
+ \255\255\255\255\088\000\088\000\088\000\255\255\255\255\089\000\
+ \089\000\089\000\090\000\255\255\090\000\090\000\090\000\090\000\
+ \090\000\255\255\255\255\255\255\255\255\255\255\091\000\255\255\
+ \255\255\091\000\091\000\091\000\255\255\255\255\091\000\091\000\
+ \091\000\255\255\091\000\091\000\091\000\255\255\255\255\089\000\
+ \089\000\089\000\255\255\255\255\090\000\090\000\090\000\091\000\
+ \255\255\091\000\091\000\091\000\091\000\091\000\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\092\000\
+ \092\000\255\255\255\255\092\000\255\255\255\255\255\255\255\255\
+ \092\000\092\000\255\255\255\255\090\000\090\000\090\000\255\255\
+ \255\255\091\000\091\000\091\000\092\000\255\255\092\000\092\000\
+ \092\000\255\255\092\000\255\255\255\255\255\255\255\255\255\255\
+ \093\000\255\255\255\255\093\000\093\000\093\000\255\255\255\255\
+ \093\000\093\000\093\000\255\255\093\000\093\000\093\000\255\255\
+ \255\255\091\000\091\000\091\000\255\255\255\255\255\255\092\000\
+ \092\000\093\000\255\255\093\000\093\000\093\000\093\000\093\000\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \077\000\255\255\255\255\255\255\255\255\077\000\077\000\255\255\
- \077\000\255\255\255\255\255\255\255\255\255\255\255\255\113\000\
- \113\000\113\000\113\000\113\000\113\000\076\000\255\255\255\255\
- \255\255\255\255\077\000\255\255\255\255\255\255\076\000\077\000\
- \077\000\077\000\077\000\077\000\077\000\077\000\077\000\077\000\
- \077\000\077\000\077\000\077\000\077\000\077\000\077\000\077\000\
- \077\000\077\000\077\000\077\000\077\000\077\000\077\000\077\000\
- \077\000\255\255\255\255\255\255\255\255\077\000\255\255\077\000\
- \077\000\077\000\077\000\077\000\077\000\077\000\077\000\077\000\
- \077\000\077\000\077\000\077\000\077\000\077\000\077\000\077\000\
- \077\000\077\000\077\000\077\000\077\000\077\000\077\000\077\000\
- \077\000\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\094\000\094\000\255\255\255\255\094\000\255\255\255\255\
+ \105\000\105\000\094\000\094\000\105\000\255\255\092\000\092\000\
+ \255\255\105\000\105\000\093\000\093\000\093\000\094\000\255\255\
+ \094\000\094\000\094\000\255\255\094\000\105\000\255\255\105\000\
+ \105\000\105\000\255\255\105\000\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\106\000\106\000\255\255\
+ \255\255\106\000\255\255\093\000\093\000\093\000\106\000\106\000\
+ \255\255\094\000\094\000\255\255\255\255\255\255\255\255\255\255\
+ \105\000\105\000\106\000\255\255\106\000\106\000\106\000\255\255\
+ \106\000\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\107\000\107\000\255\255\255\255\107\000\255\255\
+ \094\000\094\000\255\255\107\000\107\000\255\255\255\255\105\000\
+ \105\000\255\255\255\255\255\255\255\255\106\000\106\000\107\000\
+ \255\255\107\000\107\000\107\000\255\255\107\000\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\108\000\
+ \108\000\255\255\255\255\108\000\255\255\255\255\109\000\109\000\
+ \108\000\108\000\109\000\255\255\106\000\106\000\255\255\109\000\
+ \109\000\255\255\107\000\107\000\108\000\255\255\108\000\108\000\
+ \108\000\255\255\108\000\109\000\255\255\109\000\109\000\109\000\
+ \255\255\109\000\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\110\000\110\000\255\255\255\255\110\000\
+ \255\255\107\000\107\000\255\255\110\000\110\000\255\255\108\000\
+ \108\000\255\255\255\255\255\255\255\255\255\255\109\000\109\000\
+ \110\000\255\255\110\000\110\000\110\000\255\255\110\000\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \111\000\111\000\255\255\255\255\111\000\255\255\108\000\108\000\
+ \255\255\111\000\111\000\255\255\255\255\109\000\109\000\255\255\
+ \255\255\255\255\255\255\110\000\110\000\111\000\255\255\111\000\
+ \111\000\111\000\255\255\111\000\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\112\000\112\000\255\255\
+ \112\000\255\255\255\255\255\255\255\255\255\255\112\000\112\000\
+ \255\255\255\255\110\000\110\000\255\255\255\255\255\255\255\255\
+ \111\000\111\000\112\000\255\255\112\000\112\000\112\000\255\255\
+ \112\000\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \113\000\113\000\255\255\113\000\255\255\255\255\255\255\255\255\
+ \255\255\113\000\113\000\255\255\255\255\255\255\255\255\111\000\
+ \111\000\255\255\255\255\112\000\255\255\113\000\112\000\113\000\
+ \113\000\113\000\255\255\113\000\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\114\000\114\000\255\255\114\000\255\255\
+ \115\000\115\000\255\255\115\000\114\000\114\000\255\255\255\255\
+ \255\255\115\000\115\000\112\000\112\000\255\255\113\000\255\255\
+ \114\000\113\000\114\000\114\000\114\000\115\000\114\000\115\000\
+ \115\000\115\000\255\255\115\000\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\116\000\116\000\255\255\116\000\255\255\
+ \255\255\255\255\255\255\255\255\116\000\116\000\113\000\113\000\
+ \255\255\114\000\255\255\255\255\114\000\255\255\115\000\255\255\
+ \116\000\115\000\116\000\116\000\116\000\255\255\116\000\255\255\
+ \255\255\255\255\117\000\255\255\255\255\117\000\117\000\117\000\
+ \255\255\255\255\117\000\117\000\117\000\255\255\117\000\117\000\
+ \117\000\114\000\114\000\255\255\255\255\255\255\115\000\115\000\
+ \255\255\116\000\255\255\117\000\116\000\117\000\117\000\117\000\
+ \117\000\117\000\255\255\255\255\255\255\255\255\255\255\118\000\
+ \255\255\255\255\118\000\118\000\118\000\255\255\255\255\118\000\
+ \118\000\118\000\255\255\118\000\118\000\118\000\255\255\255\255\
+ \255\255\116\000\116\000\255\255\255\255\117\000\117\000\117\000\
+ \118\000\255\255\118\000\118\000\118\000\118\000\118\000\255\255\
+ \255\255\255\255\255\255\255\255\119\000\255\255\255\255\119\000\
+ \119\000\119\000\255\255\255\255\119\000\119\000\119\000\255\255\
+ \119\000\119\000\119\000\255\255\255\255\117\000\117\000\117\000\
+ \255\255\255\255\118\000\118\000\118\000\119\000\255\255\119\000\
+ \119\000\119\000\119\000\119\000\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\120\000\255\255\255\255\120\000\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\118\000\118\000\118\000\255\255\255\255\119\000\
+ \119\000\119\000\255\255\120\000\255\255\255\255\255\255\255\255\
+ \120\000\120\000\255\255\120\000\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\077\000\077\000\
- \077\000\077\000\077\000\077\000\077\000\077\000\077\000\077\000\
- \077\000\077\000\077\000\077\000\077\000\077\000\077\000\077\000\
- \077\000\077\000\077\000\077\000\077\000\255\255\077\000\077\000\
- \077\000\077\000\077\000\077\000\077\000\077\000\077\000\077\000\
- \077\000\077\000\077\000\077\000\077\000\077\000\077\000\077\000\
- \077\000\077\000\077\000\077\000\077\000\077\000\077\000\077\000\
- \077\000\077\000\077\000\077\000\077\000\255\255\077\000\077\000\
- \077\000\077\000\077\000\077\000\077\000\077\000\077\000\081\000\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \081\000\081\000\081\000\081\000\081\000\081\000\081\000\081\000\
- \081\000\081\000\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\081\000\081\000\081\000\081\000\081\000\081\000\081\000\
- \081\000\081\000\081\000\081\000\081\000\081\000\081\000\081\000\
- \081\000\081\000\081\000\081\000\081\000\081\000\081\000\081\000\
- \081\000\081\000\081\000\255\255\255\255\255\255\255\255\081\000\
- \255\255\081\000\081\000\081\000\081\000\081\000\081\000\081\000\
- \081\000\081\000\081\000\081\000\081\000\081\000\081\000\081\000\
- \081\000\081\000\081\000\081\000\081\000\081\000\081\000\081\000\
- \081\000\081\000\081\000\255\255\255\255\255\255\255\255\255\255\
- \255\255\086\000\086\000\086\000\086\000\086\000\086\000\086\000\
- \086\000\086\000\086\000\086\000\086\000\086\000\086\000\086\000\
- \086\000\086\000\086\000\086\000\086\000\086\000\086\000\086\000\
- \086\000\086\000\086\000\255\255\255\255\255\255\255\255\086\000\
- \255\255\086\000\086\000\086\000\086\000\086\000\086\000\086\000\
- \086\000\086\000\086\000\086\000\086\000\086\000\086\000\086\000\
- \086\000\086\000\086\000\086\000\086\000\086\000\086\000\086\000\
- \086\000\086\000\086\000\255\255\255\255\255\255\255\255\255\255\
- \081\000\081\000\081\000\081\000\081\000\081\000\081\000\081\000\
- \081\000\081\000\081\000\081\000\081\000\081\000\081\000\081\000\
- \081\000\081\000\081\000\081\000\081\000\081\000\081\000\255\255\
- \081\000\081\000\081\000\081\000\081\000\081\000\081\000\081\000\
- \081\000\081\000\081\000\081\000\081\000\081\000\081\000\081\000\
- \081\000\081\000\081\000\081\000\081\000\081\000\081\000\081\000\
- \081\000\081\000\081\000\081\000\081\000\081\000\081\000\255\255\
- \081\000\081\000\081\000\081\000\081\000\081\000\081\000\081\000\
- \086\000\086\000\086\000\086\000\086\000\086\000\086\000\086\000\
- \086\000\086\000\086\000\086\000\086\000\086\000\086\000\086\000\
- \086\000\086\000\086\000\086\000\086\000\086\000\086\000\255\255\
- \086\000\086\000\086\000\086\000\086\000\086\000\086\000\086\000\
- \086\000\086\000\086\000\086\000\086\000\086\000\086\000\086\000\
- \086\000\086\000\086\000\086\000\086\000\086\000\086\000\086\000\
- \086\000\086\000\086\000\086\000\086\000\086\000\086\000\255\255\
- \086\000\086\000\086\000\086\000\086\000\086\000\086\000\086\000\
- \087\000\087\000\087\000\087\000\087\000\087\000\087\000\087\000\
- \087\000\087\000\087\000\087\000\087\000\087\000\087\000\087\000\
- \087\000\087\000\087\000\087\000\087\000\087\000\087\000\087\000\
- \087\000\087\000\255\255\255\255\255\255\255\255\087\000\255\255\
- \087\000\087\000\087\000\087\000\087\000\087\000\087\000\087\000\
- \087\000\087\000\087\000\087\000\087\000\087\000\087\000\087\000\
- \087\000\087\000\087\000\087\000\087\000\087\000\087\000\087\000\
- \087\000\087\000\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\087\000\
- \087\000\087\000\087\000\087\000\087\000\087\000\087\000\087\000\
- \087\000\087\000\087\000\087\000\087\000\087\000\087\000\087\000\
- \087\000\087\000\087\000\087\000\087\000\087\000\255\255\087\000\
- \087\000\087\000\087\000\087\000\087\000\087\000\087\000\087\000\
- \087\000\087\000\087\000\087\000\087\000\087\000\087\000\087\000\
- \087\000\087\000\087\000\087\000\087\000\087\000\087\000\087\000\
- \087\000\087\000\087\000\087\000\087\000\087\000\088\000\087\000\
- \087\000\087\000\087\000\087\000\087\000\087\000\087\000\088\000\
- \088\000\088\000\088\000\088\000\088\000\088\000\088\000\088\000\
- \088\000\255\255\255\255\088\000\255\255\255\255\255\255\088\000\
- \088\000\088\000\088\000\088\000\088\000\088\000\088\000\088\000\
- \088\000\088\000\088\000\088\000\088\000\088\000\088\000\088\000\
- \088\000\088\000\088\000\088\000\088\000\088\000\088\000\088\000\
- \088\000\088\000\255\255\255\255\255\255\255\255\088\000\255\255\
- \088\000\088\000\088\000\088\000\088\000\088\000\088\000\088\000\
- \088\000\088\000\088\000\088\000\088\000\088\000\088\000\088\000\
- \088\000\088\000\088\000\088\000\088\000\088\000\088\000\088\000\
- \088\000\088\000\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\088\000\
- \088\000\088\000\088\000\088\000\088\000\088\000\088\000\088\000\
- \088\000\088\000\088\000\088\000\088\000\088\000\088\000\088\000\
- \088\000\088\000\088\000\088\000\088\000\088\000\255\255\088\000\
- \088\000\088\000\088\000\088\000\088\000\088\000\088\000\088\000\
- \088\000\088\000\088\000\088\000\088\000\088\000\088\000\088\000\
- \088\000\088\000\088\000\088\000\088\000\088\000\088\000\088\000\
- \088\000\088\000\088\000\088\000\088\000\088\000\089\000\088\000\
- \088\000\088\000\088\000\088\000\088\000\088\000\088\000\089\000\
- \089\000\089\000\089\000\089\000\089\000\089\000\089\000\089\000\
- \089\000\255\255\255\255\089\000\255\255\255\255\255\255\255\255\
- \089\000\089\000\089\000\089\000\089\000\089\000\089\000\089\000\
- \089\000\089\000\089\000\089\000\089\000\089\000\089\000\089\000\
- \089\000\089\000\089\000\089\000\089\000\089\000\089\000\089\000\
- \089\000\089\000\255\255\255\255\255\255\255\255\089\000\255\255\
- \089\000\089\000\089\000\089\000\089\000\089\000\089\000\089\000\
- \089\000\089\000\089\000\089\000\089\000\089\000\089\000\089\000\
- \089\000\089\000\089\000\089\000\089\000\089\000\089\000\089\000\
- \089\000\089\000\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\089\000\
- \089\000\089\000\089\000\089\000\089\000\089\000\089\000\089\000\
- \089\000\089\000\089\000\089\000\089\000\089\000\089\000\089\000\
- \089\000\089\000\089\000\089\000\089\000\089\000\255\255\089\000\
- \089\000\089\000\089\000\089\000\089\000\089\000\089\000\089\000\
- \089\000\089\000\089\000\089\000\089\000\089\000\089\000\089\000\
- \089\000\089\000\089\000\089\000\089\000\089\000\089\000\089\000\
- \089\000\089\000\089\000\089\000\089\000\089\000\255\255\089\000\
- \089\000\089\000\089\000\089\000\089\000\089\000\089\000\090\000\
- \255\255\090\000\255\255\255\255\106\000\255\255\090\000\106\000\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\090\000\
- \090\000\090\000\090\000\090\000\090\000\090\000\090\000\090\000\
- \090\000\255\255\106\000\255\255\106\000\255\255\255\255\255\255\
- \255\255\106\000\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\106\000\106\000\106\000\106\000\106\000\106\000\
- \106\000\106\000\106\000\106\000\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\090\000\255\255\255\255\255\255\255\255\
- \255\255\090\000\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\090\000\255\255\255\255\
- \255\255\090\000\255\255\090\000\255\255\255\255\106\000\090\000\
- \255\255\255\255\255\255\255\255\106\000\115\000\255\255\255\255\
- \115\000\115\000\115\000\255\255\255\255\255\255\115\000\115\000\
- \106\000\115\000\115\000\115\000\106\000\255\255\106\000\255\255\
- \255\255\255\255\106\000\255\255\255\255\255\255\115\000\255\255\
- \115\000\115\000\115\000\115\000\115\000\115\000\115\000\115\000\
- \115\000\115\000\115\000\115\000\115\000\115\000\115\000\115\000\
- \115\000\115\000\115\000\115\000\115\000\115\000\115\000\115\000\
- \115\000\115\000\115\000\115\000\115\000\115\000\115\000\255\255\
- \255\255\255\255\115\000\115\000\255\255\115\000\115\000\115\000\
- \115\000\115\000\115\000\115\000\115\000\115\000\115\000\115\000\
- \115\000\115\000\115\000\115\000\115\000\115\000\115\000\115\000\
- \115\000\115\000\115\000\115\000\115\000\115\000\115\000\255\255\
- \115\000\255\255\115\000\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\106\000\255\255\115\000\115\000\115\000\115\000\
- \115\000\115\000\115\000\115\000\115\000\115\000\115\000\115\000\
- \115\000\115\000\115\000\115\000\115\000\115\000\115\000\115\000\
- \115\000\115\000\115\000\255\255\115\000\115\000\115\000\115\000\
- \115\000\115\000\115\000\115\000\115\000\115\000\115\000\115\000\
- \115\000\115\000\115\000\115\000\115\000\115\000\115\000\115\000\
- \115\000\115\000\115\000\115\000\115\000\115\000\115\000\115\000\
- \115\000\115\000\115\000\255\255\115\000\115\000\115\000\115\000\
- \115\000\115\000\115\000\115\000\116\000\255\255\255\255\116\000\
- \116\000\116\000\255\255\255\255\255\255\116\000\116\000\255\255\
- \116\000\116\000\116\000\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\116\000\255\255\116\000\
- \116\000\116\000\116\000\116\000\255\255\255\255\255\255\255\255\
- \117\000\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\117\000\117\000\117\000\117\000\117\000\117\000\117\000\
- \117\000\117\000\117\000\255\255\255\255\117\000\255\255\255\255\
- \255\255\116\000\117\000\117\000\117\000\117\000\117\000\117\000\
- \117\000\117\000\117\000\117\000\117\000\117\000\117\000\117\000\
- \117\000\117\000\117\000\117\000\117\000\117\000\117\000\117\000\
- \117\000\117\000\117\000\117\000\255\255\255\255\255\255\116\000\
- \117\000\116\000\117\000\117\000\117\000\117\000\117\000\117\000\
- \117\000\117\000\117\000\117\000\117\000\117\000\117\000\117\000\
- \117\000\117\000\117\000\117\000\117\000\117\000\117\000\117\000\
- \117\000\117\000\117\000\117\000\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\117\000\117\000\117\000\117\000\117\000\117\000\117\000\
- \117\000\117\000\117\000\117\000\117\000\117\000\117\000\117\000\
- \117\000\117\000\117\000\117\000\117\000\117\000\117\000\117\000\
- \255\255\117\000\117\000\117\000\117\000\117\000\117\000\117\000\
- \117\000\117\000\117\000\117\000\117\000\117\000\117\000\117\000\
- \117\000\117\000\117\000\117\000\117\000\117\000\117\000\117\000\
- \117\000\117\000\117\000\117\000\117\000\117\000\117\000\117\000\
- \255\255\117\000\117\000\117\000\117\000\117\000\117\000\117\000\
- \117\000\118\000\255\255\255\255\118\000\118\000\118\000\255\255\
- \255\255\255\255\118\000\118\000\255\255\118\000\118\000\118\000\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\118\000\255\255\118\000\118\000\118\000\118\000\
- \118\000\118\000\118\000\118\000\118\000\118\000\118\000\118\000\
- \118\000\118\000\118\000\118\000\118\000\118\000\118\000\118\000\
- \118\000\118\000\118\000\118\000\118\000\118\000\118\000\118\000\
- \118\000\118\000\118\000\255\255\255\255\255\255\118\000\118\000\
- \255\255\118\000\118\000\118\000\118\000\118\000\118\000\118\000\
- \118\000\118\000\118\000\118\000\118\000\118\000\118\000\118\000\
- \118\000\118\000\118\000\118\000\118\000\118\000\118\000\118\000\
- \118\000\118\000\118\000\255\255\118\000\255\255\118\000\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \118\000\118\000\118\000\118\000\118\000\118\000\118\000\118\000\
- \118\000\118\000\118\000\118\000\118\000\118\000\118\000\118\000\
- \118\000\118\000\118\000\118\000\118\000\118\000\118\000\255\255\
- \118\000\118\000\118\000\118\000\118\000\118\000\118\000\118\000\
- \118\000\118\000\118\000\118\000\118\000\118\000\118\000\118\000\
- \118\000\118\000\118\000\118\000\118\000\118\000\118\000\118\000\
- \118\000\118\000\118\000\118\000\118\000\118\000\118\000\255\255\
- \118\000\118\000\118\000\118\000\118\000\118\000\118\000\118\000\
- \119\000\255\255\255\255\119\000\119\000\119\000\255\255\255\255\
- \255\255\119\000\119\000\255\255\119\000\119\000\119\000\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\119\000\255\255\119\000\119\000\119\000\119\000\119\000\
- \255\255\255\255\255\255\255\255\255\255\255\255\120\000\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\120\000\
- \120\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
- \120\000\255\255\255\255\120\000\255\255\119\000\255\255\120\000\
+ \255\255\255\255\255\255\255\255\255\255\120\000\255\255\119\000\
+ \119\000\119\000\120\000\120\000\120\000\120\000\120\000\120\000\
\120\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
\120\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
- \120\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
- \120\000\120\000\255\255\119\000\255\255\119\000\120\000\255\255\
- \120\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
+ \120\000\120\000\120\000\120\000\255\255\255\255\255\255\255\255\
+ \120\000\255\255\120\000\120\000\120\000\120\000\120\000\120\000\
\120\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
\120\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
- \120\000\120\000\255\255\255\255\255\255\255\255\255\255\255\255\
- \121\000\121\000\121\000\121\000\121\000\121\000\121\000\121\000\
- \121\000\121\000\121\000\121\000\121\000\121\000\121\000\121\000\
- \121\000\121\000\121\000\121\000\121\000\121\000\121\000\121\000\
- \121\000\121\000\255\255\255\255\255\255\255\255\121\000\255\255\
- \121\000\121\000\121\000\121\000\121\000\121\000\121\000\121\000\
- \121\000\121\000\121\000\121\000\121\000\121\000\121\000\121\000\
- \121\000\121\000\121\000\121\000\121\000\121\000\121\000\121\000\
- \121\000\121\000\255\255\255\255\255\255\255\255\255\255\120\000\
+ \120\000\120\000\120\000\120\000\145\000\145\000\145\000\145\000\
+ \145\000\145\000\145\000\145\000\145\000\145\000\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\145\000\145\000\145\000\
+ \145\000\145\000\145\000\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\145\000\145\000\145\000\
+ \145\000\145\000\145\000\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
\120\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
\120\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
- \120\000\120\000\120\000\120\000\120\000\120\000\255\255\120\000\
+ \255\255\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
\120\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
\120\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
\120\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
- \120\000\120\000\120\000\120\000\120\000\120\000\255\255\120\000\
- \120\000\120\000\120\000\120\000\120\000\120\000\120\000\121\000\
- \121\000\121\000\121\000\121\000\121\000\121\000\121\000\121\000\
- \121\000\121\000\121\000\121\000\121\000\121\000\121\000\121\000\
- \121\000\121\000\121\000\121\000\121\000\121\000\255\255\121\000\
- \121\000\121\000\121\000\121\000\121\000\121\000\121\000\121\000\
- \121\000\121\000\121\000\121\000\121\000\121\000\121\000\121\000\
- \121\000\121\000\121\000\121\000\121\000\121\000\121\000\121\000\
- \121\000\121\000\121\000\121\000\121\000\121\000\122\000\121\000\
- \121\000\121\000\121\000\121\000\121\000\121\000\121\000\122\000\
- \122\000\122\000\122\000\122\000\122\000\122\000\122\000\122\000\
- \122\000\255\255\255\255\122\000\255\255\255\255\255\255\255\255\
- \122\000\122\000\122\000\122\000\122\000\122\000\122\000\122\000\
- \122\000\122\000\122\000\122\000\122\000\122\000\122\000\122\000\
- \122\000\122\000\122\000\122\000\122\000\122\000\122\000\122\000\
- \122\000\122\000\255\255\255\255\255\255\255\255\122\000\255\255\
- \122\000\122\000\122\000\122\000\122\000\122\000\122\000\122\000\
- \122\000\122\000\122\000\122\000\122\000\122\000\122\000\122\000\
- \122\000\122\000\122\000\122\000\122\000\122\000\122\000\122\000\
- \122\000\122\000\255\255\255\255\255\255\255\255\255\255\255\255\
- \128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\
- \128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\
- \128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\
- \128\000\128\000\255\255\255\255\255\255\255\255\128\000\255\255\
- \128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\
- \128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\
- \128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\
- \128\000\128\000\255\255\255\255\255\255\255\255\255\255\122\000\
- \122\000\122\000\122\000\122\000\122\000\122\000\122\000\122\000\
- \122\000\122\000\122\000\122\000\122\000\122\000\122\000\122\000\
- \122\000\122\000\122\000\122\000\122\000\122\000\255\255\122\000\
- \122\000\122\000\122\000\122\000\122\000\122\000\122\000\122\000\
- \122\000\122\000\122\000\122\000\122\000\122\000\122\000\122\000\
- \122\000\122\000\122\000\122\000\122\000\122\000\122\000\122\000\
- \122\000\122\000\122\000\122\000\122\000\122\000\255\255\122\000\
- \122\000\122\000\122\000\122\000\122\000\122\000\122\000\128\000\
- \128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\
- \128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\
- \128\000\128\000\128\000\128\000\128\000\128\000\255\255\128\000\
- \128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\
- \128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\
- \128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\
- \128\000\128\000\128\000\128\000\128\000\128\000\255\255\128\000\
- \128\000\128\000\128\000\128\000\128\000\128\000\128\000\129\000\
- \129\000\129\000\129\000\129\000\129\000\129\000\129\000\129\000\
- \129\000\129\000\129\000\129\000\129\000\129\000\129\000\129\000\
+ \255\255\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
+ \120\000\120\000\124\000\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\124\000\124\000\124\000\124\000\124\000\
+ \124\000\124\000\124\000\124\000\124\000\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\124\000\124\000\124\000\124\000\
+ \124\000\124\000\124\000\124\000\124\000\124\000\124\000\124\000\
+ \124\000\124\000\124\000\124\000\124\000\124\000\124\000\124\000\
+ \124\000\124\000\124\000\124\000\124\000\124\000\255\255\255\255\
+ \255\255\255\255\124\000\255\255\124\000\124\000\124\000\124\000\
+ \124\000\124\000\124\000\124\000\124\000\124\000\124\000\124\000\
+ \124\000\124\000\124\000\124\000\124\000\124\000\124\000\124\000\
+ \124\000\124\000\124\000\124\000\124\000\124\000\255\255\255\255\
+ \255\255\255\255\255\255\255\255\129\000\129\000\129\000\129\000\
\129\000\129\000\129\000\129\000\129\000\129\000\129\000\129\000\
- \129\000\255\255\255\255\255\255\255\255\129\000\255\255\129\000\
\129\000\129\000\129\000\129\000\129\000\129\000\129\000\129\000\
+ \129\000\129\000\129\000\129\000\129\000\129\000\255\255\255\255\
+ \255\255\255\255\129\000\255\255\129\000\129\000\129\000\129\000\
\129\000\129\000\129\000\129\000\129\000\129\000\129\000\129\000\
\129\000\129\000\129\000\129\000\129\000\129\000\129\000\129\000\
- \129\000\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\129\000\129\000\
+ \129\000\129\000\129\000\129\000\129\000\129\000\255\255\255\255\
+ \255\255\255\255\255\255\124\000\124\000\124\000\124\000\124\000\
+ \124\000\124\000\124\000\124\000\124\000\124\000\124\000\124\000\
+ \124\000\124\000\124\000\124\000\124\000\124\000\124\000\124\000\
+ \124\000\124\000\255\255\124\000\124\000\124\000\124\000\124\000\
+ \124\000\124\000\124\000\124\000\124\000\124\000\124\000\124\000\
+ \124\000\124\000\124\000\124\000\124\000\124\000\124\000\124\000\
+ \124\000\124\000\124\000\124\000\124\000\124\000\124\000\124\000\
+ \124\000\124\000\255\255\124\000\124\000\124\000\124\000\124\000\
+ \124\000\124\000\124\000\129\000\129\000\129\000\129\000\129\000\
\129\000\129\000\129\000\129\000\129\000\129\000\129\000\129\000\
\129\000\129\000\129\000\129\000\129\000\129\000\129\000\129\000\
- \129\000\129\000\129\000\129\000\129\000\255\255\129\000\129\000\
+ \129\000\129\000\255\255\129\000\129\000\129\000\129\000\129\000\
\129\000\129\000\129\000\129\000\129\000\129\000\129\000\129\000\
\129\000\129\000\129\000\129\000\129\000\129\000\129\000\129\000\
\129\000\129\000\129\000\129\000\129\000\129\000\129\000\129\000\
- \129\000\129\000\129\000\129\000\129\000\130\000\129\000\129\000\
- \129\000\129\000\129\000\129\000\129\000\129\000\130\000\130\000\
- \130\000\130\000\130\000\130\000\130\000\130\000\130\000\130\000\
- \255\255\255\255\130\000\255\255\255\255\255\255\130\000\130\000\
+ \129\000\129\000\255\255\129\000\129\000\129\000\129\000\129\000\
+ \129\000\129\000\129\000\130\000\130\000\130\000\130\000\130\000\
\130\000\130\000\130\000\130\000\130\000\130\000\130\000\130\000\
\130\000\130\000\130\000\130\000\130\000\130\000\130\000\130\000\
+ \130\000\130\000\130\000\130\000\130\000\255\255\255\255\255\255\
+ \255\255\130\000\255\255\130\000\130\000\130\000\130\000\130\000\
\130\000\130\000\130\000\130\000\130\000\130\000\130\000\130\000\
- \130\000\255\255\255\255\255\255\255\255\130\000\255\255\130\000\
\130\000\130\000\130\000\130\000\130\000\130\000\130\000\130\000\
- \130\000\130\000\130\000\130\000\130\000\130\000\130\000\130\000\
- \130\000\130\000\130\000\130\000\130\000\130\000\130\000\130\000\
- \130\000\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \130\000\130\000\130\000\130\000\130\000\151\000\151\000\151\000\
+ \151\000\151\000\151\000\151\000\151\000\151\000\151\000\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\151\000\151\000\
+ \151\000\151\000\151\000\151\000\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\151\000\151\000\
+ \151\000\151\000\151\000\151\000\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\130\000\130\000\
+ \255\255\255\255\130\000\130\000\130\000\130\000\130\000\130\000\
\130\000\130\000\130\000\130\000\130\000\130\000\130\000\130\000\
\130\000\130\000\130\000\130\000\130\000\130\000\130\000\130\000\
- \130\000\130\000\130\000\130\000\130\000\255\255\130\000\130\000\
+ \130\000\255\255\130\000\130\000\130\000\130\000\130\000\130\000\
\130\000\130\000\130\000\130\000\130\000\130\000\130\000\130\000\
\130\000\130\000\130\000\130\000\130\000\130\000\130\000\130\000\
\130\000\130\000\130\000\130\000\130\000\130\000\130\000\130\000\
- \130\000\130\000\130\000\130\000\130\000\131\000\130\000\130\000\
- \130\000\130\000\130\000\130\000\130\000\130\000\131\000\131\000\
- \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
- \255\255\255\255\131\000\255\255\255\255\255\255\255\255\131\000\
- \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
+ \130\000\131\000\130\000\130\000\130\000\130\000\130\000\130\000\
+ \130\000\130\000\131\000\131\000\131\000\131\000\131\000\131\000\
+ \131\000\131\000\131\000\131\000\255\255\255\255\131\000\255\255\
+ \255\255\255\255\131\000\131\000\131\000\131\000\131\000\131\000\
\131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
\131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
- \131\000\255\255\255\255\255\255\255\255\131\000\255\255\131\000\
+ \131\000\131\000\131\000\131\000\131\000\255\255\255\255\255\255\
+ \255\255\131\000\255\255\131\000\131\000\131\000\131\000\131\000\
\131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
\131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
- \131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
- \131\000\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \131\000\131\000\131\000\131\000\131\000\156\000\156\000\156\000\
+ \156\000\156\000\156\000\156\000\156\000\156\000\156\000\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\156\000\156\000\
+ \156\000\156\000\156\000\156\000\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\156\000\156\000\
+ \156\000\156\000\156\000\156\000\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\255\255\131\000\131\000\
+ \255\255\255\255\131\000\131\000\131\000\131\000\131\000\131\000\
\131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
\131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
- \131\000\131\000\131\000\131\000\131\000\255\255\131\000\131\000\
+ \131\000\255\255\131\000\131\000\131\000\131\000\131\000\131\000\
\131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
\131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
\131\000\131\000\131\000\131\000\131\000\131\000\131\000\131\000\
- \131\000\131\000\131\000\131\000\131\000\255\255\131\000\131\000\
- \131\000\131\000\131\000\131\000\131\000\131\000\132\000\255\255\
- \255\255\132\000\255\255\255\255\255\255\255\255\255\255\255\255\
- \132\000\255\255\132\000\132\000\132\000\132\000\132\000\132\000\
- \132\000\132\000\132\000\132\000\132\000\255\255\255\255\255\255\
+ \131\000\132\000\131\000\131\000\131\000\131\000\131\000\131\000\
+ \131\000\131\000\132\000\132\000\132\000\132\000\132\000\132\000\
+ \132\000\132\000\132\000\132\000\255\255\255\255\132\000\255\255\
\255\255\255\255\255\255\132\000\132\000\132\000\132\000\132\000\
\132\000\132\000\132\000\132\000\132\000\132\000\132\000\132\000\
\132\000\132\000\132\000\132\000\132\000\132\000\132\000\132\000\
\132\000\132\000\132\000\132\000\132\000\255\255\255\255\255\255\
- \255\255\132\000\132\000\132\000\132\000\132\000\132\000\132\000\
+ \255\255\132\000\255\255\132\000\132\000\132\000\132\000\132\000\
\132\000\132\000\132\000\132\000\132\000\132\000\132\000\132\000\
\132\000\132\000\132\000\132\000\132\000\132\000\132\000\132\000\
\132\000\132\000\132\000\132\000\132\000\255\255\255\255\255\255\
\132\000\132\000\132\000\132\000\132\000\132\000\132\000\132\000\
\132\000\132\000\132\000\132\000\132\000\132\000\132\000\132\000\
\132\000\255\255\132\000\132\000\132\000\132\000\132\000\132\000\
- \132\000\132\000\132\000\134\000\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\134\000\134\000\134\000\134\000\
- \134\000\134\000\134\000\134\000\134\000\134\000\134\000\255\255\
- \255\255\255\255\255\255\255\255\255\255\134\000\134\000\134\000\
- \134\000\134\000\134\000\134\000\134\000\134\000\134\000\134\000\
- \134\000\134\000\134\000\134\000\134\000\134\000\134\000\134\000\
- \134\000\134\000\134\000\134\000\134\000\134\000\134\000\255\255\
- \255\255\255\255\255\255\134\000\255\255\134\000\134\000\134\000\
- \134\000\134\000\134\000\134\000\134\000\134\000\134\000\134\000\
- \134\000\134\000\134\000\134\000\134\000\134\000\134\000\134\000\
- \134\000\134\000\134\000\134\000\134\000\134\000\134\000\255\255\
+ \132\000\132\000\133\000\255\255\133\000\255\255\255\255\149\000\
+ \255\255\133\000\149\000\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\133\000\133\000\133\000\133\000\133\000\133\000\
+ \133\000\133\000\133\000\133\000\255\255\149\000\255\255\149\000\
+ \255\255\255\255\255\255\255\255\149\000\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\149\000\149\000\149\000\
+ \149\000\149\000\149\000\149\000\149\000\149\000\149\000\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\133\000\255\255\
+ \255\255\255\255\255\255\255\255\133\000\157\000\255\255\255\255\
+ \157\000\157\000\157\000\255\255\255\255\255\255\157\000\157\000\
+ \133\000\157\000\157\000\157\000\133\000\255\255\133\000\255\255\
+ \255\255\149\000\133\000\255\255\255\255\255\255\157\000\149\000\
+ \157\000\157\000\157\000\157\000\157\000\255\255\255\255\255\255\
+ \255\255\255\255\255\255\149\000\255\255\255\255\255\255\149\000\
+ \255\255\149\000\255\255\255\255\255\255\149\000\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \157\000\255\255\157\000\255\255\255\255\255\255\255\255\255\255\
+ \158\000\255\255\255\255\158\000\158\000\158\000\255\255\255\255\
+ \255\255\158\000\158\000\255\255\158\000\158\000\158\000\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \157\000\158\000\157\000\158\000\158\000\158\000\158\000\158\000\
+ \158\000\158\000\158\000\158\000\158\000\158\000\158\000\158\000\
+ \158\000\158\000\158\000\158\000\158\000\158\000\158\000\158\000\
+ \158\000\158\000\158\000\158\000\158\000\158\000\158\000\158\000\
+ \158\000\158\000\255\255\158\000\255\255\158\000\158\000\255\255\
+ \158\000\158\000\158\000\158\000\158\000\158\000\158\000\158\000\
+ \158\000\158\000\158\000\158\000\158\000\158\000\158\000\158\000\
+ \158\000\158\000\158\000\158\000\158\000\158\000\158\000\158\000\
+ \158\000\158\000\255\255\158\000\255\255\158\000\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\149\000\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\134\000\134\000\134\000\134\000\
- \134\000\134\000\134\000\134\000\134\000\134\000\134\000\134\000\
- \134\000\134\000\134\000\134\000\134\000\134\000\134\000\134\000\
- \134\000\134\000\134\000\255\255\134\000\134\000\134\000\134\000\
- \134\000\134\000\134\000\134\000\134\000\134\000\134\000\134\000\
- \134\000\134\000\134\000\134\000\134\000\134\000\134\000\134\000\
- \134\000\134\000\134\000\134\000\134\000\134\000\134\000\134\000\
- \134\000\134\000\134\000\255\255\134\000\134\000\134\000\134\000\
- \134\000\134\000\134\000\134\000\135\000\255\255\255\255\255\255\
- \255\255\255\255\255\255\135\000\255\255\135\000\135\000\135\000\
- \135\000\135\000\135\000\135\000\135\000\135\000\135\000\135\000\
- \255\255\255\255\255\255\255\255\255\255\255\255\135\000\135\000\
- \135\000\135\000\135\000\135\000\135\000\135\000\135\000\135\000\
- \135\000\135\000\135\000\135\000\135\000\135\000\135\000\135\000\
- \135\000\135\000\135\000\135\000\135\000\135\000\135\000\135\000\
- \255\255\255\255\255\255\255\255\135\000\255\255\135\000\135\000\
- \135\000\135\000\135\000\135\000\135\000\135\000\135\000\135\000\
- \135\000\135\000\135\000\135\000\135\000\135\000\135\000\135\000\
- \135\000\135\000\135\000\135\000\135\000\135\000\135\000\135\000\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\158\000\
+ \158\000\158\000\158\000\158\000\158\000\158\000\158\000\158\000\
+ \158\000\158\000\158\000\158\000\158\000\158\000\158\000\158\000\
+ \158\000\158\000\158\000\158\000\158\000\158\000\255\255\158\000\
+ \158\000\158\000\158\000\158\000\158\000\158\000\158\000\158\000\
+ \158\000\158\000\158\000\158\000\158\000\158\000\158\000\158\000\
+ \158\000\158\000\158\000\158\000\158\000\158\000\158\000\158\000\
+ \158\000\158\000\158\000\158\000\158\000\158\000\255\255\158\000\
+ \158\000\158\000\158\000\158\000\158\000\158\000\158\000\159\000\
+ \255\255\255\255\159\000\159\000\159\000\255\255\255\255\255\255\
+ \159\000\159\000\255\255\159\000\159\000\159\000\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \159\000\255\255\159\000\159\000\159\000\159\000\159\000\255\255\
+ \255\255\255\255\255\255\160\000\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\160\000\160\000\160\000\160\000\
+ \160\000\160\000\160\000\160\000\160\000\160\000\255\255\255\255\
+ \160\000\255\255\159\000\255\255\159\000\160\000\160\000\160\000\
+ \160\000\160\000\160\000\160\000\160\000\160\000\160\000\160\000\
+ \160\000\160\000\160\000\160\000\160\000\160\000\160\000\160\000\
+ \160\000\160\000\160\000\160\000\160\000\160\000\160\000\255\255\
+ \255\255\255\255\159\000\160\000\159\000\160\000\160\000\160\000\
+ \160\000\160\000\160\000\160\000\160\000\160\000\160\000\160\000\
+ \160\000\160\000\160\000\160\000\160\000\160\000\160\000\160\000\
+ \160\000\160\000\160\000\160\000\160\000\160\000\160\000\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\255\255\135\000\135\000\135\000\
- \135\000\135\000\135\000\135\000\135\000\135\000\135\000\135\000\
- \135\000\135\000\135\000\135\000\135\000\135\000\135\000\135\000\
- \135\000\135\000\135\000\135\000\255\255\135\000\135\000\135\000\
- \135\000\135\000\135\000\135\000\135\000\135\000\135\000\135\000\
- \135\000\135\000\135\000\135\000\135\000\135\000\135\000\135\000\
- \135\000\135\000\135\000\135\000\135\000\135\000\135\000\135\000\
- \135\000\135\000\135\000\135\000\137\000\135\000\135\000\135\000\
- \135\000\135\000\135\000\135\000\135\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\137\000\
- \255\255\255\255\255\255\255\255\255\255\255\255\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\137\000\
- \255\255\255\255\255\255\255\255\137\000\255\255\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\137\000\
- \255\255\255\255\255\255\255\255\255\255\255\255\141\000\141\000\
- \141\000\141\000\141\000\141\000\141\000\141\000\141\000\141\000\
- \141\000\141\000\141\000\141\000\141\000\141\000\141\000\141\000\
- \141\000\141\000\141\000\141\000\141\000\141\000\141\000\141\000\
- \255\255\255\255\255\255\255\255\141\000\255\255\141\000\141\000\
- \141\000\141\000\141\000\141\000\141\000\141\000\141\000\141\000\
- \141\000\141\000\141\000\141\000\141\000\141\000\141\000\141\000\
- \141\000\141\000\141\000\141\000\141\000\141\000\141\000\141\000\
- \255\255\255\255\255\255\255\255\255\255\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\255\255\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\255\255\137\000\137\000\137\000\
- \137\000\137\000\137\000\137\000\137\000\141\000\141\000\141\000\
- \141\000\141\000\141\000\141\000\141\000\141\000\141\000\141\000\
- \141\000\141\000\141\000\141\000\141\000\141\000\141\000\141\000\
- \141\000\141\000\141\000\141\000\255\255\141\000\141\000\141\000\
- \141\000\141\000\141\000\141\000\141\000\141\000\141\000\141\000\
- \141\000\141\000\141\000\141\000\141\000\141\000\141\000\141\000\
- \141\000\141\000\141\000\141\000\141\000\141\000\141\000\141\000\
- \141\000\141\000\141\000\141\000\255\255\141\000\141\000\141\000\
- \141\000\141\000\141\000\141\000\141\000\142\000\142\000\142\000\
- \142\000\142\000\142\000\142\000\142\000\142\000\142\000\142\000\
- \142\000\142\000\142\000\142\000\142\000\142\000\142\000\142\000\
- \142\000\142\000\142\000\142\000\142\000\142\000\142\000\255\255\
- \255\255\255\255\255\255\142\000\255\255\142\000\142\000\142\000\
- \142\000\142\000\142\000\142\000\142\000\142\000\142\000\142\000\
- \142\000\142\000\142\000\142\000\142\000\142\000\142\000\142\000\
- \142\000\142\000\142\000\142\000\142\000\142\000\142\000\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\160\000\160\000\160\000\160\000\
+ \160\000\160\000\160\000\160\000\160\000\160\000\160\000\160\000\
+ \160\000\160\000\160\000\160\000\160\000\160\000\160\000\160\000\
+ \160\000\160\000\160\000\255\255\160\000\160\000\160\000\160\000\
+ \160\000\160\000\160\000\160\000\160\000\160\000\160\000\160\000\
+ \160\000\160\000\160\000\160\000\160\000\160\000\160\000\160\000\
+ \160\000\160\000\160\000\160\000\160\000\160\000\160\000\160\000\
+ \160\000\160\000\160\000\255\255\160\000\160\000\160\000\160\000\
+ \160\000\160\000\160\000\160\000\161\000\255\255\255\255\161\000\
+ \161\000\161\000\255\255\255\255\255\255\161\000\161\000\255\255\
+ \161\000\161\000\161\000\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\161\000\255\255\161\000\
+ \161\000\161\000\161\000\161\000\161\000\161\000\161\000\161\000\
+ \161\000\161\000\161\000\161\000\161\000\161\000\161\000\161\000\
+ \161\000\161\000\161\000\161\000\161\000\161\000\161\000\161\000\
+ \161\000\161\000\161\000\161\000\161\000\161\000\255\255\161\000\
+ \255\255\161\000\161\000\255\255\161\000\161\000\161\000\161\000\
+ \161\000\161\000\161\000\161\000\161\000\161\000\161\000\161\000\
+ \161\000\161\000\161\000\161\000\161\000\161\000\161\000\161\000\
+ \161\000\161\000\161\000\161\000\161\000\161\000\255\255\161\000\
+ \255\255\161\000\255\255\255\255\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\142\000\142\000\142\000\142\000\
- \142\000\142\000\142\000\142\000\142\000\142\000\142\000\142\000\
- \142\000\142\000\142\000\142\000\142\000\142\000\142\000\142\000\
- \142\000\142\000\142\000\255\255\142\000\142\000\142\000\142\000\
- \142\000\142\000\142\000\142\000\142\000\142\000\142\000\142\000\
- \142\000\142\000\142\000\142\000\142\000\142\000\142\000\142\000\
- \142\000\142\000\142\000\142\000\142\000\142\000\142\000\142\000\
- \142\000\142\000\142\000\143\000\142\000\142\000\142\000\142\000\
- \142\000\142\000\142\000\142\000\143\000\143\000\143\000\143\000\
- \143\000\143\000\143\000\143\000\143\000\143\000\255\255\255\255\
- \143\000\255\255\255\255\255\255\143\000\143\000\143\000\143\000\
- \143\000\143\000\143\000\143\000\143\000\143\000\143\000\143\000\
- \143\000\143\000\143\000\143\000\143\000\143\000\143\000\143\000\
- \143\000\143\000\143\000\143\000\143\000\143\000\143\000\255\255\
- \255\255\255\255\255\255\143\000\255\255\143\000\143\000\143\000\
- \143\000\143\000\143\000\143\000\143\000\143\000\143\000\143\000\
- \143\000\143\000\143\000\143\000\143\000\143\000\143\000\143\000\
- \143\000\143\000\143\000\143\000\143\000\143\000\143\000\255\255\
+ \255\255\255\255\255\255\161\000\161\000\161\000\161\000\161\000\
+ \161\000\161\000\161\000\161\000\161\000\161\000\161\000\161\000\
+ \161\000\161\000\161\000\161\000\161\000\161\000\161\000\161\000\
+ \161\000\161\000\255\255\161\000\161\000\161\000\161\000\161\000\
+ \161\000\161\000\161\000\161\000\161\000\161\000\161\000\161\000\
+ \161\000\161\000\161\000\161\000\161\000\161\000\161\000\161\000\
+ \161\000\161\000\161\000\161\000\161\000\161\000\161\000\161\000\
+ \161\000\161\000\255\255\161\000\161\000\161\000\161\000\161\000\
+ \161\000\161\000\161\000\162\000\255\255\255\255\162\000\162\000\
+ \162\000\255\255\255\255\255\255\162\000\162\000\255\255\162\000\
+ \162\000\162\000\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\162\000\255\255\162\000\162\000\
+ \162\000\162\000\162\000\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\163\000\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\255\255\162\000\163\000\
+ \162\000\255\255\255\255\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\163\000\162\000\255\255\
+ \162\000\255\255\163\000\255\255\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\163\000\255\255\255\255\
+ \255\255\255\255\255\255\255\255\164\000\164\000\164\000\164\000\
+ \164\000\164\000\164\000\164\000\164\000\164\000\164\000\164\000\
+ \164\000\164\000\164\000\164\000\164\000\164\000\164\000\164\000\
+ \164\000\164\000\164\000\164\000\164\000\164\000\255\255\255\255\
+ \255\255\255\255\164\000\255\255\164\000\164\000\164\000\164\000\
+ \164\000\164\000\164\000\164\000\164\000\164\000\164\000\164\000\
+ \164\000\164\000\164\000\164\000\164\000\164\000\164\000\164\000\
+ \164\000\164\000\164\000\164\000\164\000\164\000\255\255\255\255\
+ \255\255\255\255\255\255\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\255\255\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\255\255\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\164\000\164\000\164\000\164\000\164\000\
+ \164\000\164\000\164\000\164\000\164\000\164\000\164\000\164\000\
+ \164\000\164\000\164\000\164\000\164\000\164\000\164\000\164\000\
+ \164\000\164\000\255\255\164\000\164\000\164\000\164\000\164\000\
+ \164\000\164\000\164\000\164\000\164\000\164\000\164\000\164\000\
+ \164\000\164\000\164\000\164\000\164\000\164\000\164\000\164\000\
+ \164\000\164\000\164\000\164\000\164\000\164\000\164\000\164\000\
+ \164\000\164\000\165\000\164\000\164\000\164\000\164\000\164\000\
+ \164\000\164\000\164\000\165\000\165\000\165\000\165\000\165\000\
+ \165\000\165\000\165\000\165\000\165\000\255\255\255\255\165\000\
+ \255\255\255\255\255\255\255\255\165\000\165\000\165\000\165\000\
+ \165\000\165\000\165\000\165\000\165\000\165\000\165\000\165\000\
+ \165\000\165\000\165\000\165\000\165\000\165\000\165\000\165\000\
+ \165\000\165\000\165\000\165\000\165\000\165\000\255\255\255\255\
+ \255\255\255\255\165\000\255\255\165\000\165\000\165\000\165\000\
+ \165\000\165\000\165\000\165\000\165\000\165\000\165\000\165\000\
+ \165\000\165\000\165\000\165\000\165\000\165\000\165\000\165\000\
+ \165\000\165\000\165\000\165\000\165\000\165\000\255\255\255\255\
+ \255\255\255\255\255\255\255\255\171\000\171\000\171\000\171\000\
+ \171\000\171\000\171\000\171\000\171\000\171\000\171\000\171\000\
+ \171\000\171\000\171\000\171\000\171\000\171\000\171\000\171\000\
+ \171\000\171\000\171\000\171\000\171\000\171\000\255\255\255\255\
+ \255\255\255\255\171\000\255\255\171\000\171\000\171\000\171\000\
+ \171\000\171\000\171\000\171\000\171\000\171\000\171\000\171\000\
+ \171\000\171\000\171\000\171\000\171\000\171\000\171\000\171\000\
+ \171\000\171\000\171\000\171\000\171\000\171\000\255\255\255\255\
+ \255\255\255\255\255\255\165\000\165\000\165\000\165\000\165\000\
+ \165\000\165\000\165\000\165\000\165\000\165\000\165\000\165\000\
+ \165\000\165\000\165\000\165\000\165\000\165\000\165\000\165\000\
+ \165\000\165\000\255\255\165\000\165\000\165\000\165\000\165\000\
+ \165\000\165\000\165\000\165\000\165\000\165\000\165\000\165\000\
+ \165\000\165\000\165\000\165\000\165\000\165\000\165\000\165\000\
+ \165\000\165\000\165\000\165\000\165\000\165\000\165\000\165\000\
+ \165\000\165\000\255\255\165\000\165\000\165\000\165\000\165\000\
+ \165\000\165\000\165\000\171\000\171\000\171\000\171\000\171\000\
+ \171\000\171\000\171\000\171\000\171\000\171\000\171\000\171\000\
+ \171\000\171\000\171\000\171\000\171\000\171\000\171\000\171\000\
+ \171\000\171\000\255\255\171\000\171\000\171\000\171\000\171\000\
+ \171\000\171\000\171\000\171\000\171\000\171\000\171\000\171\000\
+ \171\000\171\000\171\000\171\000\171\000\171\000\171\000\171\000\
+ \171\000\171\000\171\000\171\000\171\000\171\000\171\000\171\000\
+ \171\000\171\000\255\255\171\000\171\000\171\000\171\000\171\000\
+ \171\000\171\000\171\000\172\000\172\000\172\000\172\000\172\000\
+ \172\000\172\000\172\000\172\000\172\000\172\000\172\000\172\000\
+ \172\000\172\000\172\000\172\000\172\000\172\000\172\000\172\000\
+ \172\000\172\000\172\000\172\000\172\000\255\255\255\255\255\255\
+ \255\255\172\000\255\255\172\000\172\000\172\000\172\000\172\000\
+ \172\000\172\000\172\000\172\000\172\000\172\000\172\000\172\000\
+ \172\000\172\000\172\000\172\000\172\000\172\000\172\000\172\000\
+ \172\000\172\000\172\000\172\000\172\000\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\143\000\143\000\143\000\143\000\
- \143\000\143\000\143\000\143\000\143\000\143\000\143\000\143\000\
- \143\000\143\000\143\000\143\000\143\000\143\000\143\000\143\000\
- \143\000\143\000\143\000\255\255\143\000\143\000\143\000\143\000\
- \143\000\143\000\143\000\143\000\143\000\143\000\143\000\143\000\
- \143\000\143\000\143\000\143\000\143\000\143\000\143\000\143\000\
- \143\000\143\000\143\000\143\000\143\000\143\000\143\000\143\000\
- \143\000\143\000\143\000\144\000\143\000\143\000\143\000\143\000\
- \143\000\143\000\143\000\143\000\144\000\144\000\144\000\144\000\
- \144\000\144\000\144\000\144\000\144\000\144\000\255\255\255\255\
- \144\000\255\255\255\255\255\255\255\255\144\000\144\000\144\000\
- \144\000\144\000\144\000\144\000\144\000\144\000\144\000\144\000\
- \144\000\144\000\144\000\144\000\144\000\144\000\144\000\144\000\
- \144\000\144\000\144\000\144\000\144\000\144\000\144\000\255\255\
- \255\255\255\255\255\255\144\000\255\255\144\000\144\000\144\000\
- \144\000\144\000\144\000\144\000\144\000\144\000\144\000\144\000\
- \144\000\144\000\144\000\144\000\144\000\144\000\144\000\144\000\
- \144\000\144\000\144\000\144\000\144\000\144\000\144\000\255\255\
+ \255\255\255\255\172\000\172\000\172\000\172\000\172\000\172\000\
+ \172\000\172\000\172\000\172\000\172\000\172\000\172\000\172\000\
+ \172\000\172\000\172\000\172\000\172\000\172\000\172\000\172\000\
+ \172\000\255\255\172\000\172\000\172\000\172\000\172\000\172\000\
+ \172\000\172\000\172\000\172\000\172\000\172\000\172\000\172\000\
+ \172\000\172\000\172\000\172\000\172\000\172\000\172\000\172\000\
+ \172\000\172\000\172\000\172\000\172\000\172\000\172\000\172\000\
+ \172\000\173\000\172\000\172\000\172\000\172\000\172\000\172\000\
+ \172\000\172\000\173\000\173\000\173\000\173\000\173\000\173\000\
+ \173\000\173\000\173\000\173\000\255\255\255\255\173\000\255\255\
+ \255\255\255\255\173\000\173\000\173\000\173\000\173\000\173\000\
+ \173\000\173\000\173\000\173\000\173\000\173\000\173\000\173\000\
+ \173\000\173\000\173\000\173\000\173\000\173\000\173\000\173\000\
+ \173\000\173\000\173\000\173\000\173\000\255\255\255\255\255\255\
+ \255\255\173\000\255\255\173\000\173\000\173\000\173\000\173\000\
+ \173\000\173\000\173\000\173\000\173\000\173\000\173\000\173\000\
+ \173\000\173\000\173\000\173\000\173\000\173\000\173\000\173\000\
+ \173\000\173\000\173\000\173\000\173\000\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\144\000\144\000\144\000\144\000\
- \144\000\144\000\144\000\144\000\144\000\144\000\144\000\144\000\
- \144\000\144\000\144\000\144\000\144\000\144\000\144\000\144\000\
- \144\000\144\000\144\000\255\255\144\000\144\000\144\000\144\000\
- \144\000\144\000\144\000\144\000\144\000\144\000\144\000\144\000\
- \144\000\144\000\144\000\144\000\144\000\144\000\144\000\144\000\
- \144\000\144\000\144\000\144\000\144\000\144\000\144\000\144\000\
- \144\000\144\000\144\000\255\255\144\000\144\000\144\000\144\000\
- \144\000\144\000\144\000\144\000\255\255";
- Lexing.lex_base_code =
- "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\010\000\036\000\000\000\012\000\000\000\000\000\
- \002\000\000\000\000\000\027\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\001\000\000\000\000\000\000\000\002\000\000\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\041\000\000\000\
- \249\000\000\000\000\000\039\000\000\000\000\000\000\000\000\000\
+ \255\255\255\255\173\000\173\000\173\000\173\000\173\000\173\000\
+ \173\000\173\000\173\000\173\000\173\000\173\000\173\000\173\000\
+ \173\000\173\000\173\000\173\000\173\000\173\000\173\000\173\000\
+ \173\000\255\255\173\000\173\000\173\000\173\000\173\000\173\000\
+ \173\000\173\000\173\000\173\000\173\000\173\000\173\000\173\000\
+ \173\000\173\000\173\000\173\000\173\000\173\000\173\000\173\000\
+ \173\000\173\000\173\000\173\000\173\000\173\000\173\000\173\000\
+ \173\000\174\000\173\000\173\000\173\000\173\000\173\000\173\000\
+ \173\000\173\000\174\000\174\000\174\000\174\000\174\000\174\000\
+ \174\000\174\000\174\000\174\000\255\255\255\255\174\000\255\255\
+ \255\255\255\255\255\255\174\000\174\000\174\000\174\000\174\000\
+ \174\000\174\000\174\000\174\000\174\000\174\000\174\000\174\000\
+ \174\000\174\000\174\000\174\000\174\000\174\000\174\000\174\000\
+ \174\000\174\000\174\000\174\000\174\000\255\255\255\255\255\255\
+ \255\255\174\000\255\255\174\000\174\000\174\000\174\000\174\000\
+ \174\000\174\000\174\000\174\000\174\000\174\000\174\000\174\000\
+ \174\000\174\000\174\000\174\000\174\000\174\000\174\000\174\000\
+ \174\000\174\000\174\000\174\000\174\000\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\174\000\174\000\174\000\174\000\174\000\174\000\
+ \174\000\174\000\174\000\174\000\174\000\174\000\174\000\174\000\
+ \174\000\174\000\174\000\174\000\174\000\174\000\174\000\174\000\
+ \174\000\255\255\174\000\174\000\174\000\174\000\174\000\174\000\
+ \174\000\174\000\174\000\174\000\174\000\174\000\174\000\174\000\
+ \174\000\174\000\174\000\174\000\174\000\174\000\174\000\174\000\
+ \174\000\174\000\174\000\174\000\174\000\174\000\174\000\174\000\
+ \174\000\255\255\174\000\174\000\174\000\174\000\174\000\174\000\
+ \174\000\174\000\175\000\255\255\255\255\175\000\255\255\255\255\
+ \255\255\255\255\255\255\255\255\175\000\255\255\175\000\175\000\
+ \175\000\175\000\175\000\175\000\175\000\175\000\175\000\175\000\
+ \175\000\255\255\255\255\255\255\255\255\255\255\255\255\175\000\
+ \175\000\175\000\175\000\175\000\175\000\175\000\175\000\175\000\
+ \175\000\175\000\175\000\175\000\175\000\175\000\175\000\175\000\
+ \175\000\175\000\175\000\175\000\175\000\175\000\175\000\175\000\
+ \175\000\255\255\255\255\255\255\255\255\175\000\175\000\175\000\
+ \175\000\175\000\175\000\175\000\175\000\175\000\175\000\175\000\
+ \175\000\175\000\175\000\175\000\175\000\175\000\175\000\175\000\
+ \175\000\175\000\175\000\175\000\175\000\175\000\175\000\175\000\
+ \175\000\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\175\000\175\000\
+ \175\000\175\000\175\000\175\000\175\000\175\000\175\000\175\000\
+ \175\000\175\000\175\000\175\000\175\000\175\000\175\000\175\000\
+ \175\000\175\000\175\000\175\000\175\000\255\255\175\000\175\000\
+ \175\000\175\000\175\000\175\000\175\000\175\000\175\000\175\000\
+ \175\000\175\000\175\000\175\000\175\000\175\000\175\000\175\000\
+ \175\000\175\000\175\000\175\000\175\000\175\000\175\000\175\000\
+ \175\000\175\000\175\000\175\000\175\000\255\255\175\000\175\000\
+ \175\000\175\000\175\000\175\000\175\000\175\000\175\000\177\000\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \177\000\177\000\177\000\177\000\177\000\177\000\177\000\177\000\
+ \177\000\177\000\177\000\255\255\255\255\255\255\255\255\255\255\
+ \255\255\177\000\177\000\177\000\177\000\177\000\177\000\177\000\
+ \177\000\177\000\177\000\177\000\177\000\177\000\177\000\177\000\
+ \177\000\177\000\177\000\177\000\177\000\177\000\177\000\177\000\
+ \177\000\177\000\177\000\255\255\255\255\255\255\255\255\177\000\
+ \255\255\177\000\177\000\177\000\177\000\177\000\177\000\177\000\
+ \177\000\177\000\177\000\177\000\177\000\177\000\177\000\177\000\
+ \177\000\177\000\177\000\177\000\177\000\177\000\177\000\177\000\
+ \177\000\177\000\177\000\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \177\000\177\000\177\000\177\000\177\000\177\000\177\000\177\000\
+ \177\000\177\000\177\000\177\000\177\000\177\000\177\000\177\000\
+ \177\000\177\000\177\000\177\000\177\000\177\000\177\000\255\255\
+ \177\000\177\000\177\000\177\000\177\000\177\000\177\000\177\000\
+ \177\000\177\000\177\000\177\000\177\000\177\000\177\000\177\000\
+ \177\000\177\000\177\000\177\000\177\000\177\000\177\000\177\000\
+ \177\000\177\000\177\000\177\000\177\000\177\000\177\000\255\255\
+ \177\000\177\000\177\000\177\000\177\000\177\000\177\000\177\000\
+ \178\000\255\255\255\255\255\255\255\255\255\255\255\255\178\000\
+ \255\255\178\000\178\000\178\000\178\000\178\000\178\000\178\000\
+ \178\000\178\000\178\000\178\000\255\255\255\255\255\255\255\255\
+ \255\255\255\255\178\000\178\000\178\000\178\000\178\000\178\000\
+ \178\000\178\000\178\000\178\000\178\000\178\000\178\000\178\000\
+ \178\000\178\000\178\000\178\000\178\000\178\000\178\000\178\000\
+ \178\000\178\000\178\000\178\000\255\255\255\255\255\255\255\255\
+ \178\000\255\255\178\000\178\000\178\000\178\000\178\000\178\000\
+ \178\000\178\000\178\000\178\000\178\000\178\000\178\000\178\000\
+ \178\000\178\000\178\000\178\000\178\000\178\000\178\000\178\000\
+ \178\000\178\000\178\000\178\000\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\178\000\178\000\178\000\178\000\178\000\178\000\178\000\
+ \178\000\178\000\178\000\178\000\178\000\178\000\178\000\178\000\
+ \178\000\178\000\178\000\178\000\178\000\178\000\178\000\178\000\
+ \255\255\178\000\178\000\178\000\178\000\178\000\178\000\178\000\
+ \178\000\178\000\178\000\178\000\178\000\178\000\178\000\178\000\
+ \178\000\178\000\178\000\178\000\178\000\178\000\178\000\178\000\
+ \178\000\178\000\178\000\178\000\178\000\178\000\178\000\178\000\
+ \180\000\178\000\178\000\178\000\178\000\178\000\178\000\178\000\
+ \178\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\180\000\255\255\255\255\255\255\255\255\
+ \255\255\255\255\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\180\000\255\255\255\255\255\255\255\255\
+ \180\000\255\255\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\180\000\255\255\255\255\255\255\255\255\
+ \255\255\255\255\184\000\184\000\184\000\184\000\184\000\184\000\
+ \184\000\184\000\184\000\184\000\184\000\184\000\184\000\184\000\
+ \184\000\184\000\184\000\184\000\184\000\184\000\184\000\184\000\
+ \184\000\184\000\184\000\184\000\255\255\255\255\255\255\255\255\
+ \184\000\255\255\184\000\184\000\184\000\184\000\184\000\184\000\
+ \184\000\184\000\184\000\184\000\184\000\184\000\184\000\184\000\
+ \184\000\184\000\184\000\184\000\184\000\184\000\184\000\184\000\
+ \184\000\184\000\184\000\184\000\255\255\255\255\255\255\255\255\
+ \255\255\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \255\255\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \255\255\180\000\180\000\180\000\180\000\180\000\180\000\180\000\
+ \180\000\184\000\184\000\184\000\184\000\184\000\184\000\184\000\
+ \184\000\184\000\184\000\184\000\184\000\184\000\184\000\184\000\
+ \184\000\184\000\184\000\184\000\184\000\184\000\184\000\184\000\
+ \255\255\184\000\184\000\184\000\184\000\184\000\184\000\184\000\
+ \184\000\184\000\184\000\184\000\184\000\184\000\184\000\184\000\
+ \184\000\184\000\184\000\184\000\184\000\184\000\184\000\184\000\
+ \184\000\184\000\184\000\184\000\184\000\184\000\184\000\184\000\
+ \255\255\184\000\184\000\184\000\184\000\184\000\184\000\184\000\
+ \184\000\185\000\185\000\185\000\185\000\185\000\185\000\185\000\
+ \185\000\185\000\185\000\185\000\185\000\185\000\185\000\185\000\
+ \185\000\185\000\185\000\185\000\185\000\185\000\185\000\185\000\
+ \185\000\185\000\185\000\255\255\255\255\255\255\255\255\185\000\
+ \255\255\185\000\185\000\185\000\185\000\185\000\185\000\185\000\
+ \185\000\185\000\185\000\185\000\185\000\185\000\185\000\185\000\
+ \185\000\185\000\185\000\185\000\185\000\185\000\185\000\185\000\
+ \185\000\185\000\185\000\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \185\000\185\000\185\000\185\000\185\000\185\000\185\000\185\000\
+ \185\000\185\000\185\000\185\000\185\000\185\000\185\000\185\000\
+ \185\000\185\000\185\000\185\000\185\000\185\000\185\000\255\255\
+ \185\000\185\000\185\000\185\000\185\000\185\000\185\000\185\000\
+ \185\000\185\000\185\000\185\000\185\000\185\000\185\000\185\000\
+ \185\000\185\000\185\000\185\000\185\000\185\000\185\000\185\000\
+ \185\000\185\000\185\000\185\000\185\000\185\000\185\000\186\000\
+ \185\000\185\000\185\000\185\000\185\000\185\000\185\000\185\000\
+ \186\000\186\000\186\000\186\000\186\000\186\000\186\000\186\000\
+ \186\000\186\000\255\255\255\255\186\000\255\255\255\255\255\255\
+ \186\000\186\000\186\000\186\000\186\000\186\000\186\000\186\000\
+ \186\000\186\000\186\000\186\000\186\000\186\000\186\000\186\000\
+ \186\000\186\000\186\000\186\000\186\000\186\000\186\000\186\000\
+ \186\000\186\000\186\000\255\255\255\255\255\255\255\255\186\000\
+ \255\255\186\000\186\000\186\000\186\000\186\000\186\000\186\000\
+ \186\000\186\000\186\000\186\000\186\000\186\000\186\000\186\000\
+ \186\000\186\000\186\000\186\000\186\000\186\000\186\000\186\000\
+ \186\000\186\000\186\000\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \186\000\186\000\186\000\186\000\186\000\186\000\186\000\186\000\
+ \186\000\186\000\186\000\186\000\186\000\186\000\186\000\186\000\
+ \186\000\186\000\186\000\186\000\186\000\186\000\186\000\255\255\
+ \186\000\186\000\186\000\186\000\186\000\186\000\186\000\186\000\
+ \186\000\186\000\186\000\186\000\186\000\186\000\186\000\186\000\
+ \186\000\186\000\186\000\186\000\186\000\186\000\186\000\186\000\
+ \186\000\186\000\186\000\186\000\186\000\186\000\186\000\187\000\
+ \186\000\186\000\186\000\186\000\186\000\186\000\186\000\186\000\
+ \187\000\187\000\187\000\187\000\187\000\187\000\187\000\187\000\
+ \187\000\187\000\255\255\255\255\187\000\255\255\255\255\255\255\
+ \255\255\187\000\187\000\187\000\187\000\187\000\187\000\187\000\
+ \187\000\187\000\187\000\187\000\187\000\187\000\187\000\187\000\
+ \187\000\187\000\187\000\187\000\187\000\187\000\187\000\187\000\
+ \187\000\187\000\187\000\255\255\255\255\255\255\255\255\187\000\
+ \255\255\187\000\187\000\187\000\187\000\187\000\187\000\187\000\
+ \187\000\187\000\187\000\187\000\187\000\187\000\187\000\187\000\
+ \187\000\187\000\187\000\187\000\187\000\187\000\187\000\187\000\
+ \187\000\187\000\187\000\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
+ \187\000\187\000\187\000\187\000\187\000\187\000\187\000\187\000\
+ \187\000\187\000\187\000\187\000\187\000\187\000\187\000\187\000\
+ \187\000\187\000\187\000\187\000\187\000\187\000\187\000\255\255\
+ \187\000\187\000\187\000\187\000\187\000\187\000\187\000\187\000\
+ \187\000\187\000\187\000\187\000\187\000\187\000\187\000\187\000\
+ \187\000\187\000\187\000\187\000\187\000\187\000\187\000\187\000\
+ \187\000\187\000\187\000\187\000\187\000\187\000\187\000\255\255\
+ \187\000\187\000\187\000\187\000\187\000\187\000\187\000\187\000\
+ \255\255";
+ Lexing.lex_base_code =
+ "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\027\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000";
+ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\066\000\101\000\136\000\
+ \171\000\206\000\000\000\000\000\000\000\000\000\241\000\020\001\
+ \055\001\000\000\000\000\018\000\090\001\125\001\160\001\195\001\
+ \230\001\000\000\021\000\026\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\247\001\
+ \040\002\000\000\034\000\000\000\000\000\003\000\000\000\000\000\
+ \049\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\
+ \000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\036\002\000\000\244\002\000\000\000\000\061\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000";
Lexing.lex_backtrk_code =
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\012\000\000\000\000\000\000\000\
- \000\000\000\000\027\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\039\000\039\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\034\000\000\000\000\000\000\000\000\000\000\000\049\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000";
+ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\061\000\061\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000";
Lexing.lex_default_code =
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\000\000\019\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\041\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000";
+ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000";
Lexing.lex_trans_code =
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\001\000\000\000\036\000\036\000\000\000\036\000\000\000\
+ \000\000\001\000\000\000\058\000\058\000\000\000\058\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \001\000\000\000\000\000\001\000\022\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\007\000\001\000\000\000\000\000\
+ \001\000\000\000\000\000\001\000\007\000\044\000\000\000\007\000\
+ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\004\000\004\000\004\000\004\000\004\000\004\000\004\000\004\000\
+ \004\000\004\000\000\000\007\000\012\000\000\000\000\000\012\000\
+ \012\000\012\000\000\000\000\000\000\000\000\000\012\000\000\000\
+ \012\000\012\000\012\000\007\000\000\000\000\000\007\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\012\000\000\000\012\000\
+ \012\000\012\000\012\000\012\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\007\000\015\000\000\000\000\000\015\000\015\000\
+ \015\000\000\000\000\000\000\000\015\000\015\000\000\000\015\000\
+ \015\000\015\000\000\000\000\000\000\000\000\000\000\000\012\000\
+ \000\000\012\000\000\000\000\000\015\000\000\000\015\000\015\000\
+ \015\000\015\000\015\000\000\000\000\000\000\000\012\000\000\000\
+ \000\000\012\000\012\000\012\000\000\000\000\000\000\000\012\000\
+ \012\000\000\000\012\000\012\000\012\000\000\000\000\000\012\000\
+ \000\000\012\000\000\000\000\000\000\000\000\000\015\000\012\000\
+ \015\000\012\000\012\000\012\000\012\000\012\000\000\000\000\000\
+ \000\000\012\000\000\000\000\000\012\000\012\000\012\000\000\000\
+ \000\000\000\000\012\000\012\000\000\000\012\000\012\000\012\000\
+ \000\000\000\000\000\000\000\000\000\000\000\000\015\000\000\000\
+ \015\000\012\000\012\000\012\000\012\000\012\000\012\000\012\000\
+ \012\000\000\000\000\000\000\000\012\000\000\000\000\000\012\000\
+ \012\000\012\000\000\000\000\000\000\000\012\000\012\000\000\000\
+ \012\000\012\000\012\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\012\000\000\000\012\000\012\000\012\000\012\000\012\000\
+ \012\000\012\000\012\000\012\000\000\000\000\000\000\000\012\000\
+ \000\000\000\000\012\000\012\000\012\000\000\000\000\000\000\000\
+ \012\000\012\000\000\000\012\000\012\000\012\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\012\000\000\000\012\000\012\000\
+ \012\000\012\000\012\000\012\000\012\000\012\000\012\000\000\000\
+ \000\000\000\000\012\000\000\000\000\000\012\000\012\000\012\000\
+ \000\000\000\000\000\000\012\000\012\000\000\000\012\000\012\000\
+ \012\000\000\000\000\000\000\000\000\000\000\000\000\000\012\000\
+ \000\000\012\000\012\000\012\000\012\000\012\000\012\000\012\000\
+ \012\000\012\000\000\000\000\000\000\000\012\000\000\000\000\000\
+ \012\000\012\000\012\000\000\000\000\000\000\000\012\000\012\000\
+ \000\000\012\000\012\000\012\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\012\000\000\000\012\000\012\000\012\000\012\000\
+ \012\000\012\000\012\000\012\000\012\000\000\000\000\000\000\000\
+ \012\000\000\000\000\000\012\000\012\000\012\000\000\000\000\000\
+ \000\000\012\000\012\000\000\000\012\000\012\000\012\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\012\000\000\000\012\000\
+ \012\000\012\000\012\000\012\000\012\000\012\000\012\000\012\000\
+ \000\000\000\000\000\000\012\000\000\000\000\000\012\000\012\000\
+ \012\000\000\000\000\000\000\000\012\000\012\000\000\000\012\000\
+ \012\000\012\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \012\000\000\000\012\000\012\000\012\000\012\000\012\000\012\000\
+ \012\000\012\000\012\000\000\000\000\000\000\000\012\000\000\000\
+ \000\000\012\000\012\000\012\000\000\000\000\000\000\000\012\000\
+ \012\000\000\000\012\000\012\000\012\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\012\000\000\000\012\000\012\000\012\000\
+ \012\000\012\000\012\000\012\000\012\000\012\000\000\000\000\000\
+ \000\000\012\000\000\000\000\000\012\000\012\000\012\000\000\000\
+ \000\000\000\000\012\000\012\000\000\000\012\000\012\000\012\000\
+ \000\000\000\000\000\000\000\000\000\000\000\000\012\000\000\000\
+ \012\000\012\000\012\000\012\000\012\000\012\000\012\000\012\000\
+ \012\000\000\000\000\000\000\000\015\000\000\000\000\000\015\000\
+ \015\000\015\000\000\000\000\000\000\000\015\000\015\000\000\000\
+ \015\000\015\000\015\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\012\000\000\000\012\000\012\000\015\000\012\000\015\000\
+ \015\000\015\000\015\000\015\000\000\000\000\000\000\000\015\000\
+ \000\000\000\000\015\000\015\000\015\000\000\000\000\000\000\000\
+ \015\000\015\000\000\000\015\000\015\000\015\000\000\000\000\000\
+ \000\000\029\000\000\000\000\000\012\000\000\000\012\000\015\000\
+ \015\000\015\000\015\000\015\000\015\000\015\000\015\000\004\000\
\004\000\004\000\004\000\004\000\004\000\004\000\004\000\004\000\
- \004\000\004\000\004\000\004\000\001\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\000\000\000\000\004\000\004\000\004\000\004\000\
- \004\000\004\000\004\000\004\000\004\000\004\000\000\000\000\000\
+ \004\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\000\
+ \000\000\015\000\015\000\000\000\015\000\000\000\000\000\000\000\
+ \001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\036\000\036\000\036\000\036\000\036\000\036\000\
- \036\000\036\000\036\000\036\000\036\000\036\000\036\000\036\000\
- \036\000\036\000\036\000\036\000\036\000\036\000\036\000\036\000\
- \036\000\036\000\036\000\036\000\000\000\000\000\000\000\000\000\
- \036\000\000\000\036\000\036\000\036\000\036\000\036\000\036\000\
- \036\000\036\000\036\000\036\000\036\000\036\000\036\000\036\000\
- \036\000\036\000\036\000\036\000\036\000\036\000\036\000\036\000\
- \036\000\036\000\036\000\036\000\000\000\000\000\000\000\000\000\
+ \004\000\004\000\004\000\004\000\004\000\004\000\004\000\004\000\
+ \004\000\004\000\015\000\000\000\015\000\058\000\058\000\058\000\
+ \058\000\058\000\058\000\058\000\058\000\058\000\058\000\058\000\
+ \058\000\058\000\058\000\058\000\058\000\058\000\058\000\058\000\
+ \058\000\058\000\058\000\058\000\058\000\058\000\058\000\000\000\
+ \000\000\000\000\000\000\058\000\000\000\058\000\058\000\058\000\
+ \058\000\058\000\058\000\058\000\058\000\058\000\058\000\058\000\
+ \058\000\058\000\058\000\058\000\058\000\058\000\058\000\058\000\
+ \058\000\058\000\058\000\058\000\058\000\058\000\058\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\036\000\036\000\036\000\036\000\036\000\036\000\036\000\
- \036\000\036\000\036\000\036\000\036\000\036\000\036\000\036\000\
- \036\000\036\000\036\000\036\000\036\000\036\000\036\000\036\000\
- \000\000\036\000\036\000\036\000\036\000\036\000\036\000\036\000\
- \036\000\036\000\036\000\036\000\036\000\036\000\036\000\036\000\
- \036\000\036\000\036\000\036\000\036\000\036\000\036\000\036\000\
- \036\000\036\000\036\000\036\000\036\000\036\000\036\000\036\000\
- \036\000\036\000\036\000\036\000\036\000\036\000\036\000\036\000\
- \036\000\036\000\036\000\036\000\036\000\036\000\036\000\036\000\
- \036\000\036\000\036\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\000\000\036\000\036\000\036\000\036\000\036\000\036\000\
- \036\000\036\000\036\000\036\000\036\000\036\000\036\000\036\000\
- \036\000\036\000\036\000\036\000\036\000\036\000\036\000\036\000\
- \036\000\036\000\036\000\036\000\000\000\000\000\000\000\000\000\
- \036\000\000\000\036\000\036\000\036\000\036\000\036\000\036\000\
- \036\000\036\000\036\000\036\000\036\000\036\000\036\000\036\000\
- \036\000\036\000\036\000\036\000\036\000\036\000\036\000\036\000\
- \036\000\036\000\036\000\036\000\000\000\000\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\058\000\058\000\058\000\058\000\
+ \058\000\058\000\058\000\058\000\058\000\058\000\058\000\058\000\
+ \058\000\058\000\058\000\058\000\058\000\058\000\058\000\058\000\
+ \058\000\058\000\058\000\000\000\058\000\058\000\058\000\058\000\
+ \058\000\058\000\058\000\058\000\058\000\058\000\058\000\058\000\
+ \058\000\058\000\058\000\058\000\058\000\058\000\058\000\058\000\
+ \058\000\058\000\058\000\058\000\058\000\058\000\058\000\058\000\
+ \058\000\058\000\058\000\058\000\058\000\058\000\058\000\058\000\
+ \058\000\058\000\058\000\058\000\058\000\058\000\058\000\058\000\
+ \058\000\058\000\058\000\058\000\058\000\058\000\000\000\000\000\
+ \000\000\000\000\000\000\000\000\000\000\058\000\058\000\058\000\
+ \058\000\058\000\058\000\058\000\058\000\058\000\058\000\058\000\
+ \058\000\058\000\058\000\058\000\058\000\058\000\058\000\058\000\
+ \058\000\058\000\058\000\058\000\058\000\058\000\058\000\000\000\
+ \000\000\000\000\000\000\058\000\000\000\058\000\058\000\058\000\
+ \058\000\058\000\058\000\058\000\058\000\058\000\058\000\058\000\
+ \058\000\058\000\058\000\058\000\058\000\058\000\058\000\058\000\
+ \058\000\058\000\058\000\058\000\058\000\058\000\058\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
- \000\000\036\000\036\000\036\000\036\000\036\000\036\000\036\000\
- \036\000\036\000\036\000\036\000\036\000\036\000\036\000\036\000\
- \036\000\036\000\036\000\036\000\036\000\036\000\036\000\036\000\
- \000\000\036\000\036\000\036\000\036\000\036\000\036\000\036\000\
- \036\000\036\000\036\000\036\000\036\000\036\000\036\000\036\000\
- \036\000\036\000\036\000\036\000\036\000\036\000\036\000\036\000\
- \036\000\036\000\036\000\036\000\036\000\036\000\036\000\036\000\
- \000\000\036\000\036\000\036\000\036\000\036\000\036\000\036\000\
- \036\000\000\000";
+ \000\000\000\000\000\000\000\000\058\000\058\000\058\000\058\000\
+ \058\000\058\000\058\000\058\000\058\000\058\000\058\000\058\000\
+ \058\000\058\000\058\000\058\000\058\000\058\000\058\000\058\000\
+ \058\000\058\000\058\000\000\000\058\000\058\000\058\000\058\000\
+ \058\000\058\000\058\000\058\000\058\000\058\000\058\000\058\000\
+ \058\000\058\000\058\000\058\000\058\000\058\000\058\000\058\000\
+ \058\000\058\000\058\000\058\000\058\000\058\000\058\000\058\000\
+ \058\000\058\000\058\000\000\000\058\000\058\000\058\000\058\000\
+ \058\000\058\000\058\000\058\000\000\000";
Lexing.lex_check_code =
"\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\014\000\071\000\106\000\110\000\071\000\106\000\255\255\
+ \255\255\016\000\100\000\149\000\153\000\100\000\149\000\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \014\000\255\255\071\000\000\000\072\000\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\066\000\067\000\255\255\255\255\
- \014\000\014\000\014\000\014\000\014\000\014\000\014\000\014\000\
- \014\000\014\000\066\000\066\000\066\000\066\000\066\000\066\000\
- \066\000\066\000\066\000\066\000\067\000\255\255\255\255\255\255\
+ \016\000\255\255\100\000\000\000\019\000\101\000\255\255\019\000\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\255\255\255\255\067\000\067\000\067\000\067\000\
- \067\000\067\000\067\000\067\000\067\000\067\000\255\255\255\255\
+ \016\000\016\000\016\000\016\000\016\000\016\000\016\000\016\000\
+ \016\000\016\000\255\255\019\000\019\000\255\255\255\255\019\000\
+ \019\000\019\000\255\255\255\255\255\255\255\255\019\000\255\255\
+ \019\000\019\000\019\000\061\000\255\255\255\255\061\000\255\255\
+ \255\255\255\255\255\255\255\255\255\255\019\000\255\255\019\000\
+ \019\000\019\000\019\000\019\000\255\255\255\255\255\255\255\255\
+ \255\255\255\255\061\000\061\000\255\255\255\255\061\000\061\000\
+ \061\000\255\255\255\255\255\255\061\000\061\000\255\255\061\000\
+ \061\000\061\000\255\255\255\255\255\255\255\255\255\255\019\000\
+ \255\255\019\000\255\255\255\255\061\000\255\255\061\000\061\000\
+ \061\000\061\000\061\000\255\255\255\255\255\255\062\000\255\255\
+ \255\255\062\000\062\000\062\000\255\255\255\255\255\255\062\000\
+ \062\000\255\255\062\000\062\000\062\000\255\255\255\255\019\000\
+ \255\255\019\000\255\255\255\255\255\255\255\255\061\000\062\000\
+ \061\000\062\000\062\000\062\000\062\000\062\000\255\255\255\255\
+ \255\255\063\000\255\255\255\255\063\000\063\000\063\000\255\255\
+ \255\255\255\255\063\000\063\000\255\255\063\000\063\000\063\000\
+ \255\255\255\255\255\255\255\255\255\255\255\255\061\000\255\255\
+ \061\000\062\000\063\000\062\000\063\000\063\000\063\000\063\000\
+ \063\000\255\255\255\255\255\255\064\000\255\255\255\255\064\000\
+ \064\000\064\000\255\255\255\255\255\255\064\000\064\000\255\255\
+ \064\000\064\000\064\000\255\255\255\255\255\255\255\255\255\255\
+ \255\255\062\000\255\255\062\000\063\000\064\000\063\000\064\000\
+ \064\000\064\000\064\000\064\000\255\255\255\255\255\255\065\000\
+ \255\255\255\255\065\000\065\000\065\000\255\255\255\255\255\255\
+ \065\000\065\000\255\255\065\000\065\000\065\000\255\255\255\255\
+ \100\000\255\255\255\255\255\255\063\000\255\255\063\000\064\000\
+ \065\000\064\000\065\000\065\000\065\000\065\000\065\000\255\255\
+ \255\255\255\255\070\000\255\255\255\255\070\000\070\000\070\000\
+ \255\255\255\255\255\255\070\000\070\000\255\255\070\000\070\000\
+ \070\000\255\255\255\255\255\255\255\255\255\255\255\255\064\000\
+ \255\255\064\000\065\000\070\000\065\000\070\000\070\000\070\000\
+ \070\000\070\000\255\255\255\255\255\255\071\000\255\255\255\255\
+ \071\000\071\000\071\000\255\255\255\255\255\255\071\000\071\000\
+ \255\255\071\000\071\000\071\000\255\255\255\255\255\255\255\255\
+ \255\255\255\255\065\000\255\255\065\000\070\000\071\000\070\000\
+ \071\000\071\000\071\000\071\000\071\000\255\255\255\255\255\255\
+ \072\000\255\255\255\255\072\000\072\000\072\000\255\255\255\255\
+ \255\255\072\000\072\000\255\255\072\000\072\000\072\000\255\255\
+ \255\255\255\255\255\255\255\255\255\255\070\000\255\255\070\000\
+ \071\000\072\000\071\000\072\000\072\000\072\000\072\000\072\000\
+ \255\255\255\255\255\255\076\000\255\255\255\255\076\000\076\000\
+ \076\000\255\255\255\255\255\255\076\000\076\000\255\255\076\000\
+ \076\000\076\000\255\255\255\255\255\255\255\255\255\255\255\255\
+ \071\000\255\255\071\000\072\000\076\000\072\000\076\000\076\000\
+ \076\000\076\000\076\000\255\255\255\255\255\255\077\000\255\255\
+ \255\255\077\000\077\000\077\000\255\255\255\255\255\255\077\000\
+ \077\000\255\255\077\000\077\000\077\000\255\255\255\255\255\255\
+ \255\255\255\255\255\255\072\000\255\255\072\000\076\000\077\000\
+ \076\000\077\000\077\000\077\000\077\000\077\000\255\255\255\255\
+ \255\255\078\000\255\255\255\255\078\000\078\000\078\000\255\255\
+ \255\255\255\255\078\000\078\000\255\255\078\000\078\000\078\000\
+ \255\255\255\255\255\255\255\255\255\255\255\255\076\000\255\255\
+ \076\000\077\000\078\000\077\000\078\000\078\000\078\000\078\000\
+ \078\000\255\255\255\255\255\255\079\000\255\255\255\255\079\000\
+ \079\000\079\000\255\255\255\255\255\255\079\000\079\000\255\255\
+ \079\000\079\000\079\000\255\255\255\255\255\255\255\255\255\255\
+ \255\255\077\000\255\255\077\000\078\000\079\000\078\000\079\000\
+ \079\000\079\000\079\000\079\000\255\255\255\255\255\255\080\000\
+ \255\255\255\255\080\000\080\000\080\000\255\255\255\255\255\255\
+ \080\000\080\000\255\255\080\000\080\000\080\000\255\255\255\255\
+ \255\255\095\000\255\255\255\255\078\000\255\255\078\000\079\000\
+ \080\000\079\000\080\000\080\000\080\000\080\000\080\000\095\000\
+ \095\000\095\000\095\000\095\000\095\000\095\000\095\000\095\000\
+ \095\000\096\000\255\255\255\255\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\079\000\
+ \255\255\079\000\080\000\255\255\080\000\255\255\255\255\255\255\
+ \096\000\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\118\000\118\000\118\000\118\000\118\000\118\000\
- \118\000\118\000\118\000\118\000\118\000\118\000\118\000\118\000\
- \118\000\118\000\118\000\118\000\118\000\118\000\118\000\118\000\
- \118\000\118\000\118\000\118\000\255\255\255\255\255\255\255\255\
- \118\000\255\255\118\000\118\000\118\000\118\000\118\000\118\000\
- \118\000\118\000\118\000\118\000\118\000\118\000\118\000\118\000\
- \118\000\118\000\118\000\118\000\118\000\118\000\118\000\118\000\
- \118\000\118\000\118\000\118\000\255\255\255\255\255\255\255\255\
+ \096\000\096\000\096\000\096\000\096\000\096\000\096\000\096\000\
+ \096\000\096\000\080\000\255\255\080\000\161\000\161\000\161\000\
+ \161\000\161\000\161\000\161\000\161\000\161\000\161\000\161\000\
+ \161\000\161\000\161\000\161\000\161\000\161\000\161\000\161\000\
+ \161\000\161\000\161\000\161\000\161\000\161\000\161\000\255\255\
+ \255\255\255\255\255\255\161\000\255\255\161\000\161\000\161\000\
+ \161\000\161\000\161\000\161\000\161\000\161\000\161\000\161\000\
+ \161\000\161\000\161\000\161\000\161\000\161\000\161\000\161\000\
+ \161\000\161\000\161\000\161\000\161\000\161\000\161\000\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\118\000\118\000\118\000\118\000\118\000\118\000\118\000\
- \118\000\118\000\118\000\118\000\118\000\118\000\118\000\118\000\
- \118\000\118\000\118\000\118\000\118\000\118\000\118\000\118\000\
- \071\000\118\000\118\000\118\000\118\000\118\000\118\000\118\000\
- \118\000\118\000\118\000\118\000\118\000\118\000\118\000\118\000\
- \118\000\118\000\118\000\118\000\118\000\118\000\118\000\118\000\
- \118\000\118\000\118\000\118\000\118\000\118\000\118\000\118\000\
- \120\000\118\000\118\000\118\000\118\000\118\000\118\000\118\000\
- \118\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
- \120\000\120\000\120\000\255\255\255\255\255\255\255\255\255\255\
- \255\255\255\255\120\000\120\000\120\000\120\000\120\000\120\000\
- \120\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
- \120\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
- \120\000\120\000\120\000\120\000\255\255\255\255\255\255\255\255\
- \120\000\255\255\120\000\120\000\120\000\120\000\120\000\120\000\
- \120\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
- \120\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
- \120\000\120\000\120\000\120\000\255\255\255\255\255\255\255\255\
+ \255\255\255\255\255\255\255\255\161\000\161\000\161\000\161\000\
+ \161\000\161\000\161\000\161\000\161\000\161\000\161\000\161\000\
+ \161\000\161\000\161\000\161\000\161\000\161\000\161\000\161\000\
+ \161\000\161\000\161\000\255\255\161\000\161\000\161\000\161\000\
+ \161\000\161\000\161\000\161\000\161\000\161\000\161\000\161\000\
+ \161\000\161\000\161\000\161\000\161\000\161\000\161\000\161\000\
+ \161\000\161\000\161\000\161\000\161\000\161\000\161\000\161\000\
+ \161\000\161\000\161\000\163\000\161\000\161\000\161\000\161\000\
+ \161\000\161\000\161\000\161\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\163\000\255\255\255\255\
+ \255\255\255\255\255\255\255\255\255\255\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\163\000\163\000\255\255\
+ \255\255\255\255\255\255\163\000\255\255\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\163\000\163\000\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\
- \255\255\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
- \120\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
- \120\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
- \255\255\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
- \120\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
- \120\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
- \120\000\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
- \255\255\120\000\120\000\120\000\120\000\120\000\120\000\120\000\
- \120\000\255\255";
+ \255\255\255\255\255\255\255\255\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\255\255\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\255\255\163\000\163\000\163\000\163\000\
+ \163\000\163\000\163\000\163\000\255\255";
Lexing.lex_code =
- "\255\004\255\255\005\255\255\007\255\006\255\255\003\255\000\004\
- \001\005\255\007\255\255\006\255\007\255\255\000\004\001\005\003\
- \006\002\007\255\001\255\255\000\001\255";
+ "\255\004\255\255\009\255\255\006\255\005\255\255\007\255\255\008\
+ \255\255\000\007\255\000\006\001\008\255\000\005\255\011\255\010\
+ \255\255\003\255\000\004\001\009\255\011\255\255\010\255\011\255\
+ \255\000\004\001\009\003\010\002\011\255\001\255\255\000\001\255\
+ ";
}
let rec token c lexbuf =
- (lexbuf.Lexing.lex_mem <- Array.create 8 (-1);
+ (lexbuf.Lexing.lex_mem <- Array.create 12 (-1);
__ocaml_lex_token_rec c lexbuf 0)
and __ocaml_lex_token_rec c lexbuf __ocaml_lex_state =
match Lexing.new_engine __ocaml_lex_tables __ocaml_lex_state
then
QUOTATION
{
-
q_name = "";
q_loc = "";
q_shift = 2;
(update_loc c name inum true 0;
LINE_DIRECTIVE (inum, name))
| 23 ->
+ let op =
+ Lexing.sub_lexeme_char lexbuf
+ (lexbuf.Lexing.lex_start_pos + 1)
+ in ESCAPED_IDENT (String.make 1 op)
+ | 24 ->
+ let op =
+ Lexing.sub_lexeme lexbuf
+ (lexbuf.Lexing.lex_start_pos + 1)
+ (lexbuf.Lexing.lex_curr_pos + (-1))
+ in ESCAPED_IDENT op
+ | 25 ->
+ let op =
+ Lexing.sub_lexeme lexbuf
+ (lexbuf.Lexing.lex_start_pos + 1)
+ lexbuf.Lexing.lex_mem.(0)
+ in ESCAPED_IDENT op
+ | 26 ->
+ let op =
+ Lexing.sub_lexeme lexbuf lexbuf.Lexing.lex_mem.(0)
+ (lexbuf.Lexing.lex_curr_pos + (-1))
+ in ESCAPED_IDENT op
+ | 27 ->
+ let op =
+ Lexing.sub_lexeme lexbuf lexbuf.Lexing.lex_mem.(0)
+ lexbuf.Lexing.lex_mem.(1)
+ in ESCAPED_IDENT op
+ | 28 ->
let x =
Lexing.sub_lexeme lexbuf lexbuf.Lexing.lex_start_pos
lexbuf.Lexing.lex_curr_pos
in SYMBOL x
- | 24 ->
- if quotations c
+ | 29 ->
+ if antiquots c
then with_curr_loc dollar (shift 1 c)
else parse (symbolchar_star "$") c
- | 25 ->
+ | 30 ->
let x =
Lexing.sub_lexeme lexbuf lexbuf.Lexing.lex_start_pos
lexbuf.Lexing.lex_curr_pos
in SYMBOL x
- | 26 ->
- let x =
- Lexing.sub_lexeme lexbuf
- (lexbuf.Lexing.lex_start_pos + 1)
- lexbuf.Lexing.lex_curr_pos
- in ESCAPED_IDENT x
- | 27 ->
+ | 31 ->
let pos = lexbuf.lex_curr_p
in
(lexbuf.lex_curr_p <-
{
(pos)
with
-
pos_bol = pos.pos_bol + 1;
pos_cnum = pos.pos_cnum + 1;
};
EOI)
- | 28 ->
+ | 32 ->
let c =
Lexing.sub_lexeme_char lexbuf lexbuf.Lexing.lex_start_pos
in err (Illegal_character c) (Loc.of_lexbuf lexbuf)
| __ocaml_lex_state ->
(lexbuf.Lexing.refill_buff lexbuf;
__ocaml_lex_token_rec c lexbuf __ocaml_lex_state)
- and comment c lexbuf = __ocaml_lex_comment_rec c lexbuf 77
+ and comment c lexbuf = __ocaml_lex_comment_rec c lexbuf 120
and __ocaml_lex_comment_rec c lexbuf __ocaml_lex_state =
match Lexing.engine __ocaml_lex_tables __ocaml_lex_state lexbuf
with
__ocaml_lex_comment_rec c lexbuf __ocaml_lex_state)
and string c lexbuf =
(lexbuf.Lexing.lex_mem <- Array.create 2 (-1);
- __ocaml_lex_string_rec c lexbuf 104)
+ __ocaml_lex_string_rec c lexbuf 147)
and __ocaml_lex_string_rec c lexbuf __ocaml_lex_state =
match Lexing.new_engine __ocaml_lex_tables __ocaml_lex_state
lexbuf
(lexbuf.Lexing.refill_buff lexbuf;
__ocaml_lex_string_rec c lexbuf __ocaml_lex_state)
and symbolchar_star beginning c lexbuf =
- __ocaml_lex_symbolchar_star_rec beginning c lexbuf 114
+ __ocaml_lex_symbolchar_star_rec beginning c lexbuf 157
and
__ocaml_lex_symbolchar_star_rec beginning c lexbuf
__ocaml_lex_state =
__ocaml_lex_symbolchar_star_rec beginning c lexbuf
__ocaml_lex_state)
and maybe_quotation_at c lexbuf =
- __ocaml_lex_maybe_quotation_at_rec c lexbuf 115
+ __ocaml_lex_maybe_quotation_at_rec c lexbuf 158
and
__ocaml_lex_maybe_quotation_at_rec c lexbuf __ocaml_lex_state =
match Lexing.engine __ocaml_lex_tables __ocaml_lex_state lexbuf
__ocaml_lex_state)
and maybe_quotation_colon c lexbuf =
(lexbuf.Lexing.lex_mem <- Array.create 2 (-1);
- __ocaml_lex_maybe_quotation_colon_rec c lexbuf 118)
+ __ocaml_lex_maybe_quotation_colon_rec c lexbuf 161)
and
__ocaml_lex_maybe_quotation_colon_rec c lexbuf
__ocaml_lex_state =
(lexbuf.Lexing.refill_buff lexbuf;
__ocaml_lex_maybe_quotation_colon_rec c lexbuf
__ocaml_lex_state)
- and quotation c lexbuf = __ocaml_lex_quotation_rec c lexbuf 124
+ and quotation c lexbuf = __ocaml_lex_quotation_rec c lexbuf 167
and __ocaml_lex_quotation_rec c lexbuf __ocaml_lex_state =
match Lexing.engine __ocaml_lex_tables __ocaml_lex_state lexbuf
with
| __ocaml_lex_state ->
(lexbuf.Lexing.refill_buff lexbuf;
__ocaml_lex_quotation_rec c lexbuf __ocaml_lex_state)
- and dollar c lexbuf = __ocaml_lex_dollar_rec c lexbuf 132
+ and dollar c lexbuf = __ocaml_lex_dollar_rec c lexbuf 175
and __ocaml_lex_dollar_rec c lexbuf __ocaml_lex_state =
match Lexing.engine __ocaml_lex_tables __ocaml_lex_state lexbuf
with
(lexbuf.Lexing.refill_buff lexbuf;
__ocaml_lex_dollar_rec c lexbuf __ocaml_lex_state)
and antiquot name c lexbuf =
- __ocaml_lex_antiquot_rec name c lexbuf 138
+ __ocaml_lex_antiquot_rec name c lexbuf 181
and __ocaml_lex_antiquot_rec name c lexbuf __ocaml_lex_state =
match Lexing.engine __ocaml_lex_tables __ocaml_lex_state lexbuf
with
{
(default_context lb)
with
-
loc = Loc.of_lexbuf lb;
+ antiquots = !Camlp4_config.antiquotations;
quotations = quotations;
}
in from_context c
"%field0"
external loc_of_with_constr : with_constr -> Loc.t = "%field0"
external loc_of_binding : binding -> Loc.t = "%field0"
+ external loc_of_rec_binding : rec_binding -> Loc.t = "%field0"
external loc_of_module_binding : module_binding -> Loc.t =
"%field0"
external loc_of_match_case : match_case -> Loc.t = "%field0"
external loc_of_ident : ident -> Loc.t = "%field0"
- module Meta =
- struct
- module type META_LOC =
- sig
- val meta_loc_patt : Loc.t -> Loc.t -> Ast.patt
- val meta_loc_expr : Loc.t -> Loc.t -> Ast.expr
- end
- module MetaLoc =
- struct
- let meta_loc_patt _loc location =
- let (a, b, c, d, e, f, g, h) = Loc.to_tuple location
- in
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Loc"),
- Ast.IdLid (_loc, "of_tuple"))),
- Ast.PaTup (_loc,
- Ast.PaCom (_loc,
- Ast.PaStr (_loc, Ast.safe_string_escaped a),
- Ast.PaCom (_loc,
- Ast.PaCom (_loc,
- Ast.PaCom (_loc,
- Ast.PaCom (_loc,
- Ast.PaCom (_loc,
- Ast.PaCom (_loc,
- Ast.PaInt (_loc, string_of_int b),
- Ast.PaInt (_loc, string_of_int c)),
- Ast.PaInt (_loc, string_of_int d)),
- Ast.PaInt (_loc, string_of_int e)),
- Ast.PaInt (_loc, string_of_int f)),
- Ast.PaInt (_loc, string_of_int g)),
- if h
- then
- Ast.PaId (_loc, Ast.IdUid (_loc, "True"))
- else
- Ast.PaId (_loc, Ast.IdUid (_loc, "False"))))))
- let meta_loc_expr _loc location =
- let (a, b, c, d, e, f, g, h) = Loc.to_tuple location
- in
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Loc"),
- Ast.IdLid (_loc, "of_tuple"))),
- Ast.ExTup (_loc,
- Ast.ExCom (_loc,
- Ast.ExStr (_loc, Ast.safe_string_escaped a),
- Ast.ExCom (_loc,
- Ast.ExCom (_loc,
- Ast.ExCom (_loc,
- Ast.ExCom (_loc,
- Ast.ExCom (_loc,
- Ast.ExCom (_loc,
- Ast.ExInt (_loc, string_of_int b),
- Ast.ExInt (_loc, string_of_int c)),
- Ast.ExInt (_loc, string_of_int d)),
- Ast.ExInt (_loc, string_of_int e)),
- Ast.ExInt (_loc, string_of_int f)),
- Ast.ExInt (_loc, string_of_int g)),
- if h
- then
- Ast.ExId (_loc, Ast.IdUid (_loc, "True"))
- else
- Ast.ExId (_loc, Ast.IdUid (_loc, "False"))))))
- end
- module MetaGhostLoc =
- struct
- let meta_loc_patt _loc _ =
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Loc"),
- Ast.IdLid (_loc, "ghost")))
- let meta_loc_expr _loc _ =
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Loc"),
- Ast.IdLid (_loc, "ghost")))
- end
- module MetaLocVar =
- struct
- let meta_loc_patt _loc _ =
- Ast.PaId (_loc, Ast.IdLid (_loc, !Loc.name))
- let meta_loc_expr _loc _ =
- Ast.ExId (_loc, Ast.IdLid (_loc, !Loc.name))
- end
- module Make (MetaLoc : META_LOC) =
- struct
- open MetaLoc
- let meta_acc_Loc_t = meta_loc_expr
- module Expr =
- struct
- let meta_string _loc s = Ast.ExStr (_loc, s)
- let meta_int _loc s = Ast.ExInt (_loc, s)
- let meta_float _loc s = Ast.ExFlo (_loc, s)
- let meta_char _loc s = Ast.ExChr (_loc, s)
- let meta_bool _loc =
- function
- | false ->
- Ast.ExId (_loc, Ast.IdUid (_loc, "False"))
- | true -> Ast.ExId (_loc, Ast.IdUid (_loc, "True"))
- let rec meta_list mf_a _loc =
- function
- | [] -> Ast.ExId (_loc, Ast.IdUid (_loc, "[]"))
- | x :: xs ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc, Ast.IdUid (_loc, "::")),
- mf_a _loc x),
- meta_list mf_a _loc xs)
- let rec meta_binding _loc =
- function
- | Ast.BiAnt (x0, x1) -> Ast.ExAnt (x0, x1)
- | Ast.BiEq (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "BiEq"))),
- meta_acc_Loc_t _loc x0),
- meta_patt _loc x1),
- meta_expr _loc x2)
- | Ast.BiSem (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "BiSem"))),
- meta_acc_Loc_t _loc x0),
- meta_binding _loc x1),
- meta_binding _loc x2)
- | Ast.BiAnd (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "BiAnd"))),
- meta_acc_Loc_t _loc x0),
- meta_binding _loc x1),
- meta_binding _loc x2)
- | Ast.BiNil x0 ->
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "BiNil"))),
- meta_acc_Loc_t _loc x0)
- and meta_class_expr _loc =
- function
- | Ast.CeAnt (x0, x1) -> Ast.ExAnt (x0, x1)
- | Ast.CeEq (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CeEq"))),
- meta_acc_Loc_t _loc x0),
- meta_class_expr _loc x1),
- meta_class_expr _loc x2)
- | Ast.CeAnd (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CeAnd"))),
- meta_acc_Loc_t _loc x0),
- meta_class_expr _loc x1),
- meta_class_expr _loc x2)
- | Ast.CeTyc (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CeTyc"))),
- meta_acc_Loc_t _loc x0),
- meta_class_expr _loc x1),
- meta_class_type _loc x2)
- | Ast.CeStr (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CeStr"))),
- meta_acc_Loc_t _loc x0),
- meta_patt _loc x1),
- meta_class_str_item _loc x2)
- | Ast.CeLet (x0, x1, x2, x3) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CeLet"))),
- meta_acc_Loc_t _loc x0),
- meta_meta_bool _loc x1),
- meta_binding _loc x2),
- meta_class_expr _loc x3)
- | Ast.CeFun (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CeFun"))),
- meta_acc_Loc_t _loc x0),
- meta_patt _loc x1),
- meta_class_expr _loc x2)
- | Ast.CeCon (x0, x1, x2, x3) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CeCon"))),
- meta_acc_Loc_t _loc x0),
- meta_meta_bool _loc x1),
- meta_ident _loc x2),
- meta_ctyp _loc x3)
- | Ast.CeApp (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CeApp"))),
- meta_acc_Loc_t _loc x0),
- meta_class_expr _loc x1),
- meta_expr _loc x2)
- | Ast.CeNil x0 ->
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CeNil"))),
- meta_acc_Loc_t _loc x0)
- and meta_class_sig_item _loc =
- function
- | Ast.CgAnt (x0, x1) -> Ast.ExAnt (x0, x1)
- | Ast.CgVir (x0, x1, x2, x3) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CgVir"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_meta_bool _loc x2),
- meta_ctyp _loc x3)
- | Ast.CgVal (x0, x1, x2, x3, x4) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CgVal"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_meta_bool _loc x2),
- meta_meta_bool _loc x3),
- meta_ctyp _loc x4)
- | Ast.CgMth (x0, x1, x2, x3) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CgMth"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_meta_bool _loc x2),
- meta_ctyp _loc x3)
- | Ast.CgInh (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CgInh"))),
- meta_acc_Loc_t _loc x0),
- meta_class_type _loc x1)
- | Ast.CgSem (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CgSem"))),
- meta_acc_Loc_t _loc x0),
- meta_class_sig_item _loc x1),
- meta_class_sig_item _loc x2)
- | Ast.CgCtr (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CgCtr"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1),
- meta_ctyp _loc x2)
- | Ast.CgNil x0 ->
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CgNil"))),
- meta_acc_Loc_t _loc x0)
- and meta_class_str_item _loc =
- function
- | Ast.CrAnt (x0, x1) -> Ast.ExAnt (x0, x1)
- | Ast.CrVvr (x0, x1, x2, x3) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CrVvr"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_meta_bool _loc x2),
- meta_ctyp _loc x3)
- | Ast.CrVir (x0, x1, x2, x3) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CrVir"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_meta_bool _loc x2),
- meta_ctyp _loc x3)
- | Ast.CrVal (x0, x1, x2, x3) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CrVal"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_meta_bool _loc x2),
- meta_expr _loc x3)
- | Ast.CrMth (x0, x1, x2, x3, x4) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CrMth"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_meta_bool _loc x2),
- meta_expr _loc x3),
- meta_ctyp _loc x4)
- | Ast.CrIni (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CrIni"))),
- meta_acc_Loc_t _loc x0),
- meta_expr _loc x1)
- | Ast.CrInh (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CrInh"))),
- meta_acc_Loc_t _loc x0),
- meta_class_expr _loc x1),
- meta_string _loc x2)
- | Ast.CrCtr (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CrCtr"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1),
- meta_ctyp _loc x2)
- | Ast.CrSem (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CrSem"))),
- meta_acc_Loc_t _loc x0),
- meta_class_str_item _loc x1),
- meta_class_str_item _loc x2)
- | Ast.CrNil x0 ->
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CrNil"))),
- meta_acc_Loc_t _loc x0)
- and meta_class_type _loc =
- function
- | Ast.CtAnt (x0, x1) -> Ast.ExAnt (x0, x1)
- | Ast.CtEq (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CtEq"))),
- meta_acc_Loc_t _loc x0),
- meta_class_type _loc x1),
- meta_class_type _loc x2)
- | Ast.CtCol (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CtCol"))),
- meta_acc_Loc_t _loc x0),
- meta_class_type _loc x1),
- meta_class_type _loc x2)
- | Ast.CtAnd (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CtAnd"))),
- meta_acc_Loc_t _loc x0),
- meta_class_type _loc x1),
- meta_class_type _loc x2)
- | Ast.CtSig (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CtSig"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1),
- meta_class_sig_item _loc x2)
- | Ast.CtFun (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CtFun"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1),
- meta_class_type _loc x2)
- | Ast.CtCon (x0, x1, x2, x3) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CtCon"))),
- meta_acc_Loc_t _loc x0),
- meta_meta_bool _loc x1),
- meta_ident _loc x2),
- meta_ctyp _loc x3)
- | Ast.CtNil x0 ->
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CtNil"))),
- meta_acc_Loc_t _loc x0)
- and meta_ctyp _loc =
- function
- | Ast.TyAnt (x0, x1) -> Ast.ExAnt (x0, x1)
- | Ast.TyOfAmp (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyOfAmp"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1),
- meta_ctyp _loc x2)
- | Ast.TyAmp (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyAmp"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1),
- meta_ctyp _loc x2)
- | Ast.TyVrnInfSup (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyVrnInfSup"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1),
- meta_ctyp _loc x2)
- | Ast.TyVrnInf (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyVrnInf"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1)
- | Ast.TyVrnSup (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyVrnSup"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1)
- | Ast.TyVrnEq (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyVrnEq"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1)
- | Ast.TySta (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TySta"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1),
- meta_ctyp _loc x2)
- | Ast.TyTup (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyTup"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1)
- | Ast.TyMut (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyMut"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1)
- | Ast.TyPrv (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyPrv"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1)
- | Ast.TyOr (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyOr"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1),
- meta_ctyp _loc x2)
- | Ast.TyAnd (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyAnd"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1),
- meta_ctyp _loc x2)
- | Ast.TyOf (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyOf"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1),
- meta_ctyp _loc x2)
- | Ast.TySum (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TySum"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1)
- | Ast.TyCom (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyCom"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1),
- meta_ctyp _loc x2)
- | Ast.TySem (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TySem"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1),
- meta_ctyp _loc x2)
- | Ast.TyCol (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyCol"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1),
- meta_ctyp _loc x2)
- | Ast.TyRec (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyRec"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1)
- | Ast.TyVrn (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyVrn"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.TyQuM (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyQuM"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.TyQuP (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyQuP"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.TyQuo (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyQuo"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.TyPol (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyPol"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1),
- meta_ctyp _loc x2)
- | Ast.TyOlb (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyOlb"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_ctyp _loc x2)
- | Ast.TyObj (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyObj"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1),
- meta_meta_bool _loc x2)
- | Ast.TyDcl (x0, x1, x2, x3, x4) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyDcl"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_list meta_ctyp _loc x2),
- meta_ctyp _loc x3),
- meta_list
- (fun _loc (x1, x2) ->
- Ast.ExTup (_loc,
- Ast.ExCom (_loc, meta_ctyp _loc x1,
- meta_ctyp _loc x2)))
- _loc x4)
- | Ast.TyMan (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyMan"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1),
- meta_ctyp _loc x2)
- | Ast.TyId (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyId"))),
- meta_acc_Loc_t _loc x0),
- meta_ident _loc x1)
- | Ast.TyLab (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyLab"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_ctyp _loc x2)
- | Ast.TyCls (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyCls"))),
- meta_acc_Loc_t _loc x0),
- meta_ident _loc x1)
- | Ast.TyArr (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyArr"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1),
- meta_ctyp _loc x2)
- | Ast.TyApp (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyApp"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1),
- meta_ctyp _loc x2)
- | Ast.TyAny x0 ->
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyAny"))),
- meta_acc_Loc_t _loc x0)
- | Ast.TyAli (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyAli"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1),
- meta_ctyp _loc x2)
- | Ast.TyNil x0 ->
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyNil"))),
- meta_acc_Loc_t _loc x0)
- and meta_expr _loc =
- function
- | Ast.ExWhi (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExWhi"))),
- meta_acc_Loc_t _loc x0),
- meta_expr _loc x1),
- meta_expr _loc x2)
- | Ast.ExVrn (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExVrn"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.ExTyc (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExTyc"))),
- meta_acc_Loc_t _loc x0),
- meta_expr _loc x1),
- meta_ctyp _loc x2)
- | Ast.ExCom (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExCom"))),
- meta_acc_Loc_t _loc x0),
- meta_expr _loc x1),
- meta_expr _loc x2)
- | Ast.ExTup (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExTup"))),
- meta_acc_Loc_t _loc x0),
- meta_expr _loc x1)
- | Ast.ExTry (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExTry"))),
- meta_acc_Loc_t _loc x0),
- meta_expr _loc x1),
- meta_match_case _loc x2)
- | Ast.ExStr (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExStr"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.ExSte (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExSte"))),
- meta_acc_Loc_t _loc x0),
- meta_expr _loc x1),
- meta_expr _loc x2)
- | Ast.ExSnd (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExSnd"))),
- meta_acc_Loc_t _loc x0),
- meta_expr _loc x1),
- meta_string _loc x2)
- | Ast.ExSeq (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExSeq"))),
- meta_acc_Loc_t _loc x0),
- meta_expr _loc x1)
- | Ast.ExRec (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExRec"))),
- meta_acc_Loc_t _loc x0),
- meta_binding _loc x1),
- meta_expr _loc x2)
- | Ast.ExOvr (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExOvr"))),
- meta_acc_Loc_t _loc x0),
- meta_binding _loc x1)
- | Ast.ExOlb (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExOlb"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_expr _loc x2)
- | Ast.ExObj (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExObj"))),
- meta_acc_Loc_t _loc x0),
- meta_patt _loc x1),
- meta_class_str_item _loc x2)
- | Ast.ExNew (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExNew"))),
- meta_acc_Loc_t _loc x0),
- meta_ident _loc x1)
- | Ast.ExMat (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExMat"))),
- meta_acc_Loc_t _loc x0),
- meta_expr _loc x1),
- meta_match_case _loc x2)
- | Ast.ExLmd (x0, x1, x2, x3) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExLmd"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_module_expr _loc x2),
- meta_expr _loc x3)
- | Ast.ExLet (x0, x1, x2, x3) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExLet"))),
- meta_acc_Loc_t _loc x0),
- meta_meta_bool _loc x1),
- meta_binding _loc x2),
- meta_expr _loc x3)
- | Ast.ExLaz (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExLaz"))),
- meta_acc_Loc_t _loc x0),
- meta_expr _loc x1)
- | Ast.ExLab (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExLab"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_expr _loc x2)
- | Ast.ExNativeInt (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExNativeInt"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.ExInt64 (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExInt64"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.ExInt32 (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExInt32"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.ExInt (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExInt"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.ExIfe (x0, x1, x2, x3) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExIfe"))),
- meta_acc_Loc_t _loc x0),
- meta_expr _loc x1),
- meta_expr _loc x2),
- meta_expr _loc x3)
- | Ast.ExFun (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExFun"))),
- meta_acc_Loc_t _loc x0),
- meta_match_case _loc x1)
- | Ast.ExFor (x0, x1, x2, x3, x4, x5) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExFor"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_expr _loc x2),
- meta_expr _loc x3),
- meta_meta_bool _loc x4),
- meta_expr _loc x5)
- | Ast.ExFlo (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExFlo"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.ExCoe (x0, x1, x2, x3) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExCoe"))),
- meta_acc_Loc_t _loc x0),
- meta_expr _loc x1),
- meta_ctyp _loc x2),
- meta_ctyp _loc x3)
- | Ast.ExChr (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExChr"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.ExAss (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExAss"))),
- meta_acc_Loc_t _loc x0),
- meta_expr _loc x1),
- meta_expr _loc x2)
- | Ast.ExAsr (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExAsr"))),
- meta_acc_Loc_t _loc x0),
- meta_expr _loc x1)
- | Ast.ExAsf x0 ->
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExAsf"))),
- meta_acc_Loc_t _loc x0)
- | Ast.ExSem (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExSem"))),
- meta_acc_Loc_t _loc x0),
- meta_expr _loc x1),
- meta_expr _loc x2)
- | Ast.ExArr (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExArr"))),
- meta_acc_Loc_t _loc x0),
- meta_expr _loc x1)
- | Ast.ExAre (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExAre"))),
- meta_acc_Loc_t _loc x0),
- meta_expr _loc x1),
- meta_expr _loc x2)
- | Ast.ExApp (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExApp"))),
- meta_acc_Loc_t _loc x0),
- meta_expr _loc x1),
- meta_expr _loc x2)
- | Ast.ExAnt (x0, x1) -> Ast.ExAnt (x0, x1)
- | Ast.ExAcc (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExAcc"))),
- meta_acc_Loc_t _loc x0),
- meta_expr _loc x1),
- meta_expr _loc x2)
- | Ast.ExId (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExId"))),
- meta_acc_Loc_t _loc x0),
- meta_ident _loc x1)
- | Ast.ExNil x0 ->
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExNil"))),
- meta_acc_Loc_t _loc x0)
- and meta_ident _loc =
- function
- | Ast.IdAnt (x0, x1) -> Ast.ExAnt (x0, x1)
- | Ast.IdUid (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "IdUid"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.IdLid (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "IdLid"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.IdApp (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "IdApp"))),
- meta_acc_Loc_t _loc x0),
- meta_ident _loc x1),
- meta_ident _loc x2)
- | Ast.IdAcc (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "IdAcc"))),
- meta_acc_Loc_t _loc x0),
- meta_ident _loc x1),
- meta_ident _loc x2)
- and meta_match_case _loc =
- function
- | Ast.McAnt (x0, x1) -> Ast.ExAnt (x0, x1)
- | Ast.McArr (x0, x1, x2, x3) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "McArr"))),
- meta_acc_Loc_t _loc x0),
- meta_patt _loc x1),
- meta_expr _loc x2),
- meta_expr _loc x3)
- | Ast.McOr (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "McOr"))),
- meta_acc_Loc_t _loc x0),
- meta_match_case _loc x1),
- meta_match_case _loc x2)
- | Ast.McNil x0 ->
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "McNil"))),
- meta_acc_Loc_t _loc x0)
- and meta_meta_bool _loc =
- function
- | Ast.BAnt x0 -> Ast.ExAnt (_loc, x0)
- | Ast.BFalse ->
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "BFalse")))
- | Ast.BTrue ->
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "BTrue")))
- and meta_meta_list mf_a _loc =
- function
- | Ast.LAnt x0 -> Ast.ExAnt (_loc, x0)
- | Ast.LCons (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "LCons"))),
- mf_a _loc x0),
- meta_meta_list mf_a _loc x1)
- | Ast.LNil ->
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "LNil")))
- and meta_meta_option mf_a _loc =
- function
- | Ast.OAnt x0 -> Ast.ExAnt (_loc, x0)
- | Ast.OSome x0 ->
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "OSome"))),
- mf_a _loc x0)
- | Ast.ONone ->
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ONone")))
- and meta_module_binding _loc =
- function
- | Ast.MbAnt (x0, x1) -> Ast.ExAnt (x0, x1)
- | Ast.MbCol (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "MbCol"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_module_type _loc x2)
- | Ast.MbColEq (x0, x1, x2, x3) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "MbColEq"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_module_type _loc x2),
- meta_module_expr _loc x3)
- | Ast.MbAnd (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "MbAnd"))),
- meta_acc_Loc_t _loc x0),
- meta_module_binding _loc x1),
- meta_module_binding _loc x2)
- | Ast.MbNil x0 ->
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "MbNil"))),
- meta_acc_Loc_t _loc x0)
- and meta_module_expr _loc =
- function
- | Ast.MeAnt (x0, x1) -> Ast.ExAnt (x0, x1)
- | Ast.MeTyc (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "MeTyc"))),
- meta_acc_Loc_t _loc x0),
- meta_module_expr _loc x1),
- meta_module_type _loc x2)
- | Ast.MeStr (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "MeStr"))),
- meta_acc_Loc_t _loc x0),
- meta_str_item _loc x1)
- | Ast.MeFun (x0, x1, x2, x3) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "MeFun"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_module_type _loc x2),
- meta_module_expr _loc x3)
- | Ast.MeApp (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "MeApp"))),
- meta_acc_Loc_t _loc x0),
- meta_module_expr _loc x1),
- meta_module_expr _loc x2)
- | Ast.MeId (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "MeId"))),
- meta_acc_Loc_t _loc x0),
- meta_ident _loc x1)
- and meta_module_type _loc =
- function
- | Ast.MtAnt (x0, x1) -> Ast.ExAnt (x0, x1)
- | Ast.MtWit (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "MtWit"))),
- meta_acc_Loc_t _loc x0),
- meta_module_type _loc x1),
- meta_with_constr _loc x2)
- | Ast.MtSig (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "MtSig"))),
- meta_acc_Loc_t _loc x0),
- meta_sig_item _loc x1)
- | Ast.MtQuo (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "MtQuo"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.MtFun (x0, x1, x2, x3) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "MtFun"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_module_type _loc x2),
- meta_module_type _loc x3)
- | Ast.MtId (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "MtId"))),
- meta_acc_Loc_t _loc x0),
- meta_ident _loc x1)
- and meta_patt _loc =
- function
- | Ast.PaVrn (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaVrn"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.PaTyp (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaTyp"))),
- meta_acc_Loc_t _loc x0),
- meta_ident _loc x1)
- | Ast.PaTyc (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaTyc"))),
- meta_acc_Loc_t _loc x0),
- meta_patt _loc x1),
- meta_ctyp _loc x2)
- | Ast.PaTup (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaTup"))),
- meta_acc_Loc_t _loc x0),
- meta_patt _loc x1)
- | Ast.PaStr (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaStr"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.PaEq (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaEq"))),
- meta_acc_Loc_t _loc x0),
- meta_patt _loc x1),
- meta_patt _loc x2)
- | Ast.PaRec (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaRec"))),
- meta_acc_Loc_t _loc x0),
- meta_patt _loc x1)
- | Ast.PaRng (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaRng"))),
- meta_acc_Loc_t _loc x0),
- meta_patt _loc x1),
- meta_patt _loc x2)
- | Ast.PaOrp (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaOrp"))),
- meta_acc_Loc_t _loc x0),
- meta_patt _loc x1),
- meta_patt _loc x2)
- | Ast.PaOlbi (x0, x1, x2, x3) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaOlbi"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_patt _loc x2),
- meta_expr _loc x3)
- | Ast.PaOlb (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaOlb"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_patt _loc x2)
- | Ast.PaLab (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaLab"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_patt _loc x2)
- | Ast.PaFlo (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaFlo"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.PaNativeInt (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaNativeInt"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.PaInt64 (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaInt64"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.PaInt32 (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaInt32"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.PaInt (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaInt"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.PaChr (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaChr"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.PaSem (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaSem"))),
- meta_acc_Loc_t _loc x0),
- meta_patt _loc x1),
- meta_patt _loc x2)
- | Ast.PaCom (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaCom"))),
- meta_acc_Loc_t _loc x0),
- meta_patt _loc x1),
- meta_patt _loc x2)
- | Ast.PaArr (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaArr"))),
- meta_acc_Loc_t _loc x0),
- meta_patt _loc x1)
- | Ast.PaApp (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaApp"))),
- meta_acc_Loc_t _loc x0),
- meta_patt _loc x1),
- meta_patt _loc x2)
- | Ast.PaAny x0 ->
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaAny"))),
- meta_acc_Loc_t _loc x0)
- | Ast.PaAnt (x0, x1) -> Ast.ExAnt (x0, x1)
- | Ast.PaAli (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaAli"))),
- meta_acc_Loc_t _loc x0),
- meta_patt _loc x1),
- meta_patt _loc x2)
- | Ast.PaId (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaId"))),
- meta_acc_Loc_t _loc x0),
- meta_ident _loc x1)
- | Ast.PaNil x0 ->
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaNil"))),
- meta_acc_Loc_t _loc x0)
- and meta_sig_item _loc =
- function
- | Ast.SgAnt (x0, x1) -> Ast.ExAnt (x0, x1)
- | Ast.SgVal (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "SgVal"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_ctyp _loc x2)
- | Ast.SgTyp (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "SgTyp"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1)
- | Ast.SgOpn (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "SgOpn"))),
- meta_acc_Loc_t _loc x0),
- meta_ident _loc x1)
- | Ast.SgMty (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "SgMty"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_module_type _loc x2)
- | Ast.SgRecMod (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "SgRecMod"))),
- meta_acc_Loc_t _loc x0),
- meta_module_binding _loc x1)
- | Ast.SgMod (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "SgMod"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_module_type _loc x2)
- | Ast.SgInc (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "SgInc"))),
- meta_acc_Loc_t _loc x0),
- meta_module_type _loc x1)
- | Ast.SgExt (x0, x1, x2, x3) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "SgExt"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_ctyp _loc x2),
- meta_meta_list meta_string _loc x3)
- | Ast.SgExc (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "SgExc"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1)
- | Ast.SgDir (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "SgDir"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_expr _loc x2)
- | Ast.SgSem (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "SgSem"))),
- meta_acc_Loc_t _loc x0),
- meta_sig_item _loc x1),
- meta_sig_item _loc x2)
- | Ast.SgClt (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "SgClt"))),
- meta_acc_Loc_t _loc x0),
- meta_class_type _loc x1)
- | Ast.SgCls (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "SgCls"))),
- meta_acc_Loc_t _loc x0),
- meta_class_type _loc x1)
- | Ast.SgNil x0 ->
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "SgNil"))),
- meta_acc_Loc_t _loc x0)
- and meta_str_item _loc =
- function
- | Ast.StAnt (x0, x1) -> Ast.ExAnt (x0, x1)
- | Ast.StVal (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "StVal"))),
- meta_acc_Loc_t _loc x0),
- meta_meta_bool _loc x1),
- meta_binding _loc x2)
- | Ast.StTyp (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "StTyp"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1)
- | Ast.StOpn (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "StOpn"))),
- meta_acc_Loc_t _loc x0),
- meta_ident _loc x1)
- | Ast.StMty (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "StMty"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_module_type _loc x2)
- | Ast.StRecMod (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "StRecMod"))),
- meta_acc_Loc_t _loc x0),
- meta_module_binding _loc x1)
- | Ast.StMod (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "StMod"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_module_expr _loc x2)
- | Ast.StInc (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "StInc"))),
- meta_acc_Loc_t _loc x0),
- meta_module_expr _loc x1)
- | Ast.StExt (x0, x1, x2, x3) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "StExt"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_ctyp _loc x2),
- meta_meta_list meta_string _loc x3)
- | Ast.StExp (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "StExp"))),
- meta_acc_Loc_t _loc x0),
- meta_expr _loc x1)
- | Ast.StExc (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "StExc"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1),
- meta_meta_option meta_ident _loc x2)
- | Ast.StDir (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "StDir"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_expr _loc x2)
- | Ast.StSem (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "StSem"))),
- meta_acc_Loc_t _loc x0),
- meta_str_item _loc x1),
- meta_str_item _loc x2)
- | Ast.StClt (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "StClt"))),
- meta_acc_Loc_t _loc x0),
- meta_class_type _loc x1)
- | Ast.StCls (x0, x1) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "StCls"))),
- meta_acc_Loc_t _loc x0),
- meta_class_expr _loc x1)
- | Ast.StNil x0 ->
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "StNil"))),
- meta_acc_Loc_t _loc x0)
- and meta_with_constr _loc =
- function
- | Ast.WcAnt (x0, x1) -> Ast.ExAnt (x0, x1)
- | Ast.WcAnd (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "WcAnd"))),
- meta_acc_Loc_t _loc x0),
- meta_with_constr _loc x1),
- meta_with_constr _loc x2)
- | Ast.WcMod (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "WcMod"))),
- meta_acc_Loc_t _loc x0),
- meta_ident _loc x1),
- meta_ident _loc x2)
- | Ast.WcTyp (x0, x1, x2) ->
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "WcTyp"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1),
- meta_ctyp _loc x2)
- | Ast.WcNil x0 ->
- Ast.ExApp (_loc,
- Ast.ExId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "WcNil"))),
- meta_acc_Loc_t _loc x0)
- end
- let meta_acc_Loc_t = meta_loc_patt
- module Patt =
- struct
- let meta_string _loc s = Ast.PaStr (_loc, s)
- let meta_int _loc s = Ast.PaInt (_loc, s)
- let meta_float _loc s = Ast.PaFlo (_loc, s)
- let meta_char _loc s = Ast.PaChr (_loc, s)
- let meta_bool _loc =
- function
- | false ->
- Ast.PaId (_loc, Ast.IdUid (_loc, "False"))
- | true -> Ast.PaId (_loc, Ast.IdUid (_loc, "True"))
- let rec meta_list mf_a _loc =
- function
- | [] -> Ast.PaId (_loc, Ast.IdUid (_loc, "[]"))
- | x :: xs ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc, Ast.IdUid (_loc, "::")),
- mf_a _loc x),
- meta_list mf_a _loc xs)
- let rec meta_binding _loc =
- function
- | Ast.BiAnt (x0, x1) -> Ast.PaAnt (x0, x1)
- | Ast.BiEq (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "BiEq"))),
- meta_acc_Loc_t _loc x0),
- meta_patt _loc x1),
- meta_expr _loc x2)
- | Ast.BiSem (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "BiSem"))),
- meta_acc_Loc_t _loc x0),
- meta_binding _loc x1),
- meta_binding _loc x2)
- | Ast.BiAnd (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "BiAnd"))),
- meta_acc_Loc_t _loc x0),
- meta_binding _loc x1),
- meta_binding _loc x2)
- | Ast.BiNil x0 ->
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "BiNil"))),
- meta_acc_Loc_t _loc x0)
- and meta_class_expr _loc =
- function
- | Ast.CeAnt (x0, x1) -> Ast.PaAnt (x0, x1)
- | Ast.CeEq (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CeEq"))),
- meta_acc_Loc_t _loc x0),
- meta_class_expr _loc x1),
- meta_class_expr _loc x2)
- | Ast.CeAnd (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CeAnd"))),
- meta_acc_Loc_t _loc x0),
- meta_class_expr _loc x1),
- meta_class_expr _loc x2)
- | Ast.CeTyc (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CeTyc"))),
- meta_acc_Loc_t _loc x0),
- meta_class_expr _loc x1),
- meta_class_type _loc x2)
- | Ast.CeStr (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CeStr"))),
- meta_acc_Loc_t _loc x0),
- meta_patt _loc x1),
- meta_class_str_item _loc x2)
- | Ast.CeLet (x0, x1, x2, x3) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CeLet"))),
- meta_acc_Loc_t _loc x0),
- meta_meta_bool _loc x1),
- meta_binding _loc x2),
- meta_class_expr _loc x3)
- | Ast.CeFun (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CeFun"))),
- meta_acc_Loc_t _loc x0),
- meta_patt _loc x1),
- meta_class_expr _loc x2)
- | Ast.CeCon (x0, x1, x2, x3) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CeCon"))),
- meta_acc_Loc_t _loc x0),
- meta_meta_bool _loc x1),
- meta_ident _loc x2),
- meta_ctyp _loc x3)
- | Ast.CeApp (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CeApp"))),
- meta_acc_Loc_t _loc x0),
- meta_class_expr _loc x1),
- meta_expr _loc x2)
- | Ast.CeNil x0 ->
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CeNil"))),
- meta_acc_Loc_t _loc x0)
- and meta_class_sig_item _loc =
- function
- | Ast.CgAnt (x0, x1) -> Ast.PaAnt (x0, x1)
- | Ast.CgVir (x0, x1, x2, x3) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CgVir"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_meta_bool _loc x2),
- meta_ctyp _loc x3)
- | Ast.CgVal (x0, x1, x2, x3, x4) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CgVal"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_meta_bool _loc x2),
- meta_meta_bool _loc x3),
- meta_ctyp _loc x4)
- | Ast.CgMth (x0, x1, x2, x3) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CgMth"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_meta_bool _loc x2),
- meta_ctyp _loc x3)
- | Ast.CgInh (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CgInh"))),
- meta_acc_Loc_t _loc x0),
- meta_class_type _loc x1)
- | Ast.CgSem (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CgSem"))),
- meta_acc_Loc_t _loc x0),
- meta_class_sig_item _loc x1),
- meta_class_sig_item _loc x2)
- | Ast.CgCtr (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CgCtr"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1),
- meta_ctyp _loc x2)
- | Ast.CgNil x0 ->
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CgNil"))),
- meta_acc_Loc_t _loc x0)
- and meta_class_str_item _loc =
- function
- | Ast.CrAnt (x0, x1) -> Ast.PaAnt (x0, x1)
- | Ast.CrVvr (x0, x1, x2, x3) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CrVvr"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_meta_bool _loc x2),
- meta_ctyp _loc x3)
- | Ast.CrVir (x0, x1, x2, x3) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CrVir"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_meta_bool _loc x2),
- meta_ctyp _loc x3)
- | Ast.CrVal (x0, x1, x2, x3) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CrVal"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_meta_bool _loc x2),
- meta_expr _loc x3)
- | Ast.CrMth (x0, x1, x2, x3, x4) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CrMth"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_meta_bool _loc x2),
- meta_expr _loc x3),
- meta_ctyp _loc x4)
- | Ast.CrIni (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CrIni"))),
- meta_acc_Loc_t _loc x0),
- meta_expr _loc x1)
- | Ast.CrInh (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CrInh"))),
- meta_acc_Loc_t _loc x0),
- meta_class_expr _loc x1),
- meta_string _loc x2)
- | Ast.CrCtr (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CrCtr"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1),
- meta_ctyp _loc x2)
- | Ast.CrSem (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CrSem"))),
- meta_acc_Loc_t _loc x0),
- meta_class_str_item _loc x1),
- meta_class_str_item _loc x2)
- | Ast.CrNil x0 ->
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CrNil"))),
- meta_acc_Loc_t _loc x0)
- and meta_class_type _loc =
- function
- | Ast.CtAnt (x0, x1) -> Ast.PaAnt (x0, x1)
- | Ast.CtEq (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CtEq"))),
- meta_acc_Loc_t _loc x0),
- meta_class_type _loc x1),
- meta_class_type _loc x2)
- | Ast.CtCol (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CtCol"))),
- meta_acc_Loc_t _loc x0),
- meta_class_type _loc x1),
- meta_class_type _loc x2)
- | Ast.CtAnd (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CtAnd"))),
- meta_acc_Loc_t _loc x0),
- meta_class_type _loc x1),
- meta_class_type _loc x2)
- | Ast.CtSig (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CtSig"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1),
- meta_class_sig_item _loc x2)
- | Ast.CtFun (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CtFun"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1),
- meta_class_type _loc x2)
- | Ast.CtCon (x0, x1, x2, x3) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CtCon"))),
- meta_acc_Loc_t _loc x0),
- meta_meta_bool _loc x1),
- meta_ident _loc x2),
- meta_ctyp _loc x3)
- | Ast.CtNil x0 ->
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "CtNil"))),
- meta_acc_Loc_t _loc x0)
- and meta_ctyp _loc =
- function
- | Ast.TyAnt (x0, x1) -> Ast.PaAnt (x0, x1)
- | Ast.TyOfAmp (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyOfAmp"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1),
- meta_ctyp _loc x2)
- | Ast.TyAmp (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyAmp"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1),
- meta_ctyp _loc x2)
- | Ast.TyVrnInfSup (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyVrnInfSup"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1),
- meta_ctyp _loc x2)
- | Ast.TyVrnInf (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyVrnInf"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1)
- | Ast.TyVrnSup (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyVrnSup"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1)
- | Ast.TyVrnEq (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyVrnEq"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1)
- | Ast.TySta (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TySta"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1),
- meta_ctyp _loc x2)
- | Ast.TyTup (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyTup"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1)
- | Ast.TyMut (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyMut"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1)
- | Ast.TyPrv (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyPrv"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1)
- | Ast.TyOr (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyOr"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1),
- meta_ctyp _loc x2)
- | Ast.TyAnd (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyAnd"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1),
- meta_ctyp _loc x2)
- | Ast.TyOf (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyOf"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1),
- meta_ctyp _loc x2)
- | Ast.TySum (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TySum"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1)
- | Ast.TyCom (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyCom"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1),
- meta_ctyp _loc x2)
- | Ast.TySem (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TySem"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1),
- meta_ctyp _loc x2)
- | Ast.TyCol (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyCol"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1),
- meta_ctyp _loc x2)
- | Ast.TyRec (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyRec"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1)
- | Ast.TyVrn (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyVrn"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.TyQuM (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyQuM"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.TyQuP (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyQuP"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.TyQuo (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyQuo"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.TyPol (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyPol"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1),
- meta_ctyp _loc x2)
- | Ast.TyOlb (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyOlb"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_ctyp _loc x2)
- | Ast.TyObj (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyObj"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1),
- meta_meta_bool _loc x2)
- | Ast.TyDcl (x0, x1, x2, x3, x4) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyDcl"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_list meta_ctyp _loc x2),
- meta_ctyp _loc x3),
- meta_list
- (fun _loc (x1, x2) ->
- Ast.PaTup (_loc,
- Ast.PaCom (_loc, meta_ctyp _loc x1,
- meta_ctyp _loc x2)))
- _loc x4)
- | Ast.TyMan (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyMan"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1),
- meta_ctyp _loc x2)
- | Ast.TyId (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyId"))),
- meta_acc_Loc_t _loc x0),
- meta_ident _loc x1)
- | Ast.TyLab (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyLab"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_ctyp _loc x2)
- | Ast.TyCls (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyCls"))),
- meta_acc_Loc_t _loc x0),
- meta_ident _loc x1)
- | Ast.TyArr (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyArr"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1),
- meta_ctyp _loc x2)
- | Ast.TyApp (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyApp"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1),
- meta_ctyp _loc x2)
- | Ast.TyAny x0 ->
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyAny"))),
- meta_acc_Loc_t _loc x0)
- | Ast.TyAli (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyAli"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1),
- meta_ctyp _loc x2)
- | Ast.TyNil x0 ->
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "TyNil"))),
- meta_acc_Loc_t _loc x0)
- and meta_expr _loc =
- function
- | Ast.ExWhi (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExWhi"))),
- meta_acc_Loc_t _loc x0),
- meta_expr _loc x1),
- meta_expr _loc x2)
- | Ast.ExVrn (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExVrn"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.ExTyc (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExTyc"))),
- meta_acc_Loc_t _loc x0),
- meta_expr _loc x1),
- meta_ctyp _loc x2)
- | Ast.ExCom (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExCom"))),
- meta_acc_Loc_t _loc x0),
- meta_expr _loc x1),
- meta_expr _loc x2)
- | Ast.ExTup (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExTup"))),
- meta_acc_Loc_t _loc x0),
- meta_expr _loc x1)
- | Ast.ExTry (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExTry"))),
- meta_acc_Loc_t _loc x0),
- meta_expr _loc x1),
- meta_match_case _loc x2)
- | Ast.ExStr (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExStr"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.ExSte (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExSte"))),
- meta_acc_Loc_t _loc x0),
- meta_expr _loc x1),
- meta_expr _loc x2)
- | Ast.ExSnd (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExSnd"))),
- meta_acc_Loc_t _loc x0),
- meta_expr _loc x1),
- meta_string _loc x2)
- | Ast.ExSeq (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExSeq"))),
- meta_acc_Loc_t _loc x0),
- meta_expr _loc x1)
- | Ast.ExRec (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExRec"))),
- meta_acc_Loc_t _loc x0),
- meta_binding _loc x1),
- meta_expr _loc x2)
- | Ast.ExOvr (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExOvr"))),
- meta_acc_Loc_t _loc x0),
- meta_binding _loc x1)
- | Ast.ExOlb (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExOlb"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_expr _loc x2)
- | Ast.ExObj (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExObj"))),
- meta_acc_Loc_t _loc x0),
- meta_patt _loc x1),
- meta_class_str_item _loc x2)
- | Ast.ExNew (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExNew"))),
- meta_acc_Loc_t _loc x0),
- meta_ident _loc x1)
- | Ast.ExMat (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExMat"))),
- meta_acc_Loc_t _loc x0),
- meta_expr _loc x1),
- meta_match_case _loc x2)
- | Ast.ExLmd (x0, x1, x2, x3) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExLmd"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_module_expr _loc x2),
- meta_expr _loc x3)
- | Ast.ExLet (x0, x1, x2, x3) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExLet"))),
- meta_acc_Loc_t _loc x0),
- meta_meta_bool _loc x1),
- meta_binding _loc x2),
- meta_expr _loc x3)
- | Ast.ExLaz (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExLaz"))),
- meta_acc_Loc_t _loc x0),
- meta_expr _loc x1)
- | Ast.ExLab (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExLab"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_expr _loc x2)
- | Ast.ExNativeInt (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExNativeInt"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.ExInt64 (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExInt64"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.ExInt32 (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExInt32"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.ExInt (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExInt"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.ExIfe (x0, x1, x2, x3) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExIfe"))),
- meta_acc_Loc_t _loc x0),
- meta_expr _loc x1),
- meta_expr _loc x2),
- meta_expr _loc x3)
- | Ast.ExFun (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExFun"))),
- meta_acc_Loc_t _loc x0),
- meta_match_case _loc x1)
- | Ast.ExFor (x0, x1, x2, x3, x4, x5) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExFor"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_expr _loc x2),
- meta_expr _loc x3),
- meta_meta_bool _loc x4),
- meta_expr _loc x5)
- | Ast.ExFlo (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExFlo"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.ExCoe (x0, x1, x2, x3) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExCoe"))),
- meta_acc_Loc_t _loc x0),
- meta_expr _loc x1),
- meta_ctyp _loc x2),
- meta_ctyp _loc x3)
- | Ast.ExChr (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExChr"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.ExAss (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExAss"))),
- meta_acc_Loc_t _loc x0),
- meta_expr _loc x1),
- meta_expr _loc x2)
- | Ast.ExAsr (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExAsr"))),
- meta_acc_Loc_t _loc x0),
- meta_expr _loc x1)
- | Ast.ExAsf x0 ->
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExAsf"))),
- meta_acc_Loc_t _loc x0)
- | Ast.ExSem (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExSem"))),
- meta_acc_Loc_t _loc x0),
- meta_expr _loc x1),
- meta_expr _loc x2)
- | Ast.ExArr (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExArr"))),
- meta_acc_Loc_t _loc x0),
- meta_expr _loc x1)
- | Ast.ExAre (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExAre"))),
- meta_acc_Loc_t _loc x0),
- meta_expr _loc x1),
- meta_expr _loc x2)
- | Ast.ExApp (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExApp"))),
- meta_acc_Loc_t _loc x0),
- meta_expr _loc x1),
- meta_expr _loc x2)
- | Ast.ExAnt (x0, x1) -> Ast.PaAnt (x0, x1)
- | Ast.ExAcc (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExAcc"))),
- meta_acc_Loc_t _loc x0),
- meta_expr _loc x1),
- meta_expr _loc x2)
- | Ast.ExId (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExId"))),
- meta_acc_Loc_t _loc x0),
- meta_ident _loc x1)
- | Ast.ExNil x0 ->
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ExNil"))),
- meta_acc_Loc_t _loc x0)
- and meta_ident _loc =
- function
- | Ast.IdAnt (x0, x1) -> Ast.PaAnt (x0, x1)
- | Ast.IdUid (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "IdUid"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.IdLid (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "IdLid"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.IdApp (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "IdApp"))),
- meta_acc_Loc_t _loc x0),
- meta_ident _loc x1),
- meta_ident _loc x2)
- | Ast.IdAcc (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "IdAcc"))),
- meta_acc_Loc_t _loc x0),
- meta_ident _loc x1),
- meta_ident _loc x2)
- and meta_match_case _loc =
- function
- | Ast.McAnt (x0, x1) -> Ast.PaAnt (x0, x1)
- | Ast.McArr (x0, x1, x2, x3) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "McArr"))),
- meta_acc_Loc_t _loc x0),
- meta_patt _loc x1),
- meta_expr _loc x2),
- meta_expr _loc x3)
- | Ast.McOr (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "McOr"))),
- meta_acc_Loc_t _loc x0),
- meta_match_case _loc x1),
- meta_match_case _loc x2)
- | Ast.McNil x0 ->
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "McNil"))),
- meta_acc_Loc_t _loc x0)
- and meta_meta_bool _loc =
- function
- | Ast.BAnt x0 -> Ast.PaAnt (_loc, x0)
- | Ast.BFalse ->
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "BFalse")))
- | Ast.BTrue ->
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "BTrue")))
- and meta_meta_list mf_a _loc =
- function
- | Ast.LAnt x0 -> Ast.PaAnt (_loc, x0)
- | Ast.LCons (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "LCons"))),
- mf_a _loc x0),
- meta_meta_list mf_a _loc x1)
- | Ast.LNil ->
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "LNil")))
- and meta_meta_option mf_a _loc =
- function
- | Ast.OAnt x0 -> Ast.PaAnt (_loc, x0)
- | Ast.OSome x0 ->
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "OSome"))),
- mf_a _loc x0)
- | Ast.ONone ->
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "ONone")))
- and meta_module_binding _loc =
- function
- | Ast.MbAnt (x0, x1) -> Ast.PaAnt (x0, x1)
- | Ast.MbCol (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "MbCol"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_module_type _loc x2)
- | Ast.MbColEq (x0, x1, x2, x3) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "MbColEq"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_module_type _loc x2),
- meta_module_expr _loc x3)
- | Ast.MbAnd (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "MbAnd"))),
- meta_acc_Loc_t _loc x0),
- meta_module_binding _loc x1),
- meta_module_binding _loc x2)
- | Ast.MbNil x0 ->
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "MbNil"))),
- meta_acc_Loc_t _loc x0)
- and meta_module_expr _loc =
- function
- | Ast.MeAnt (x0, x1) -> Ast.PaAnt (x0, x1)
- | Ast.MeTyc (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "MeTyc"))),
- meta_acc_Loc_t _loc x0),
- meta_module_expr _loc x1),
- meta_module_type _loc x2)
- | Ast.MeStr (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "MeStr"))),
- meta_acc_Loc_t _loc x0),
- meta_str_item _loc x1)
- | Ast.MeFun (x0, x1, x2, x3) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "MeFun"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_module_type _loc x2),
- meta_module_expr _loc x3)
- | Ast.MeApp (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "MeApp"))),
- meta_acc_Loc_t _loc x0),
- meta_module_expr _loc x1),
- meta_module_expr _loc x2)
- | Ast.MeId (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "MeId"))),
- meta_acc_Loc_t _loc x0),
- meta_ident _loc x1)
- and meta_module_type _loc =
- function
- | Ast.MtAnt (x0, x1) -> Ast.PaAnt (x0, x1)
- | Ast.MtWit (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "MtWit"))),
- meta_acc_Loc_t _loc x0),
- meta_module_type _loc x1),
- meta_with_constr _loc x2)
- | Ast.MtSig (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "MtSig"))),
- meta_acc_Loc_t _loc x0),
- meta_sig_item _loc x1)
- | Ast.MtQuo (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "MtQuo"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.MtFun (x0, x1, x2, x3) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "MtFun"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_module_type _loc x2),
- meta_module_type _loc x3)
- | Ast.MtId (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "MtId"))),
- meta_acc_Loc_t _loc x0),
- meta_ident _loc x1)
- and meta_patt _loc =
- function
- | Ast.PaVrn (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaVrn"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.PaTyp (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaTyp"))),
- meta_acc_Loc_t _loc x0),
- meta_ident _loc x1)
- | Ast.PaTyc (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaTyc"))),
- meta_acc_Loc_t _loc x0),
- meta_patt _loc x1),
- meta_ctyp _loc x2)
- | Ast.PaTup (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaTup"))),
- meta_acc_Loc_t _loc x0),
- meta_patt _loc x1)
- | Ast.PaStr (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaStr"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.PaEq (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaEq"))),
- meta_acc_Loc_t _loc x0),
- meta_patt _loc x1),
- meta_patt _loc x2)
- | Ast.PaRec (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaRec"))),
- meta_acc_Loc_t _loc x0),
- meta_patt _loc x1)
- | Ast.PaRng (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaRng"))),
- meta_acc_Loc_t _loc x0),
- meta_patt _loc x1),
- meta_patt _loc x2)
- | Ast.PaOrp (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaOrp"))),
- meta_acc_Loc_t _loc x0),
- meta_patt _loc x1),
- meta_patt _loc x2)
- | Ast.PaOlbi (x0, x1, x2, x3) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaOlbi"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_patt _loc x2),
- meta_expr _loc x3)
- | Ast.PaOlb (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaOlb"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_patt _loc x2)
- | Ast.PaLab (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaLab"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_patt _loc x2)
- | Ast.PaFlo (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaFlo"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.PaNativeInt (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaNativeInt"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.PaInt64 (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaInt64"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.PaInt32 (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaInt32"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.PaInt (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaInt"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.PaChr (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaChr"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1)
- | Ast.PaSem (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaSem"))),
- meta_acc_Loc_t _loc x0),
- meta_patt _loc x1),
- meta_patt _loc x2)
- | Ast.PaCom (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaCom"))),
- meta_acc_Loc_t _loc x0),
- meta_patt _loc x1),
- meta_patt _loc x2)
- | Ast.PaArr (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaArr"))),
- meta_acc_Loc_t _loc x0),
- meta_patt _loc x1)
- | Ast.PaApp (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaApp"))),
- meta_acc_Loc_t _loc x0),
- meta_patt _loc x1),
- meta_patt _loc x2)
- | Ast.PaAny x0 ->
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaAny"))),
- meta_acc_Loc_t _loc x0)
- | Ast.PaAnt (x0, x1) -> Ast.PaAnt (x0, x1)
- | Ast.PaAli (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaAli"))),
- meta_acc_Loc_t _loc x0),
- meta_patt _loc x1),
- meta_patt _loc x2)
- | Ast.PaId (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaId"))),
- meta_acc_Loc_t _loc x0),
- meta_ident _loc x1)
- | Ast.PaNil x0 ->
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "PaNil"))),
- meta_acc_Loc_t _loc x0)
- and meta_sig_item _loc =
- function
- | Ast.SgAnt (x0, x1) -> Ast.PaAnt (x0, x1)
- | Ast.SgVal (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "SgVal"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_ctyp _loc x2)
- | Ast.SgTyp (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "SgTyp"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1)
- | Ast.SgOpn (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "SgOpn"))),
- meta_acc_Loc_t _loc x0),
- meta_ident _loc x1)
- | Ast.SgMty (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "SgMty"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_module_type _loc x2)
- | Ast.SgRecMod (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "SgRecMod"))),
- meta_acc_Loc_t _loc x0),
- meta_module_binding _loc x1)
- | Ast.SgMod (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "SgMod"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_module_type _loc x2)
- | Ast.SgInc (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "SgInc"))),
- meta_acc_Loc_t _loc x0),
- meta_module_type _loc x1)
- | Ast.SgExt (x0, x1, x2, x3) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "SgExt"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_ctyp _loc x2),
- meta_meta_list meta_string _loc x3)
- | Ast.SgExc (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "SgExc"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1)
- | Ast.SgDir (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "SgDir"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_expr _loc x2)
- | Ast.SgSem (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "SgSem"))),
- meta_acc_Loc_t _loc x0),
- meta_sig_item _loc x1),
- meta_sig_item _loc x2)
- | Ast.SgClt (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "SgClt"))),
- meta_acc_Loc_t _loc x0),
- meta_class_type _loc x1)
- | Ast.SgCls (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "SgCls"))),
- meta_acc_Loc_t _loc x0),
- meta_class_type _loc x1)
- | Ast.SgNil x0 ->
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "SgNil"))),
- meta_acc_Loc_t _loc x0)
- and meta_str_item _loc =
- function
- | Ast.StAnt (x0, x1) -> Ast.PaAnt (x0, x1)
- | Ast.StVal (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "StVal"))),
- meta_acc_Loc_t _loc x0),
- meta_meta_bool _loc x1),
- meta_binding _loc x2)
- | Ast.StTyp (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "StTyp"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1)
- | Ast.StOpn (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "StOpn"))),
- meta_acc_Loc_t _loc x0),
- meta_ident _loc x1)
- | Ast.StMty (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "StMty"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_module_type _loc x2)
- | Ast.StRecMod (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "StRecMod"))),
- meta_acc_Loc_t _loc x0),
- meta_module_binding _loc x1)
- | Ast.StMod (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "StMod"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_module_expr _loc x2)
- | Ast.StInc (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "StInc"))),
- meta_acc_Loc_t _loc x0),
- meta_module_expr _loc x1)
- | Ast.StExt (x0, x1, x2, x3) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "StExt"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_ctyp _loc x2),
- meta_meta_list meta_string _loc x3)
- | Ast.StExp (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "StExp"))),
- meta_acc_Loc_t _loc x0),
- meta_expr _loc x1)
- | Ast.StExc (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "StExc"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1),
- meta_meta_option meta_ident _loc x2)
- | Ast.StDir (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "StDir"))),
- meta_acc_Loc_t _loc x0),
- meta_string _loc x1),
- meta_expr _loc x2)
- | Ast.StSem (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "StSem"))),
- meta_acc_Loc_t _loc x0),
- meta_str_item _loc x1),
- meta_str_item _loc x2)
- | Ast.StClt (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "StClt"))),
- meta_acc_Loc_t _loc x0),
- meta_class_type _loc x1)
- | Ast.StCls (x0, x1) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "StCls"))),
- meta_acc_Loc_t _loc x0),
- meta_class_expr _loc x1)
- | Ast.StNil x0 ->
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "StNil"))),
- meta_acc_Loc_t _loc x0)
- and meta_with_constr _loc =
- function
- | Ast.WcAnt (x0, x1) -> Ast.PaAnt (x0, x1)
- | Ast.WcAnd (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "WcAnd"))),
- meta_acc_Loc_t _loc x0),
- meta_with_constr _loc x1),
- meta_with_constr _loc x2)
- | Ast.WcMod (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "WcMod"))),
- meta_acc_Loc_t _loc x0),
- meta_ident _loc x1),
- meta_ident _loc x2)
- | Ast.WcTyp (x0, x1, x2) ->
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc,
- Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "WcTyp"))),
- meta_acc_Loc_t _loc x0),
- meta_ctyp _loc x1),
- meta_ctyp _loc x2)
- | Ast.WcNil x0 ->
- Ast.PaApp (_loc,
- Ast.PaId (_loc,
- Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
- Ast.IdUid (_loc, "WcNil"))),
- meta_acc_Loc_t _loc x0)
- end
- end
- end
- class map =
- object (o)
- method string = fun x -> (x : string)
- method int = fun x -> (x : int)
- method float = fun x -> (x : float)
- method bool = fun x -> (x : bool)
- method list : 'a 'b. ('a -> 'b) -> 'a list -> 'b list = List.
- map
- method option : 'a 'b. ('a -> 'b) -> 'a option -> 'b option =
- fun f -> function | None -> None | Some x -> Some (f x)
- method array : 'a 'b. ('a -> 'b) -> 'a array -> 'b array =
- Array.map
- method ref : 'a 'b. ('a -> 'b) -> 'a ref -> 'b ref =
- fun f { contents = x } -> { contents = f x; }
- method _Loc_t : Loc.t -> Loc.t = fun x -> x
- method with_constr : with_constr -> with_constr =
- function
- | WcNil _x0 -> WcNil (o#_Loc_t _x0)
- | WcTyp (_x0, _x1, _x2) ->
- WcTyp (o#_Loc_t _x0, o#ctyp _x1, o#ctyp _x2)
- | WcMod (_x0, _x1, _x2) ->
- WcMod (o#_Loc_t _x0, o#ident _x1, o#ident _x2)
- | WcAnd (_x0, _x1, _x2) ->
- WcAnd (o#_Loc_t _x0, o#with_constr _x1,
- o#with_constr _x2)
- | WcAnt (_x0, _x1) -> WcAnt (o#_Loc_t _x0, o#string _x1)
- method str_item : str_item -> str_item =
- function
- | StNil _x0 -> StNil (o#_Loc_t _x0)
- | StCls (_x0, _x1) ->
- StCls (o#_Loc_t _x0, o#class_expr _x1)
- | StClt (_x0, _x1) ->
- StClt (o#_Loc_t _x0, o#class_type _x1)
- | StSem (_x0, _x1, _x2) ->
- StSem (o#_Loc_t _x0, o#str_item _x1, o#str_item _x2)
- | StDir (_x0, _x1, _x2) ->
- StDir (o#_Loc_t _x0, o#string _x1, o#expr _x2)
- | StExc (_x0, _x1, _x2) ->
- StExc (o#_Loc_t _x0, o#ctyp _x1,
- o#meta_option o#ident _x2)
- | StExp (_x0, _x1) -> StExp (o#_Loc_t _x0, o#expr _x1)
- | StExt (_x0, _x1, _x2, _x3) ->
- StExt (o#_Loc_t _x0, o#string _x1, o#ctyp _x2,
- o#meta_list o#string _x3)
- | StInc (_x0, _x1) ->
- StInc (o#_Loc_t _x0, o#module_expr _x1)
- | StMod (_x0, _x1, _x2) ->
- StMod (o#_Loc_t _x0, o#string _x1, o#module_expr _x2)
- | StRecMod (_x0, _x1) ->
- StRecMod (o#_Loc_t _x0, o#module_binding _x1)
- | StMty (_x0, _x1, _x2) ->
- StMty (o#_Loc_t _x0, o#string _x1, o#module_type _x2)
- | StOpn (_x0, _x1) -> StOpn (o#_Loc_t _x0, o#ident _x1)
- | StTyp (_x0, _x1) -> StTyp (o#_Loc_t _x0, o#ctyp _x1)
- | StVal (_x0, _x1, _x2) ->
- StVal (o#_Loc_t _x0, o#meta_bool _x1, o#binding _x2)
- | StAnt (_x0, _x1) -> StAnt (o#_Loc_t _x0, o#string _x1)
- method sig_item : sig_item -> sig_item =
- function
- | SgNil _x0 -> SgNil (o#_Loc_t _x0)
- | SgCls (_x0, _x1) ->
- SgCls (o#_Loc_t _x0, o#class_type _x1)
- | SgClt (_x0, _x1) ->
- SgClt (o#_Loc_t _x0, o#class_type _x1)
- | SgSem (_x0, _x1, _x2) ->
- SgSem (o#_Loc_t _x0, o#sig_item _x1, o#sig_item _x2)
- | SgDir (_x0, _x1, _x2) ->
- SgDir (o#_Loc_t _x0, o#string _x1, o#expr _x2)
- | SgExc (_x0, _x1) -> SgExc (o#_Loc_t _x0, o#ctyp _x1)
- | SgExt (_x0, _x1, _x2, _x3) ->
- SgExt (o#_Loc_t _x0, o#string _x1, o#ctyp _x2,
- o#meta_list o#string _x3)
- | SgInc (_x0, _x1) ->
- SgInc (o#_Loc_t _x0, o#module_type _x1)
- | SgMod (_x0, _x1, _x2) ->
- SgMod (o#_Loc_t _x0, o#string _x1, o#module_type _x2)
- | SgRecMod (_x0, _x1) ->
- SgRecMod (o#_Loc_t _x0, o#module_binding _x1)
- | SgMty (_x0, _x1, _x2) ->
- SgMty (o#_Loc_t _x0, o#string _x1, o#module_type _x2)
- | SgOpn (_x0, _x1) -> SgOpn (o#_Loc_t _x0, o#ident _x1)
- | SgTyp (_x0, _x1) -> SgTyp (o#_Loc_t _x0, o#ctyp _x1)
- | SgVal (_x0, _x1, _x2) ->
- SgVal (o#_Loc_t _x0, o#string _x1, o#ctyp _x2)
- | SgAnt (_x0, _x1) -> SgAnt (o#_Loc_t _x0, o#string _x1)
- method patt : patt -> patt =
- function
- | PaNil _x0 -> PaNil (o#_Loc_t _x0)
- | PaId (_x0, _x1) -> PaId (o#_Loc_t _x0, o#ident _x1)
- | PaAli (_x0, _x1, _x2) ->
- PaAli (o#_Loc_t _x0, o#patt _x1, o#patt _x2)
- | PaAnt (_x0, _x1) -> PaAnt (o#_Loc_t _x0, o#string _x1)
- | PaAny _x0 -> PaAny (o#_Loc_t _x0)
- | PaApp (_x0, _x1, _x2) ->
- PaApp (o#_Loc_t _x0, o#patt _x1, o#patt _x2)
- | PaArr (_x0, _x1) -> PaArr (o#_Loc_t _x0, o#patt _x1)
- | PaCom (_x0, _x1, _x2) ->
- PaCom (o#_Loc_t _x0, o#patt _x1, o#patt _x2)
- | PaSem (_x0, _x1, _x2) ->
- PaSem (o#_Loc_t _x0, o#patt _x1, o#patt _x2)
- | PaChr (_x0, _x1) -> PaChr (o#_Loc_t _x0, o#string _x1)
- | PaInt (_x0, _x1) -> PaInt (o#_Loc_t _x0, o#string _x1)
- | PaInt32 (_x0, _x1) ->
- PaInt32 (o#_Loc_t _x0, o#string _x1)
- | PaInt64 (_x0, _x1) ->
- PaInt64 (o#_Loc_t _x0, o#string _x1)
- | PaNativeInt (_x0, _x1) ->
- PaNativeInt (o#_Loc_t _x0, o#string _x1)
- | PaFlo (_x0, _x1) -> PaFlo (o#_Loc_t _x0, o#string _x1)
- | PaLab (_x0, _x1, _x2) ->
- PaLab (o#_Loc_t _x0, o#string _x1, o#patt _x2)
- | PaOlb (_x0, _x1, _x2) ->
- PaOlb (o#_Loc_t _x0, o#string _x1, o#patt _x2)
- | PaOlbi (_x0, _x1, _x2, _x3) ->
- PaOlbi (o#_Loc_t _x0, o#string _x1, o#patt _x2,
- o#expr _x3)
- | PaOrp (_x0, _x1, _x2) ->
- PaOrp (o#_Loc_t _x0, o#patt _x1, o#patt _x2)
- | PaRng (_x0, _x1, _x2) ->
- PaRng (o#_Loc_t _x0, o#patt _x1, o#patt _x2)
- | PaRec (_x0, _x1) -> PaRec (o#_Loc_t _x0, o#patt _x1)
- | PaEq (_x0, _x1, _x2) ->
- PaEq (o#_Loc_t _x0, o#patt _x1, o#patt _x2)
- | PaStr (_x0, _x1) -> PaStr (o#_Loc_t _x0, o#string _x1)
- | PaTup (_x0, _x1) -> PaTup (o#_Loc_t _x0, o#patt _x1)
- | PaTyc (_x0, _x1, _x2) ->
- PaTyc (o#_Loc_t _x0, o#patt _x1, o#ctyp _x2)
- | PaTyp (_x0, _x1) -> PaTyp (o#_Loc_t _x0, o#ident _x1)
- | PaVrn (_x0, _x1) -> PaVrn (o#_Loc_t _x0, o#string _x1)
- method module_type : module_type -> module_type =
- function
- | MtId (_x0, _x1) -> MtId (o#_Loc_t _x0, o#ident _x1)
- | MtFun (_x0, _x1, _x2, _x3) ->
- MtFun (o#_Loc_t _x0, o#string _x1, o#module_type _x2,
- o#module_type _x3)
- | MtQuo (_x0, _x1) -> MtQuo (o#_Loc_t _x0, o#string _x1)
- | MtSig (_x0, _x1) -> MtSig (o#_Loc_t _x0, o#sig_item _x1)
- | MtWit (_x0, _x1, _x2) ->
- MtWit (o#_Loc_t _x0, o#module_type _x1,
- o#with_constr _x2)
- | MtAnt (_x0, _x1) -> MtAnt (o#_Loc_t _x0, o#string _x1)
- method module_expr : module_expr -> module_expr =
- function
- | MeId (_x0, _x1) -> MeId (o#_Loc_t _x0, o#ident _x1)
- | MeApp (_x0, _x1, _x2) ->
- MeApp (o#_Loc_t _x0, o#module_expr _x1,
- o#module_expr _x2)
- | MeFun (_x0, _x1, _x2, _x3) ->
- MeFun (o#_Loc_t _x0, o#string _x1, o#module_type _x2,
- o#module_expr _x3)
- | MeStr (_x0, _x1) -> MeStr (o#_Loc_t _x0, o#str_item _x1)
- | MeTyc (_x0, _x1, _x2) ->
- MeTyc (o#_Loc_t _x0, o#module_expr _x1,
- o#module_type _x2)
- | MeAnt (_x0, _x1) -> MeAnt (o#_Loc_t _x0, o#string _x1)
- method module_binding : module_binding -> module_binding =
- function
- | MbNil _x0 -> MbNil (o#_Loc_t _x0)
- | MbAnd (_x0, _x1, _x2) ->
- MbAnd (o#_Loc_t _x0, o#module_binding _x1,
- o#module_binding _x2)
- | MbColEq (_x0, _x1, _x2, _x3) ->
- MbColEq (o#_Loc_t _x0, o#string _x1, o#module_type _x2,
- o#module_expr _x3)
- | MbCol (_x0, _x1, _x2) ->
- MbCol (o#_Loc_t _x0, o#string _x1, o#module_type _x2)
- | MbAnt (_x0, _x1) -> MbAnt (o#_Loc_t _x0, o#string _x1)
- method meta_option :
- 'a 'b. ('a -> 'b) -> 'a meta_option -> 'b meta_option =
- fun _f_a ->
- function
- | ONone -> ONone
- | OSome _x0 -> OSome (_f_a _x0)
- | OAnt _x0 -> OAnt (o#string _x0)
- method meta_list :
- 'a 'b. ('a -> 'b) -> 'a meta_list -> 'b meta_list =
- fun _f_a ->
- function
- | LNil -> LNil
- | LCons (_x0, _x1) ->
- LCons (_f_a _x0, o#meta_list _f_a _x1)
- | LAnt _x0 -> LAnt (o#string _x0)
- method meta_bool : meta_bool -> meta_bool =
- function
- | BTrue -> BTrue
- | BFalse -> BFalse
- | BAnt _x0 -> BAnt (o#string _x0)
- method match_case : match_case -> match_case =
- function
- | McNil _x0 -> McNil (o#_Loc_t _x0)
- | McOr (_x0, _x1, _x2) ->
- McOr (o#_Loc_t _x0, o#match_case _x1, o#match_case _x2)
- | McArr (_x0, _x1, _x2, _x3) ->
- McArr (o#_Loc_t _x0, o#patt _x1, o#expr _x2,
- o#expr _x3)
- | McAnt (_x0, _x1) -> McAnt (o#_Loc_t _x0, o#string _x1)
- method ident : ident -> ident =
- function
- | IdAcc (_x0, _x1, _x2) ->
- IdAcc (o#_Loc_t _x0, o#ident _x1, o#ident _x2)
- | IdApp (_x0, _x1, _x2) ->
- IdApp (o#_Loc_t _x0, o#ident _x1, o#ident _x2)
- | IdLid (_x0, _x1) -> IdLid (o#_Loc_t _x0, o#string _x1)
- | IdUid (_x0, _x1) -> IdUid (o#_Loc_t _x0, o#string _x1)
- | IdAnt (_x0, _x1) -> IdAnt (o#_Loc_t _x0, o#string _x1)
- method expr : expr -> expr =
- function
- | ExNil _x0 -> ExNil (o#_Loc_t _x0)
- | ExId (_x0, _x1) -> ExId (o#_Loc_t _x0, o#ident _x1)
- | ExAcc (_x0, _x1, _x2) ->
- ExAcc (o#_Loc_t _x0, o#expr _x1, o#expr _x2)
- | ExAnt (_x0, _x1) -> ExAnt (o#_Loc_t _x0, o#string _x1)
- | ExApp (_x0, _x1, _x2) ->
- ExApp (o#_Loc_t _x0, o#expr _x1, o#expr _x2)
- | ExAre (_x0, _x1, _x2) ->
- ExAre (o#_Loc_t _x0, o#expr _x1, o#expr _x2)
- | ExArr (_x0, _x1) -> ExArr (o#_Loc_t _x0, o#expr _x1)
- | ExSem (_x0, _x1, _x2) ->
- ExSem (o#_Loc_t _x0, o#expr _x1, o#expr _x2)
- | ExAsf _x0 -> ExAsf (o#_Loc_t _x0)
- | ExAsr (_x0, _x1) -> ExAsr (o#_Loc_t _x0, o#expr _x1)
- | ExAss (_x0, _x1, _x2) ->
- ExAss (o#_Loc_t _x0, o#expr _x1, o#expr _x2)
- | ExChr (_x0, _x1) -> ExChr (o#_Loc_t _x0, o#string _x1)
- | ExCoe (_x0, _x1, _x2, _x3) ->
- ExCoe (o#_Loc_t _x0, o#expr _x1, o#ctyp _x2,
- o#ctyp _x3)
- | ExFlo (_x0, _x1) -> ExFlo (o#_Loc_t _x0, o#string _x1)
- | ExFor (_x0, _x1, _x2, _x3, _x4, _x5) ->
- ExFor (o#_Loc_t _x0, o#string _x1, o#expr _x2,
- o#expr _x3, o#meta_bool _x4, o#expr _x5)
- | ExFun (_x0, _x1) ->
- ExFun (o#_Loc_t _x0, o#match_case _x1)
- | ExIfe (_x0, _x1, _x2, _x3) ->
- ExIfe (o#_Loc_t _x0, o#expr _x1, o#expr _x2,
- o#expr _x3)
- | ExInt (_x0, _x1) -> ExInt (o#_Loc_t _x0, o#string _x1)
- | ExInt32 (_x0, _x1) ->
- ExInt32 (o#_Loc_t _x0, o#string _x1)
- | ExInt64 (_x0, _x1) ->
- ExInt64 (o#_Loc_t _x0, o#string _x1)
- | ExNativeInt (_x0, _x1) ->
- ExNativeInt (o#_Loc_t _x0, o#string _x1)
- | ExLab (_x0, _x1, _x2) ->
- ExLab (o#_Loc_t _x0, o#string _x1, o#expr _x2)
- | ExLaz (_x0, _x1) -> ExLaz (o#_Loc_t _x0, o#expr _x1)
- | ExLet (_x0, _x1, _x2, _x3) ->
- ExLet (o#_Loc_t _x0, o#meta_bool _x1, o#binding _x2,
- o#expr _x3)
- | ExLmd (_x0, _x1, _x2, _x3) ->
- ExLmd (o#_Loc_t _x0, o#string _x1, o#module_expr _x2,
- o#expr _x3)
- | ExMat (_x0, _x1, _x2) ->
- ExMat (o#_Loc_t _x0, o#expr _x1, o#match_case _x2)
- | ExNew (_x0, _x1) -> ExNew (o#_Loc_t _x0, o#ident _x1)
- | ExObj (_x0, _x1, _x2) ->
- ExObj (o#_Loc_t _x0, o#patt _x1, o#class_str_item _x2)
- | ExOlb (_x0, _x1, _x2) ->
- ExOlb (o#_Loc_t _x0, o#string _x1, o#expr _x2)
- | ExOvr (_x0, _x1) -> ExOvr (o#_Loc_t _x0, o#binding _x1)
- | ExRec (_x0, _x1, _x2) ->
- ExRec (o#_Loc_t _x0, o#binding _x1, o#expr _x2)
- | ExSeq (_x0, _x1) -> ExSeq (o#_Loc_t _x0, o#expr _x1)
- | ExSnd (_x0, _x1, _x2) ->
- ExSnd (o#_Loc_t _x0, o#expr _x1, o#string _x2)
- | ExSte (_x0, _x1, _x2) ->
- ExSte (o#_Loc_t _x0, o#expr _x1, o#expr _x2)
- | ExStr (_x0, _x1) -> ExStr (o#_Loc_t _x0, o#string _x1)
- | ExTry (_x0, _x1, _x2) ->
- ExTry (o#_Loc_t _x0, o#expr _x1, o#match_case _x2)
- | ExTup (_x0, _x1) -> ExTup (o#_Loc_t _x0, o#expr _x1)
- | ExCom (_x0, _x1, _x2) ->
- ExCom (o#_Loc_t _x0, o#expr _x1, o#expr _x2)
- | ExTyc (_x0, _x1, _x2) ->
- ExTyc (o#_Loc_t _x0, o#expr _x1, o#ctyp _x2)
- | ExVrn (_x0, _x1) -> ExVrn (o#_Loc_t _x0, o#string _x1)
- | ExWhi (_x0, _x1, _x2) ->
- ExWhi (o#_Loc_t _x0, o#expr _x1, o#expr _x2)
- method ctyp : ctyp -> ctyp =
- function
- | TyNil _x0 -> TyNil (o#_Loc_t _x0)
- | TyAli (_x0, _x1, _x2) ->
- TyAli (o#_Loc_t _x0, o#ctyp _x1, o#ctyp _x2)
- | TyAny _x0 -> TyAny (o#_Loc_t _x0)
- | TyApp (_x0, _x1, _x2) ->
- TyApp (o#_Loc_t _x0, o#ctyp _x1, o#ctyp _x2)
- | TyArr (_x0, _x1, _x2) ->
- TyArr (o#_Loc_t _x0, o#ctyp _x1, o#ctyp _x2)
- | TyCls (_x0, _x1) -> TyCls (o#_Loc_t _x0, o#ident _x1)
- | TyLab (_x0, _x1, _x2) ->
- TyLab (o#_Loc_t _x0, o#string _x1, o#ctyp _x2)
- | TyId (_x0, _x1) -> TyId (o#_Loc_t _x0, o#ident _x1)
- | TyMan (_x0, _x1, _x2) ->
- TyMan (o#_Loc_t _x0, o#ctyp _x1, o#ctyp _x2)
- | TyDcl (_x0, _x1, _x2, _x3, _x4) ->
- TyDcl (o#_Loc_t _x0, o#string _x1, o#list o#ctyp _x2,
- o#ctyp _x3,
- o#list
- (fun (_x0, _x1) -> ((o#ctyp _x0), (o#ctyp _x1)))
- _x4)
- | TyObj (_x0, _x1, _x2) ->
- TyObj (o#_Loc_t _x0, o#ctyp _x1, o#meta_bool _x2)
- | TyOlb (_x0, _x1, _x2) ->
- TyOlb (o#_Loc_t _x0, o#string _x1, o#ctyp _x2)
- | TyPol (_x0, _x1, _x2) ->
- TyPol (o#_Loc_t _x0, o#ctyp _x1, o#ctyp _x2)
- | TyQuo (_x0, _x1) -> TyQuo (o#_Loc_t _x0, o#string _x1)
- | TyQuP (_x0, _x1) -> TyQuP (o#_Loc_t _x0, o#string _x1)
- | TyQuM (_x0, _x1) -> TyQuM (o#_Loc_t _x0, o#string _x1)
- | TyVrn (_x0, _x1) -> TyVrn (o#_Loc_t _x0, o#string _x1)
- | TyRec (_x0, _x1) -> TyRec (o#_Loc_t _x0, o#ctyp _x1)
- | TyCol (_x0, _x1, _x2) ->
- TyCol (o#_Loc_t _x0, o#ctyp _x1, o#ctyp _x2)
- | TySem (_x0, _x1, _x2) ->
- TySem (o#_Loc_t _x0, o#ctyp _x1, o#ctyp _x2)
- | TyCom (_x0, _x1, _x2) ->
- TyCom (o#_Loc_t _x0, o#ctyp _x1, o#ctyp _x2)
- | TySum (_x0, _x1) -> TySum (o#_Loc_t _x0, o#ctyp _x1)
- | TyOf (_x0, _x1, _x2) ->
- TyOf (o#_Loc_t _x0, o#ctyp _x1, o#ctyp _x2)
- | TyAnd (_x0, _x1, _x2) ->
- TyAnd (o#_Loc_t _x0, o#ctyp _x1, o#ctyp _x2)
- | TyOr (_x0, _x1, _x2) ->
- TyOr (o#_Loc_t _x0, o#ctyp _x1, o#ctyp _x2)
- | TyPrv (_x0, _x1) -> TyPrv (o#_Loc_t _x0, o#ctyp _x1)
- | TyMut (_x0, _x1) -> TyMut (o#_Loc_t _x0, o#ctyp _x1)
- | TyTup (_x0, _x1) -> TyTup (o#_Loc_t _x0, o#ctyp _x1)
- | TySta (_x0, _x1, _x2) ->
- TySta (o#_Loc_t _x0, o#ctyp _x1, o#ctyp _x2)
- | TyVrnEq (_x0, _x1) -> TyVrnEq (o#_Loc_t _x0, o#ctyp _x1)
- | TyVrnSup (_x0, _x1) ->
- TyVrnSup (o#_Loc_t _x0, o#ctyp _x1)
- | TyVrnInf (_x0, _x1) ->
- TyVrnInf (o#_Loc_t _x0, o#ctyp _x1)
- | TyVrnInfSup (_x0, _x1, _x2) ->
- TyVrnInfSup (o#_Loc_t _x0, o#ctyp _x1, o#ctyp _x2)
- | TyAmp (_x0, _x1, _x2) ->
- TyAmp (o#_Loc_t _x0, o#ctyp _x1, o#ctyp _x2)
- | TyOfAmp (_x0, _x1, _x2) ->
- TyOfAmp (o#_Loc_t _x0, o#ctyp _x1, o#ctyp _x2)
- | TyAnt (_x0, _x1) -> TyAnt (o#_Loc_t _x0, o#string _x1)
- method class_type : class_type -> class_type =
- function
- | CtNil _x0 -> CtNil (o#_Loc_t _x0)
- | CtCon (_x0, _x1, _x2, _x3) ->
- CtCon (o#_Loc_t _x0, o#meta_bool _x1, o#ident _x2,
- o#ctyp _x3)
- | CtFun (_x0, _x1, _x2) ->
- CtFun (o#_Loc_t _x0, o#ctyp _x1, o#class_type _x2)
- | CtSig (_x0, _x1, _x2) ->
- CtSig (o#_Loc_t _x0, o#ctyp _x1, o#class_sig_item _x2)
- | CtAnd (_x0, _x1, _x2) ->
- CtAnd (o#_Loc_t _x0, o#class_type _x1,
- o#class_type _x2)
- | CtCol (_x0, _x1, _x2) ->
- CtCol (o#_Loc_t _x0, o#class_type _x1,
- o#class_type _x2)
- | CtEq (_x0, _x1, _x2) ->
- CtEq (o#_Loc_t _x0, o#class_type _x1, o#class_type _x2)
- | CtAnt (_x0, _x1) -> CtAnt (o#_Loc_t _x0, o#string _x1)
- method class_str_item : class_str_item -> class_str_item =
- function
- | CrNil _x0 -> CrNil (o#_Loc_t _x0)
- | CrSem (_x0, _x1, _x2) ->
- CrSem (o#_Loc_t _x0, o#class_str_item _x1,
- o#class_str_item _x2)
- | CrCtr (_x0, _x1, _x2) ->
- CrCtr (o#_Loc_t _x0, o#ctyp _x1, o#ctyp _x2)
- | CrInh (_x0, _x1, _x2) ->
- CrInh (o#_Loc_t _x0, o#class_expr _x1, o#string _x2)
- | CrIni (_x0, _x1) -> CrIni (o#_Loc_t _x0, o#expr _x1)
- | CrMth (_x0, _x1, _x2, _x3, _x4) ->
- CrMth (o#_Loc_t _x0, o#string _x1, o#meta_bool _x2,
- o#expr _x3, o#ctyp _x4)
- | CrVal (_x0, _x1, _x2, _x3) ->
- CrVal (o#_Loc_t _x0, o#string _x1, o#meta_bool _x2,
- o#expr _x3)
- | CrVir (_x0, _x1, _x2, _x3) ->
- CrVir (o#_Loc_t _x0, o#string _x1, o#meta_bool _x2,
- o#ctyp _x3)
- | CrVvr (_x0, _x1, _x2, _x3) ->
- CrVvr (o#_Loc_t _x0, o#string _x1, o#meta_bool _x2,
- o#ctyp _x3)
- | CrAnt (_x0, _x1) -> CrAnt (o#_Loc_t _x0, o#string _x1)
- method class_sig_item : class_sig_item -> class_sig_item =
- function
- | CgNil _x0 -> CgNil (o#_Loc_t _x0)
- | CgCtr (_x0, _x1, _x2) ->
- CgCtr (o#_Loc_t _x0, o#ctyp _x1, o#ctyp _x2)
- | CgSem (_x0, _x1, _x2) ->
- CgSem (o#_Loc_t _x0, o#class_sig_item _x1,
- o#class_sig_item _x2)
- | CgInh (_x0, _x1) ->
- CgInh (o#_Loc_t _x0, o#class_type _x1)
- | CgMth (_x0, _x1, _x2, _x3) ->
- CgMth (o#_Loc_t _x0, o#string _x1, o#meta_bool _x2,
- o#ctyp _x3)
- | CgVal (_x0, _x1, _x2, _x3, _x4) ->
- CgVal (o#_Loc_t _x0, o#string _x1, o#meta_bool _x2,
- o#meta_bool _x3, o#ctyp _x4)
- | CgVir (_x0, _x1, _x2, _x3) ->
- CgVir (o#_Loc_t _x0, o#string _x1, o#meta_bool _x2,
- o#ctyp _x3)
- | CgAnt (_x0, _x1) -> CgAnt (o#_Loc_t _x0, o#string _x1)
- method class_expr : class_expr -> class_expr =
- function
- | CeNil _x0 -> CeNil (o#_Loc_t _x0)
- | CeApp (_x0, _x1, _x2) ->
- CeApp (o#_Loc_t _x0, o#class_expr _x1, o#expr _x2)
- | CeCon (_x0, _x1, _x2, _x3) ->
- CeCon (o#_Loc_t _x0, o#meta_bool _x1, o#ident _x2,
- o#ctyp _x3)
- | CeFun (_x0, _x1, _x2) ->
- CeFun (o#_Loc_t _x0, o#patt _x1, o#class_expr _x2)
- | CeLet (_x0, _x1, _x2, _x3) ->
- CeLet (o#_Loc_t _x0, o#meta_bool _x1, o#binding _x2,
- o#class_expr _x3)
- | CeStr (_x0, _x1, _x2) ->
- CeStr (o#_Loc_t _x0, o#patt _x1, o#class_str_item _x2)
- | CeTyc (_x0, _x1, _x2) ->
- CeTyc (o#_Loc_t _x0, o#class_expr _x1,
- o#class_type _x2)
- | CeAnd (_x0, _x1, _x2) ->
- CeAnd (o#_Loc_t _x0, o#class_expr _x1,
- o#class_expr _x2)
- | CeEq (_x0, _x1, _x2) ->
- CeEq (o#_Loc_t _x0, o#class_expr _x1, o#class_expr _x2)
- | CeAnt (_x0, _x1) -> CeAnt (o#_Loc_t _x0, o#string _x1)
- method binding : binding -> binding =
- function
- | BiNil _x0 -> BiNil (o#_Loc_t _x0)
- | BiAnd (_x0, _x1, _x2) ->
- BiAnd (o#_Loc_t _x0, o#binding _x1, o#binding _x2)
- | BiSem (_x0, _x1, _x2) ->
- BiSem (o#_Loc_t _x0, o#binding _x1, o#binding _x2)
- | BiEq (_x0, _x1, _x2) ->
- BiEq (o#_Loc_t _x0, o#patt _x1, o#expr _x2)
- | BiAnt (_x0, _x1) -> BiAnt (o#_Loc_t _x0, o#string _x1)
- end
- class fold =
- object ((o : 'self_type))
- method string = fun (_ : string) -> (o : 'self_type)
- method int = fun (_ : int) -> (o : 'self_type)
- method float = fun (_ : float) -> (o : 'self_type)
- method bool = fun (_ : bool) -> (o : 'self_type)
- method list :
- 'a.
- ('self_type -> 'a -> 'self_type) -> 'a list -> 'self_type =
- fun f -> List.fold_left f o
- method option :
- 'a.
- ('self_type -> 'a -> 'self_type) ->
- 'a option -> 'self_type =
- fun f -> function | None -> o | Some x -> f o x
- method array :
- 'a.
- ('self_type -> 'a -> 'self_type) ->
- 'a array -> 'self_type =
- fun f -> Array.fold_left f o
- method ref :
- 'a.
- ('self_type -> 'a -> 'self_type) -> 'a ref -> 'self_type =
- fun f { contents = x } -> f o x
- method _Loc_t : Loc.t -> 'self_type = fun _ -> o
- method with_constr : with_constr -> 'self_type =
- function
- | WcNil _x0 -> o#_Loc_t _x0
- | WcTyp (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
- | WcMod (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#ident _x1)#ident _x2
- | WcAnd (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#with_constr _x1)#with_constr _x2
- | WcAnt (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
- method str_item : str_item -> 'self_type =
- function
- | StNil _x0 -> o#_Loc_t _x0
- | StCls (_x0, _x1) -> (o#_Loc_t _x0)#class_expr _x1
- | StClt (_x0, _x1) -> (o#_Loc_t _x0)#class_type _x1
- | StSem (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#str_item _x1)#str_item _x2
- | StDir (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#string _x1)#expr _x2
- | StExc (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#ctyp _x1)#meta_option
- (fun o -> o#ident) _x2
- | StExp (_x0, _x1) -> (o#_Loc_t _x0)#expr _x1
- | StExt (_x0, _x1, _x2, _x3) ->
- (((o#_Loc_t _x0)#string _x1)#ctyp _x2)#meta_list
- (fun o -> o#string) _x3
- | StInc (_x0, _x1) -> (o#_Loc_t _x0)#module_expr _x1
- | StMod (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#string _x1)#module_expr _x2
- | StRecMod (_x0, _x1) -> (o#_Loc_t _x0)#module_binding _x1
- | StMty (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#string _x1)#module_type _x2
- | StOpn (_x0, _x1) -> (o#_Loc_t _x0)#ident _x1
- | StTyp (_x0, _x1) -> (o#_Loc_t _x0)#ctyp _x1
- | StVal (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#meta_bool _x1)#binding _x2
- | StAnt (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
- method sig_item : sig_item -> 'self_type =
- function
- | SgNil _x0 -> o#_Loc_t _x0
- | SgCls (_x0, _x1) -> (o#_Loc_t _x0)#class_type _x1
- | SgClt (_x0, _x1) -> (o#_Loc_t _x0)#class_type _x1
- | SgSem (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#sig_item _x1)#sig_item _x2
- | SgDir (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#string _x1)#expr _x2
- | SgExc (_x0, _x1) -> (o#_Loc_t _x0)#ctyp _x1
- | SgExt (_x0, _x1, _x2, _x3) ->
- (((o#_Loc_t _x0)#string _x1)#ctyp _x2)#meta_list
- (fun o -> o#string) _x3
- | SgInc (_x0, _x1) -> (o#_Loc_t _x0)#module_type _x1
- | SgMod (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#string _x1)#module_type _x2
- | SgRecMod (_x0, _x1) -> (o#_Loc_t _x0)#module_binding _x1
- | SgMty (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#string _x1)#module_type _x2
- | SgOpn (_x0, _x1) -> (o#_Loc_t _x0)#ident _x1
- | SgTyp (_x0, _x1) -> (o#_Loc_t _x0)#ctyp _x1
- | SgVal (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#string _x1)#ctyp _x2
- | SgAnt (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
- method patt : patt -> 'self_type =
- function
- | PaNil _x0 -> o#_Loc_t _x0
- | PaId (_x0, _x1) -> (o#_Loc_t _x0)#ident _x1
- | PaAli (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#patt _x1)#patt _x2
- | PaAnt (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
- | PaAny _x0 -> o#_Loc_t _x0
- | PaApp (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#patt _x1)#patt _x2
- | PaArr (_x0, _x1) -> (o#_Loc_t _x0)#patt _x1
- | PaCom (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#patt _x1)#patt _x2
- | PaSem (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#patt _x1)#patt _x2
- | PaChr (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
- | PaInt (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
- | PaInt32 (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
- | PaInt64 (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
- | PaNativeInt (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
- | PaFlo (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
- | PaLab (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#string _x1)#patt _x2
- | PaOlb (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#string _x1)#patt _x2
- | PaOlbi (_x0, _x1, _x2, _x3) ->
- (((o#_Loc_t _x0)#string _x1)#patt _x2)#expr _x3
- | PaOrp (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#patt _x1)#patt _x2
- | PaRng (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#patt _x1)#patt _x2
- | PaRec (_x0, _x1) -> (o#_Loc_t _x0)#patt _x1
- | PaEq (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#patt _x1)#patt _x2
- | PaStr (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
- | PaTup (_x0, _x1) -> (o#_Loc_t _x0)#patt _x1
- | PaTyc (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#patt _x1)#ctyp _x2
- | PaTyp (_x0, _x1) -> (o#_Loc_t _x0)#ident _x1
- | PaVrn (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
- method module_type : module_type -> 'self_type =
- function
- | MtId (_x0, _x1) -> (o#_Loc_t _x0)#ident _x1
- | MtFun (_x0, _x1, _x2, _x3) ->
- (((o#_Loc_t _x0)#string _x1)#module_type _x2)#
- module_type _x3
- | MtQuo (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
- | MtSig (_x0, _x1) -> (o#_Loc_t _x0)#sig_item _x1
- | MtWit (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#module_type _x1)#with_constr _x2
- | MtAnt (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
- method module_expr : module_expr -> 'self_type =
- function
- | MeId (_x0, _x1) -> (o#_Loc_t _x0)#ident _x1
- | MeApp (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#module_expr _x1)#module_expr _x2
- | MeFun (_x0, _x1, _x2, _x3) ->
- (((o#_Loc_t _x0)#string _x1)#module_type _x2)#
- module_expr _x3
- | MeStr (_x0, _x1) -> (o#_Loc_t _x0)#str_item _x1
- | MeTyc (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#module_expr _x1)#module_type _x2
- | MeAnt (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
- method module_binding : module_binding -> 'self_type =
- function
- | MbNil _x0 -> o#_Loc_t _x0
- | MbAnd (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#module_binding _x1)#module_binding _x2
- | MbColEq (_x0, _x1, _x2, _x3) ->
- (((o#_Loc_t _x0)#string _x1)#module_type _x2)#
- module_expr _x3
- | MbCol (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#string _x1)#module_type _x2
- | MbAnt (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
- method meta_option :
- 'a.
- ('self_type -> 'a -> 'self_type) ->
- 'a meta_option -> 'self_type =
- fun _f_a ->
- function
- | ONone -> o
- | OSome _x0 -> _f_a o _x0
- | OAnt _x0 -> o#string _x0
- method meta_list :
- 'a.
- ('self_type -> 'a -> 'self_type) ->
- 'a meta_list -> 'self_type =
- fun _f_a ->
- function
- | LNil -> o
- | LCons (_x0, _x1) ->
- (_f_a o _x0)#meta_list (fun o -> _f_a o) _x1
- | LAnt _x0 -> o#string _x0
- method meta_bool : meta_bool -> 'self_type =
- function
- | BTrue -> o
- | BFalse -> o
- | BAnt _x0 -> o#string _x0
- method match_case : match_case -> 'self_type =
- function
- | McNil _x0 -> o#_Loc_t _x0
- | McOr (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#match_case _x1)#match_case _x2
- | McArr (_x0, _x1, _x2, _x3) ->
- (((o#_Loc_t _x0)#patt _x1)#expr _x2)#expr _x3
- | McAnt (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
- method ident : ident -> 'self_type =
- function
- | IdAcc (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#ident _x1)#ident _x2
- | IdApp (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#ident _x1)#ident _x2
- | IdLid (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
- | IdUid (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
- | IdAnt (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
- method expr : expr -> 'self_type =
- function
- | ExNil _x0 -> o#_Loc_t _x0
- | ExId (_x0, _x1) -> (o#_Loc_t _x0)#ident _x1
- | ExAcc (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#expr _x1)#expr _x2
- | ExAnt (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
- | ExApp (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#expr _x1)#expr _x2
- | ExAre (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#expr _x1)#expr _x2
- | ExArr (_x0, _x1) -> (o#_Loc_t _x0)#expr _x1
- | ExSem (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#expr _x1)#expr _x2
- | ExAsf _x0 -> o#_Loc_t _x0
- | ExAsr (_x0, _x1) -> (o#_Loc_t _x0)#expr _x1
- | ExAss (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#expr _x1)#expr _x2
- | ExChr (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
- | ExCoe (_x0, _x1, _x2, _x3) ->
- (((o#_Loc_t _x0)#expr _x1)#ctyp _x2)#ctyp _x3
- | ExFlo (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
- | ExFor (_x0, _x1, _x2, _x3, _x4, _x5) ->
- (((((o#_Loc_t _x0)#string _x1)#expr _x2)#expr _x3)#
- meta_bool _x4)#
- expr _x5
- | ExFun (_x0, _x1) -> (o#_Loc_t _x0)#match_case _x1
- | ExIfe (_x0, _x1, _x2, _x3) ->
- (((o#_Loc_t _x0)#expr _x1)#expr _x2)#expr _x3
- | ExInt (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
- | ExInt32 (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
- | ExInt64 (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
- | ExNativeInt (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
- | ExLab (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#string _x1)#expr _x2
- | ExLaz (_x0, _x1) -> (o#_Loc_t _x0)#expr _x1
- | ExLet (_x0, _x1, _x2, _x3) ->
- (((o#_Loc_t _x0)#meta_bool _x1)#binding _x2)#expr _x3
- | ExLmd (_x0, _x1, _x2, _x3) ->
- (((o#_Loc_t _x0)#string _x1)#module_expr _x2)#expr _x3
- | ExMat (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#expr _x1)#match_case _x2
- | ExNew (_x0, _x1) -> (o#_Loc_t _x0)#ident _x1
- | ExObj (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#patt _x1)#class_str_item _x2
- | ExOlb (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#string _x1)#expr _x2
- | ExOvr (_x0, _x1) -> (o#_Loc_t _x0)#binding _x1
- | ExRec (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#binding _x1)#expr _x2
- | ExSeq (_x0, _x1) -> (o#_Loc_t _x0)#expr _x1
- | ExSnd (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#expr _x1)#string _x2
- | ExSte (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#expr _x1)#expr _x2
- | ExStr (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
- | ExTry (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#expr _x1)#match_case _x2
- | ExTup (_x0, _x1) -> (o#_Loc_t _x0)#expr _x1
- | ExCom (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#expr _x1)#expr _x2
- | ExTyc (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#expr _x1)#ctyp _x2
- | ExVrn (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
- | ExWhi (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#expr _x1)#expr _x2
- method ctyp : ctyp -> 'self_type =
- function
- | TyNil _x0 -> o#_Loc_t _x0
- | TyAli (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
- | TyAny _x0 -> o#_Loc_t _x0
- | TyApp (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
- | TyArr (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
- | TyCls (_x0, _x1) -> (o#_Loc_t _x0)#ident _x1
- | TyLab (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#string _x1)#ctyp _x2
- | TyId (_x0, _x1) -> (o#_Loc_t _x0)#ident _x1
- | TyMan (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
- | TyDcl (_x0, _x1, _x2, _x3, _x4) ->
- ((((o#_Loc_t _x0)#string _x1)#list (fun o -> o#ctyp)
- _x2)#
- ctyp _x3)#
- list (fun o (_x0, _x1) -> (o#ctyp _x0)#ctyp _x1) _x4
- | TyObj (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#ctyp _x1)#meta_bool _x2
- | TyOlb (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#string _x1)#ctyp _x2
- | TyPol (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
- | TyQuo (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
- | TyQuP (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
- | TyQuM (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
- | TyVrn (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
- | TyRec (_x0, _x1) -> (o#_Loc_t _x0)#ctyp _x1
- | TyCol (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
- | TySem (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
- | TyCom (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
- | TySum (_x0, _x1) -> (o#_Loc_t _x0)#ctyp _x1
- | TyOf (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
- | TyAnd (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
- | TyOr (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
- | TyPrv (_x0, _x1) -> (o#_Loc_t _x0)#ctyp _x1
- | TyMut (_x0, _x1) -> (o#_Loc_t _x0)#ctyp _x1
- | TyTup (_x0, _x1) -> (o#_Loc_t _x0)#ctyp _x1
- | TySta (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
- | TyVrnEq (_x0, _x1) -> (o#_Loc_t _x0)#ctyp _x1
- | TyVrnSup (_x0, _x1) -> (o#_Loc_t _x0)#ctyp _x1
- | TyVrnInf (_x0, _x1) -> (o#_Loc_t _x0)#ctyp _x1
- | TyVrnInfSup (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
- | TyAmp (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
- | TyOfAmp (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
- | TyAnt (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
- method class_type : class_type -> 'self_type =
- function
- | CtNil _x0 -> o#_Loc_t _x0
- | CtCon (_x0, _x1, _x2, _x3) ->
- (((o#_Loc_t _x0)#meta_bool _x1)#ident _x2)#ctyp _x3
- | CtFun (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#ctyp _x1)#class_type _x2
- | CtSig (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#ctyp _x1)#class_sig_item _x2
- | CtAnd (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#class_type _x1)#class_type _x2
- | CtCol (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#class_type _x1)#class_type _x2
- | CtEq (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#class_type _x1)#class_type _x2
- | CtAnt (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
- method class_str_item : class_str_item -> 'self_type =
- function
- | CrNil _x0 -> o#_Loc_t _x0
- | CrSem (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#class_str_item _x1)#class_str_item _x2
- | CrCtr (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
- | CrInh (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#class_expr _x1)#string _x2
- | CrIni (_x0, _x1) -> (o#_Loc_t _x0)#expr _x1
- | CrMth (_x0, _x1, _x2, _x3, _x4) ->
- ((((o#_Loc_t _x0)#string _x1)#meta_bool _x2)#expr _x3)#
- ctyp _x4
- | CrVal (_x0, _x1, _x2, _x3) ->
- (((o#_Loc_t _x0)#string _x1)#meta_bool _x2)#expr _x3
- | CrVir (_x0, _x1, _x2, _x3) ->
- (((o#_Loc_t _x0)#string _x1)#meta_bool _x2)#ctyp _x3
- | CrVvr (_x0, _x1, _x2, _x3) ->
- (((o#_Loc_t _x0)#string _x1)#meta_bool _x2)#ctyp _x3
- | CrAnt (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
- method class_sig_item : class_sig_item -> 'self_type =
- function
- | CgNil _x0 -> o#_Loc_t _x0
- | CgCtr (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
- | CgSem (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#class_sig_item _x1)#class_sig_item _x2
- | CgInh (_x0, _x1) -> (o#_Loc_t _x0)#class_type _x1
- | CgMth (_x0, _x1, _x2, _x3) ->
- (((o#_Loc_t _x0)#string _x1)#meta_bool _x2)#ctyp _x3
- | CgVal (_x0, _x1, _x2, _x3, _x4) ->
- ((((o#_Loc_t _x0)#string _x1)#meta_bool _x2)#meta_bool
- _x3)#
- ctyp _x4
- | CgVir (_x0, _x1, _x2, _x3) ->
- (((o#_Loc_t _x0)#string _x1)#meta_bool _x2)#ctyp _x3
- | CgAnt (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
- method class_expr : class_expr -> 'self_type =
- function
- | CeNil _x0 -> o#_Loc_t _x0
- | CeApp (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#class_expr _x1)#expr _x2
- | CeCon (_x0, _x1, _x2, _x3) ->
- (((o#_Loc_t _x0)#meta_bool _x1)#ident _x2)#ctyp _x3
- | CeFun (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#patt _x1)#class_expr _x2
- | CeLet (_x0, _x1, _x2, _x3) ->
- (((o#_Loc_t _x0)#meta_bool _x1)#binding _x2)#class_expr
- _x3
- | CeStr (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#patt _x1)#class_str_item _x2
- | CeTyc (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#class_expr _x1)#class_type _x2
- | CeAnd (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#class_expr _x1)#class_expr _x2
- | CeEq (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#class_expr _x1)#class_expr _x2
- | CeAnt (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
- method binding : binding -> 'self_type =
- function
- | BiNil _x0 -> o#_Loc_t _x0
- | BiAnd (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#binding _x1)#binding _x2
- | BiSem (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#binding _x1)#binding _x2
- | BiEq (_x0, _x1, _x2) ->
- ((o#_Loc_t _x0)#patt _x1)#expr _x2
- | BiAnt (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
- end
- class c_expr f =
- object inherit map as super
- method expr = fun x -> f (super#expr x)
- end
- class c_patt f =
- object inherit map as super
- method patt = fun x -> f (super#patt x)
- end
- class c_ctyp f =
- object inherit map as super
- method ctyp = fun x -> f (super#ctyp x)
- end
- class c_str_item f =
- object inherit map as super
- method str_item = fun x -> f (super#str_item x)
- end
- class c_sig_item f =
- object inherit map as super
- method sig_item = fun x -> f (super#sig_item x)
- end
- class c_loc f =
- object inherit map as super
- method _Loc_t = fun x -> f (super#_Loc_t x)
- end
- let map_patt f ast = (new c_patt f)#patt ast
- let map_loc f ast = (new c_loc f)#_Loc_t ast
- let map_sig_item f ast = (new c_sig_item f)#sig_item ast
- let map_str_item f ast = (new c_str_item f)#str_item ast
- let map_ctyp f ast = (new c_ctyp f)#ctyp ast
- let map_expr f ast = (new c_expr f)#expr ast
let ghost = Loc.ghost
let rec is_module_longident =
function
(is_module_longident i1) && (is_module_longident i2)
| Ast.IdUid (_, _) -> true
| _ -> false
+ let ident_of_expr =
+ let error () =
+ invalid_arg
+ "ident_of_expr: this expression is not an identifier" in
+ let rec self =
+ function
+ | Ast.ExApp (_loc, e1, e2) ->
+ Ast.IdApp (_loc, self e1, self e2)
+ | Ast.ExAcc (_loc, e1, e2) ->
+ Ast.IdAcc (_loc, self e1, self e2)
+ | Ast.ExId (_, (Ast.IdLid (_, _))) -> error ()
+ | Ast.ExId (_, i) ->
+ if is_module_longident i then i else error ()
+ | _ -> error ()
+ in
+ function
+ | Ast.ExId (_, i) -> i
+ | Ast.ExApp (_, _, _) -> error ()
+ | t -> self t
+ let ident_of_ctyp =
+ let error () =
+ invalid_arg "ident_of_ctyp: this type is not an identifier" in
+ let rec self =
+ function
+ | Ast.TyApp (_loc, t1, t2) ->
+ Ast.IdApp (_loc, self t1, self t2)
+ | Ast.TyId (_, (Ast.IdLid (_, _))) -> error ()
+ | Ast.TyId (_, i) ->
+ if is_module_longident i then i else error ()
+ | _ -> error ()
+ in function | Ast.TyId (_, i) -> i | t -> self t
+ let ident_of_patt =
+ let error () =
+ invalid_arg
+ "ident_of_patt: this pattern is not an identifier" in
+ let rec self =
+ function
+ | Ast.PaApp (_loc, p1, p2) ->
+ Ast.IdApp (_loc, self p1, self p2)
+ | Ast.PaId (_, (Ast.IdLid (_, _))) -> error ()
+ | Ast.PaId (_, i) ->
+ if is_module_longident i then i else error ()
+ | _ -> error ()
+ in function | Ast.PaId (_, i) -> i | p -> self p
let rec is_irrefut_patt =
function
| Ast.PaId (_, (Ast.IdLid (_, _))) -> true
| Ast.PaAli (_, x, y) ->
(is_irrefut_patt x) && (is_irrefut_patt y)
| Ast.PaRec (_, p) -> is_irrefut_patt p
- | Ast.PaEq (_, (Ast.PaId (_, (Ast.IdLid (_, _)))), p) ->
- is_irrefut_patt p
+ | Ast.PaEq (_, (Ast.IdLid (_, _)), p) -> is_irrefut_patt p
| Ast.PaSem (_, p1, p2) ->
(is_irrefut_patt p1) && (is_irrefut_patt p2)
| Ast.PaCom (_, p1, p2) ->
(is_expr_constructor e1) && (is_expr_constructor e2)
| Ast.ExVrn (_, _) -> true
| _ -> false
- let ident_of_expr =
- let error () =
- invalid_arg
- "ident_of_expr: this expression is not an identifier" in
- let rec self =
- function
- | Ast.ExApp (_loc, e1, e2) ->
- Ast.IdApp (_loc, self e1, self e2)
- | Ast.ExAcc (_loc, e1, e2) ->
- Ast.IdAcc (_loc, self e1, self e2)
- | Ast.ExId (_, (Ast.IdLid (_, _))) -> error ()
- | Ast.ExId (_, i) ->
- if is_module_longident i then i else error ()
- | _ -> error ()
- in
- function
- | Ast.ExId (_, i) -> i
- | Ast.ExApp (_, _, _) -> error ()
- | t -> self t
- let ident_of_ctyp =
- let error () =
- invalid_arg "ident_of_ctyp: this type is not an identifier" in
- let rec self =
- function
- | Ast.TyApp (_loc, t1, t2) ->
- Ast.IdApp (_loc, self t1, self t2)
- | Ast.TyId (_, (Ast.IdLid (_, _))) -> error ()
- | Ast.TyId (_, i) ->
- if is_module_longident i then i else error ()
- | _ -> error ()
- in function | Ast.TyId (_, i) -> i | t -> self t
let rec tyOr_of_list =
function
| [] -> Ast.TyNil ghost
| t :: ts ->
let _loc = loc_of_ctyp t
in Ast.TySem (_loc, t, tySem_of_list ts)
+ let rec tyCom_of_list =
+ function
+ | [] -> Ast.TyNil ghost
+ | [ t ] -> t
+ | t :: ts ->
+ let _loc = loc_of_ctyp t
+ in Ast.TyCom (_loc, t, tyCom_of_list ts)
+ let rec tyAmp_of_list =
+ function
+ | [] -> Ast.TyNil ghost
+ | [ t ] -> t
+ | t :: ts ->
+ let _loc = loc_of_ctyp t
+ in Ast.TyAmp (_loc, t, tyAmp_of_list ts)
+ let rec tySta_of_list =
+ function
+ | [] -> Ast.TyNil ghost
+ | [ t ] -> t
+ | t :: ts ->
+ let _loc = loc_of_ctyp t
+ in Ast.TySta (_loc, t, tySta_of_list ts)
let rec stSem_of_list =
function
| [] -> Ast.StNil ghost
| b :: bs ->
let _loc = loc_of_binding b
in Ast.BiAnd (_loc, b, biAnd_of_list bs)
+ let rec rbSem_of_list =
+ function
+ | [] -> Ast.RbNil ghost
+ | [ b ] -> b
+ | b :: bs ->
+ let _loc = loc_of_rec_binding b
+ in Ast.RbSem (_loc, b, rbSem_of_list bs)
let rec wcAnd_of_list =
function
| [] -> Ast.WcNil ghost
| x :: xs ->
let _loc = loc_of_patt x
in Ast.PaCom (_loc, x, paCom_of_list xs)
- let rec biSem_of_list =
- function
- | [] -> Ast.BiNil ghost
- | [ x ] -> x
- | x :: xs ->
- let _loc = loc_of_binding x
- in Ast.BiSem (_loc, x, biSem_of_list xs)
let rec exSem_of_list =
function
| [] -> Ast.ExNil ghost
let binding_of_pel l = biAnd_of_list (List.map bi_of_pe l)
let rec pel_of_binding =
function
- | Ast.BiAnd (_, b1, b2) ->
- (pel_of_binding b1) @ (pel_of_binding b2)
- | Ast.BiEq (_, p, e) -> [ (p, e) ]
- | Ast.BiSem (_, b1, b2) ->
- (pel_of_binding b1) @ (pel_of_binding b2)
- | _ -> assert false
- let rec list_of_binding x acc =
- match x with
- | Ast.BiAnd (_, b1, b2) | Ast.BiSem (_, b1, b2) ->
- list_of_binding b1 (list_of_binding b2 acc)
- | t -> t :: acc
- let rec list_of_with_constr x acc =
- match x with
- | Ast.WcAnd (_, w1, w2) ->
- list_of_with_constr w1 (list_of_with_constr w2 acc)
- | t -> t :: acc
- let rec list_of_ctyp x acc =
- match x with
- | Ast.TyNil _ -> acc
- | Ast.TyAmp (_, x, y) | Ast.TyCom (_, x, y) |
- Ast.TySta (_, x, y) | Ast.TySem (_, x, y) |
- Ast.TyAnd (_, x, y) | Ast.TyOr (_, x, y) ->
- list_of_ctyp x (list_of_ctyp y acc)
- | x -> x :: acc
- let rec list_of_patt x acc =
- match x with
- | Ast.PaNil _ -> acc
- | Ast.PaCom (_, x, y) | Ast.PaSem (_, x, y) ->
- list_of_patt x (list_of_patt y acc)
- | x -> x :: acc
- let rec list_of_expr x acc =
- match x with
- | Ast.ExNil _ -> acc
- | Ast.ExCom (_, x, y) | Ast.ExSem (_, x, y) ->
- list_of_expr x (list_of_expr y acc)
- | x -> x :: acc
- let rec list_of_str_item x acc =
- match x with
- | Ast.StNil _ -> acc
- | Ast.StSem (_, x, y) ->
- list_of_str_item x (list_of_str_item y acc)
- | x -> x :: acc
- let rec list_of_sig_item x acc =
- match x with
- | Ast.SgNil _ -> acc
- | Ast.SgSem (_, x, y) ->
- list_of_sig_item x (list_of_sig_item y acc)
- | x -> x :: acc
- let rec list_of_class_sig_item x acc =
- match x with
- | Ast.CgNil _ -> acc
- | Ast.CgSem (_, x, y) ->
- list_of_class_sig_item x (list_of_class_sig_item y acc)
- | x -> x :: acc
- let rec list_of_class_str_item x acc =
- match x with
- | Ast.CrNil _ -> acc
- | Ast.CrSem (_, x, y) ->
- list_of_class_str_item x (list_of_class_str_item y acc)
- | x -> x :: acc
- let rec list_of_class_type x acc =
- match x with
- | Ast.CtAnd (_, x, y) ->
- list_of_class_type x (list_of_class_type y acc)
- | x -> x :: acc
- let rec list_of_class_expr x acc =
- match x with
- | Ast.CeAnd (_, x, y) ->
- list_of_class_expr x (list_of_class_expr y acc)
- | x -> x :: acc
- let rec list_of_module_expr x acc =
- match x with
- | Ast.MeApp (_, x, y) ->
- list_of_module_expr x (list_of_module_expr y acc)
- | x -> x :: acc
- let rec list_of_match_case x acc =
- match x with
- | Ast.McNil _ -> acc
- | Ast.McOr (_, x, y) ->
- list_of_match_case x (list_of_match_case y acc)
- | x -> x :: acc
- let rec list_of_ident x acc =
- match x with
- | Ast.IdAcc (_, x, y) | Ast.IdApp (_, x, y) ->
- list_of_ident x (list_of_ident y acc)
- | x -> x :: acc
- let rec list_of_module_binding x acc =
- match x with
- | Ast.MbAnd (_, x, y) ->
- list_of_module_binding x (list_of_module_binding y acc)
- | x -> x :: acc
+ | Ast.BiAnd (_, b1, b2) ->
+ (pel_of_binding b1) @ (pel_of_binding b2)
+ | Ast.BiEq (_, p, e) -> [ (p, e) ]
+ | _ -> assert false
+ let rec list_of_binding x acc =
+ match x with
+ | Ast.BiAnd (_, b1, b2) ->
+ list_of_binding b1 (list_of_binding b2 acc)
+ | t -> t :: acc
+ let rec list_of_rec_binding x acc =
+ match x with
+ | Ast.RbSem (_, b1, b2) ->
+ list_of_rec_binding b1 (list_of_rec_binding b2 acc)
+ | t -> t :: acc
+ let rec list_of_with_constr x acc =
+ match x with
+ | Ast.WcAnd (_, w1, w2) ->
+ list_of_with_constr w1 (list_of_with_constr w2 acc)
+ | t -> t :: acc
+ let rec list_of_ctyp x acc =
+ match x with
+ | Ast.TyNil _ -> acc
+ | Ast.TyAmp (_, x, y) | Ast.TyCom (_, x, y) |
+ Ast.TySta (_, x, y) | Ast.TySem (_, x, y) |
+ Ast.TyAnd (_, x, y) | Ast.TyOr (_, x, y) ->
+ list_of_ctyp x (list_of_ctyp y acc)
+ | x -> x :: acc
+ let rec list_of_patt x acc =
+ match x with
+ | Ast.PaNil _ -> acc
+ | Ast.PaCom (_, x, y) | Ast.PaSem (_, x, y) ->
+ list_of_patt x (list_of_patt y acc)
+ | x -> x :: acc
+ let rec list_of_expr x acc =
+ match x with
+ | Ast.ExNil _ -> acc
+ | Ast.ExCom (_, x, y) | Ast.ExSem (_, x, y) ->
+ list_of_expr x (list_of_expr y acc)
+ | x -> x :: acc
+ let rec list_of_str_item x acc =
+ match x with
+ | Ast.StNil _ -> acc
+ | Ast.StSem (_, x, y) ->
+ list_of_str_item x (list_of_str_item y acc)
+ | x -> x :: acc
+ let rec list_of_sig_item x acc =
+ match x with
+ | Ast.SgNil _ -> acc
+ | Ast.SgSem (_, x, y) ->
+ list_of_sig_item x (list_of_sig_item y acc)
+ | x -> x :: acc
+ let rec list_of_class_sig_item x acc =
+ match x with
+ | Ast.CgNil _ -> acc
+ | Ast.CgSem (_, x, y) ->
+ list_of_class_sig_item x (list_of_class_sig_item y acc)
+ | x -> x :: acc
+ let rec list_of_class_str_item x acc =
+ match x with
+ | Ast.CrNil _ -> acc
+ | Ast.CrSem (_, x, y) ->
+ list_of_class_str_item x (list_of_class_str_item y acc)
+ | x -> x :: acc
+ let rec list_of_class_type x acc =
+ match x with
+ | Ast.CtAnd (_, x, y) ->
+ list_of_class_type x (list_of_class_type y acc)
+ | x -> x :: acc
+ let rec list_of_class_expr x acc =
+ match x with
+ | Ast.CeAnd (_, x, y) ->
+ list_of_class_expr x (list_of_class_expr y acc)
+ | x -> x :: acc
+ let rec list_of_module_expr x acc =
+ match x with
+ | Ast.MeApp (_, x, y) ->
+ list_of_module_expr x (list_of_module_expr y acc)
+ | x -> x :: acc
+ let rec list_of_match_case x acc =
+ match x with
+ | Ast.McNil _ -> acc
+ | Ast.McOr (_, x, y) ->
+ list_of_match_case x (list_of_match_case y acc)
+ | x -> x :: acc
+ let rec list_of_ident x acc =
+ match x with
+ | Ast.IdAcc (_, x, y) | Ast.IdApp (_, x, y) ->
+ list_of_ident x (list_of_ident y acc)
+ | x -> x :: acc
+ let rec list_of_module_binding x acc =
+ match x with
+ | Ast.MbAnd (_, x, y) ->
+ list_of_module_binding x (list_of_module_binding y acc)
+ | x -> x :: acc
+ module Meta =
+ struct
+ module type META_LOC =
+ sig
+ val meta_loc_patt : Loc.t -> Loc.t -> Ast.patt
+ val meta_loc_expr : Loc.t -> Loc.t -> Ast.expr
+ end
+ module MetaLoc =
+ struct
+ let meta_loc_patt _loc location =
+ let (a, b, c, d, e, f, g, h) = Loc.to_tuple location
+ in
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Loc"),
+ Ast.IdLid (_loc, "of_tuple"))),
+ Ast.PaTup (_loc,
+ Ast.PaCom (_loc,
+ Ast.PaStr (_loc, Ast.safe_string_escaped a),
+ Ast.PaCom (_loc,
+ Ast.PaCom (_loc,
+ Ast.PaCom (_loc,
+ Ast.PaCom (_loc,
+ Ast.PaCom (_loc,
+ Ast.PaCom (_loc,
+ Ast.PaInt (_loc, string_of_int b),
+ Ast.PaInt (_loc, string_of_int c)),
+ Ast.PaInt (_loc, string_of_int d)),
+ Ast.PaInt (_loc, string_of_int e)),
+ Ast.PaInt (_loc, string_of_int f)),
+ Ast.PaInt (_loc, string_of_int g)),
+ if h
+ then
+ Ast.PaId (_loc, Ast.IdUid (_loc, "True"))
+ else
+ Ast.PaId (_loc, Ast.IdUid (_loc, "False"))))))
+ let meta_loc_expr _loc location =
+ let (a, b, c, d, e, f, g, h) = Loc.to_tuple location
+ in
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Loc"),
+ Ast.IdLid (_loc, "of_tuple"))),
+ Ast.ExTup (_loc,
+ Ast.ExCom (_loc,
+ Ast.ExStr (_loc, Ast.safe_string_escaped a),
+ Ast.ExCom (_loc,
+ Ast.ExCom (_loc,
+ Ast.ExCom (_loc,
+ Ast.ExCom (_loc,
+ Ast.ExCom (_loc,
+ Ast.ExCom (_loc,
+ Ast.ExInt (_loc, string_of_int b),
+ Ast.ExInt (_loc, string_of_int c)),
+ Ast.ExInt (_loc, string_of_int d)),
+ Ast.ExInt (_loc, string_of_int e)),
+ Ast.ExInt (_loc, string_of_int f)),
+ Ast.ExInt (_loc, string_of_int g)),
+ if h
+ then
+ Ast.ExId (_loc, Ast.IdUid (_loc, "True"))
+ else
+ Ast.ExId (_loc, Ast.IdUid (_loc, "False"))))))
+ end
+ module MetaGhostLoc =
+ struct
+ let meta_loc_patt _loc _ =
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Loc"),
+ Ast.IdLid (_loc, "ghost")))
+ let meta_loc_expr _loc _ =
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Loc"),
+ Ast.IdLid (_loc, "ghost")))
+ end
+ module MetaLocVar =
+ struct
+ let meta_loc_patt _loc _ =
+ Ast.PaId (_loc, Ast.IdLid (_loc, !Loc.name))
+ let meta_loc_expr _loc _ =
+ Ast.ExId (_loc, Ast.IdLid (_loc, !Loc.name))
+ end
+ module Make (MetaLoc : META_LOC) =
+ struct
+ open MetaLoc
+ let meta_acc_Loc_t = meta_loc_expr
+ module Expr =
+ struct
+ let meta_string _loc s = Ast.ExStr (_loc, s)
+ let meta_int _loc s = Ast.ExInt (_loc, s)
+ let meta_float _loc s = Ast.ExFlo (_loc, s)
+ let meta_char _loc s = Ast.ExChr (_loc, s)
+ let meta_bool _loc =
+ function
+ | false ->
+ Ast.ExId (_loc, Ast.IdUid (_loc, "False"))
+ | true -> Ast.ExId (_loc, Ast.IdUid (_loc, "True"))
+ let rec meta_list mf_a _loc =
+ function
+ | [] -> Ast.ExId (_loc, Ast.IdUid (_loc, "[]"))
+ | x :: xs ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc, Ast.IdUid (_loc, "::")),
+ mf_a _loc x),
+ meta_list mf_a _loc xs)
+ let rec meta_binding _loc =
+ function
+ | Ast.BiAnt (x0, x1) -> Ast.ExAnt (x0, x1)
+ | Ast.BiEq (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "BiEq"))),
+ meta_acc_Loc_t _loc x0),
+ meta_patt _loc x1),
+ meta_expr _loc x2)
+ | Ast.BiAnd (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "BiAnd"))),
+ meta_acc_Loc_t _loc x0),
+ meta_binding _loc x1),
+ meta_binding _loc x2)
+ | Ast.BiNil x0 ->
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "BiNil"))),
+ meta_acc_Loc_t _loc x0)
+ and meta_class_expr _loc =
+ function
+ | Ast.CeAnt (x0, x1) -> Ast.ExAnt (x0, x1)
+ | Ast.CeEq (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CeEq"))),
+ meta_acc_Loc_t _loc x0),
+ meta_class_expr _loc x1),
+ meta_class_expr _loc x2)
+ | Ast.CeAnd (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CeAnd"))),
+ meta_acc_Loc_t _loc x0),
+ meta_class_expr _loc x1),
+ meta_class_expr _loc x2)
+ | Ast.CeTyc (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CeTyc"))),
+ meta_acc_Loc_t _loc x0),
+ meta_class_expr _loc x1),
+ meta_class_type _loc x2)
+ | Ast.CeStr (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CeStr"))),
+ meta_acc_Loc_t _loc x0),
+ meta_patt _loc x1),
+ meta_class_str_item _loc x2)
+ | Ast.CeLet (x0, x1, x2, x3) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CeLet"))),
+ meta_acc_Loc_t _loc x0),
+ meta_meta_bool _loc x1),
+ meta_binding _loc x2),
+ meta_class_expr _loc x3)
+ | Ast.CeFun (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CeFun"))),
+ meta_acc_Loc_t _loc x0),
+ meta_patt _loc x1),
+ meta_class_expr _loc x2)
+ | Ast.CeCon (x0, x1, x2, x3) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CeCon"))),
+ meta_acc_Loc_t _loc x0),
+ meta_meta_bool _loc x1),
+ meta_ident _loc x2),
+ meta_ctyp _loc x3)
+ | Ast.CeApp (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CeApp"))),
+ meta_acc_Loc_t _loc x0),
+ meta_class_expr _loc x1),
+ meta_expr _loc x2)
+ | Ast.CeNil x0 ->
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CeNil"))),
+ meta_acc_Loc_t _loc x0)
+ and meta_class_sig_item _loc =
+ function
+ | Ast.CgAnt (x0, x1) -> Ast.ExAnt (x0, x1)
+ | Ast.CgVir (x0, x1, x2, x3) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CgVir"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_meta_bool _loc x2),
+ meta_ctyp _loc x3)
+ | Ast.CgVal (x0, x1, x2, x3, x4) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CgVal"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_meta_bool _loc x2),
+ meta_meta_bool _loc x3),
+ meta_ctyp _loc x4)
+ | Ast.CgMth (x0, x1, x2, x3) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CgMth"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_meta_bool _loc x2),
+ meta_ctyp _loc x3)
+ | Ast.CgInh (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CgInh"))),
+ meta_acc_Loc_t _loc x0),
+ meta_class_type _loc x1)
+ | Ast.CgSem (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CgSem"))),
+ meta_acc_Loc_t _loc x0),
+ meta_class_sig_item _loc x1),
+ meta_class_sig_item _loc x2)
+ | Ast.CgCtr (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CgCtr"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.CgNil x0 ->
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CgNil"))),
+ meta_acc_Loc_t _loc x0)
+ and meta_class_str_item _loc =
+ function
+ | Ast.CrAnt (x0, x1) -> Ast.ExAnt (x0, x1)
+ | Ast.CrVvr (x0, x1, x2, x3) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CrVvr"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_meta_bool _loc x2),
+ meta_ctyp _loc x3)
+ | Ast.CrVir (x0, x1, x2, x3) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CrVir"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_meta_bool _loc x2),
+ meta_ctyp _loc x3)
+ | Ast.CrVal (x0, x1, x2, x3) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CrVal"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_meta_bool _loc x2),
+ meta_expr _loc x3)
+ | Ast.CrMth (x0, x1, x2, x3, x4) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CrMth"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_meta_bool _loc x2),
+ meta_expr _loc x3),
+ meta_ctyp _loc x4)
+ | Ast.CrIni (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CrIni"))),
+ meta_acc_Loc_t _loc x0),
+ meta_expr _loc x1)
+ | Ast.CrInh (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CrInh"))),
+ meta_acc_Loc_t _loc x0),
+ meta_class_expr _loc x1),
+ meta_string _loc x2)
+ | Ast.CrCtr (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CrCtr"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.CrSem (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CrSem"))),
+ meta_acc_Loc_t _loc x0),
+ meta_class_str_item _loc x1),
+ meta_class_str_item _loc x2)
+ | Ast.CrNil x0 ->
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CrNil"))),
+ meta_acc_Loc_t _loc x0)
+ and meta_class_type _loc =
+ function
+ | Ast.CtAnt (x0, x1) -> Ast.ExAnt (x0, x1)
+ | Ast.CtEq (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CtEq"))),
+ meta_acc_Loc_t _loc x0),
+ meta_class_type _loc x1),
+ meta_class_type _loc x2)
+ | Ast.CtCol (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CtCol"))),
+ meta_acc_Loc_t _loc x0),
+ meta_class_type _loc x1),
+ meta_class_type _loc x2)
+ | Ast.CtAnd (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CtAnd"))),
+ meta_acc_Loc_t _loc x0),
+ meta_class_type _loc x1),
+ meta_class_type _loc x2)
+ | Ast.CtSig (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CtSig"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1),
+ meta_class_sig_item _loc x2)
+ | Ast.CtFun (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CtFun"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1),
+ meta_class_type _loc x2)
+ | Ast.CtCon (x0, x1, x2, x3) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CtCon"))),
+ meta_acc_Loc_t _loc x0),
+ meta_meta_bool _loc x1),
+ meta_ident _loc x2),
+ meta_ctyp _loc x3)
+ | Ast.CtNil x0 ->
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CtNil"))),
+ meta_acc_Loc_t _loc x0)
+ and meta_ctyp _loc =
+ function
+ | Ast.TyAnt (x0, x1) -> Ast.ExAnt (x0, x1)
+ | Ast.TyOfAmp (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyOfAmp"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.TyAmp (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyAmp"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.TyVrnInfSup (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyVrnInfSup"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.TyVrnInf (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyVrnInf"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1)
+ | Ast.TyVrnSup (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyVrnSup"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1)
+ | Ast.TyVrnEq (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyVrnEq"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1)
+ | Ast.TySta (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TySta"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.TyTup (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyTup"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1)
+ | Ast.TyMut (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyMut"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1)
+ | Ast.TyPrv (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyPrv"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1)
+ | Ast.TyOr (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyOr"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.TyAnd (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyAnd"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.TyOf (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyOf"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.TySum (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TySum"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1)
+ | Ast.TyCom (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyCom"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.TySem (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TySem"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.TyCol (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyCol"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.TyRec (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyRec"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1)
+ | Ast.TyVrn (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyVrn"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.TyQuM (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyQuM"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.TyQuP (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyQuP"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.TyQuo (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyQuo"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.TyPol (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyPol"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.TyOlb (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyOlb"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.TyObj (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyObj"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1),
+ meta_meta_bool _loc x2)
+ | Ast.TyDcl (x0, x1, x2, x3, x4) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyDcl"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_list meta_ctyp _loc x2),
+ meta_ctyp _loc x3),
+ meta_list
+ (fun _loc (x1, x2) ->
+ Ast.ExTup (_loc,
+ Ast.ExCom (_loc, meta_ctyp _loc x1,
+ meta_ctyp _loc x2)))
+ _loc x4)
+ | Ast.TyMan (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyMan"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.TyId (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyId"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ident _loc x1)
+ | Ast.TyLab (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyLab"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.TyCls (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyCls"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ident _loc x1)
+ | Ast.TyArr (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyArr"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.TyApp (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyApp"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.TyAny x0 ->
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyAny"))),
+ meta_acc_Loc_t _loc x0)
+ | Ast.TyAli (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyAli"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.TyNil x0 ->
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyNil"))),
+ meta_acc_Loc_t _loc x0)
+ and meta_expr _loc =
+ function
+ | Ast.ExWhi (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExWhi"))),
+ meta_acc_Loc_t _loc x0),
+ meta_expr _loc x1),
+ meta_expr _loc x2)
+ | Ast.ExVrn (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExVrn"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.ExTyc (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExTyc"))),
+ meta_acc_Loc_t _loc x0),
+ meta_expr _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.ExCom (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExCom"))),
+ meta_acc_Loc_t _loc x0),
+ meta_expr _loc x1),
+ meta_expr _loc x2)
+ | Ast.ExTup (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExTup"))),
+ meta_acc_Loc_t _loc x0),
+ meta_expr _loc x1)
+ | Ast.ExTry (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExTry"))),
+ meta_acc_Loc_t _loc x0),
+ meta_expr _loc x1),
+ meta_match_case _loc x2)
+ | Ast.ExStr (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExStr"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.ExSte (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExSte"))),
+ meta_acc_Loc_t _loc x0),
+ meta_expr _loc x1),
+ meta_expr _loc x2)
+ | Ast.ExSnd (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExSnd"))),
+ meta_acc_Loc_t _loc x0),
+ meta_expr _loc x1),
+ meta_string _loc x2)
+ | Ast.ExSeq (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExSeq"))),
+ meta_acc_Loc_t _loc x0),
+ meta_expr _loc x1)
+ | Ast.ExRec (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExRec"))),
+ meta_acc_Loc_t _loc x0),
+ meta_rec_binding _loc x1),
+ meta_expr _loc x2)
+ | Ast.ExOvr (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExOvr"))),
+ meta_acc_Loc_t _loc x0),
+ meta_rec_binding _loc x1)
+ | Ast.ExOlb (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExOlb"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_expr _loc x2)
+ | Ast.ExObj (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExObj"))),
+ meta_acc_Loc_t _loc x0),
+ meta_patt _loc x1),
+ meta_class_str_item _loc x2)
+ | Ast.ExNew (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExNew"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ident _loc x1)
+ | Ast.ExMat (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExMat"))),
+ meta_acc_Loc_t _loc x0),
+ meta_expr _loc x1),
+ meta_match_case _loc x2)
+ | Ast.ExLmd (x0, x1, x2, x3) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExLmd"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_module_expr _loc x2),
+ meta_expr _loc x3)
+ | Ast.ExLet (x0, x1, x2, x3) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExLet"))),
+ meta_acc_Loc_t _loc x0),
+ meta_meta_bool _loc x1),
+ meta_binding _loc x2),
+ meta_expr _loc x3)
+ | Ast.ExLaz (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExLaz"))),
+ meta_acc_Loc_t _loc x0),
+ meta_expr _loc x1)
+ | Ast.ExLab (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExLab"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_expr _loc x2)
+ | Ast.ExNativeInt (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExNativeInt"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.ExInt64 (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExInt64"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.ExInt32 (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExInt32"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.ExInt (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExInt"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.ExIfe (x0, x1, x2, x3) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExIfe"))),
+ meta_acc_Loc_t _loc x0),
+ meta_expr _loc x1),
+ meta_expr _loc x2),
+ meta_expr _loc x3)
+ | Ast.ExFun (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExFun"))),
+ meta_acc_Loc_t _loc x0),
+ meta_match_case _loc x1)
+ | Ast.ExFor (x0, x1, x2, x3, x4, x5) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExFor"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_expr _loc x2),
+ meta_expr _loc x3),
+ meta_meta_bool _loc x4),
+ meta_expr _loc x5)
+ | Ast.ExFlo (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExFlo"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.ExCoe (x0, x1, x2, x3) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExCoe"))),
+ meta_acc_Loc_t _loc x0),
+ meta_expr _loc x1),
+ meta_ctyp _loc x2),
+ meta_ctyp _loc x3)
+ | Ast.ExChr (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExChr"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.ExAss (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExAss"))),
+ meta_acc_Loc_t _loc x0),
+ meta_expr _loc x1),
+ meta_expr _loc x2)
+ | Ast.ExAsr (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExAsr"))),
+ meta_acc_Loc_t _loc x0),
+ meta_expr _loc x1)
+ | Ast.ExAsf x0 ->
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExAsf"))),
+ meta_acc_Loc_t _loc x0)
+ | Ast.ExSem (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExSem"))),
+ meta_acc_Loc_t _loc x0),
+ meta_expr _loc x1),
+ meta_expr _loc x2)
+ | Ast.ExArr (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExArr"))),
+ meta_acc_Loc_t _loc x0),
+ meta_expr _loc x1)
+ | Ast.ExAre (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExAre"))),
+ meta_acc_Loc_t _loc x0),
+ meta_expr _loc x1),
+ meta_expr _loc x2)
+ | Ast.ExApp (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExApp"))),
+ meta_acc_Loc_t _loc x0),
+ meta_expr _loc x1),
+ meta_expr _loc x2)
+ | Ast.ExAnt (x0, x1) -> Ast.ExAnt (x0, x1)
+ | Ast.ExAcc (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExAcc"))),
+ meta_acc_Loc_t _loc x0),
+ meta_expr _loc x1),
+ meta_expr _loc x2)
+ | Ast.ExId (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExId"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ident _loc x1)
+ | Ast.ExNil x0 ->
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExNil"))),
+ meta_acc_Loc_t _loc x0)
+ and meta_ident _loc =
+ function
+ | Ast.IdAnt (x0, x1) -> Ast.ExAnt (x0, x1)
+ | Ast.IdUid (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "IdUid"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.IdLid (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "IdLid"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.IdApp (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "IdApp"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ident _loc x1),
+ meta_ident _loc x2)
+ | Ast.IdAcc (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "IdAcc"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ident _loc x1),
+ meta_ident _loc x2)
+ and meta_match_case _loc =
+ function
+ | Ast.McAnt (x0, x1) -> Ast.ExAnt (x0, x1)
+ | Ast.McArr (x0, x1, x2, x3) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "McArr"))),
+ meta_acc_Loc_t _loc x0),
+ meta_patt _loc x1),
+ meta_expr _loc x2),
+ meta_expr _loc x3)
+ | Ast.McOr (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "McOr"))),
+ meta_acc_Loc_t _loc x0),
+ meta_match_case _loc x1),
+ meta_match_case _loc x2)
+ | Ast.McNil x0 ->
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "McNil"))),
+ meta_acc_Loc_t _loc x0)
+ and meta_meta_bool _loc =
+ function
+ | Ast.BAnt x0 -> Ast.ExAnt (_loc, x0)
+ | Ast.BFalse ->
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "BFalse")))
+ | Ast.BTrue ->
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "BTrue")))
+ and meta_meta_list mf_a _loc =
+ function
+ | Ast.LAnt x0 -> Ast.ExAnt (_loc, x0)
+ | Ast.LCons (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "LCons"))),
+ mf_a _loc x0),
+ meta_meta_list mf_a _loc x1)
+ | Ast.LNil ->
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "LNil")))
+ and meta_meta_option mf_a _loc =
+ function
+ | Ast.OAnt x0 -> Ast.ExAnt (_loc, x0)
+ | Ast.OSome x0 ->
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "OSome"))),
+ mf_a _loc x0)
+ | Ast.ONone ->
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ONone")))
+ and meta_module_binding _loc =
+ function
+ | Ast.MbAnt (x0, x1) -> Ast.ExAnt (x0, x1)
+ | Ast.MbCol (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "MbCol"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_module_type _loc x2)
+ | Ast.MbColEq (x0, x1, x2, x3) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "MbColEq"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_module_type _loc x2),
+ meta_module_expr _loc x3)
+ | Ast.MbAnd (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "MbAnd"))),
+ meta_acc_Loc_t _loc x0),
+ meta_module_binding _loc x1),
+ meta_module_binding _loc x2)
+ | Ast.MbNil x0 ->
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "MbNil"))),
+ meta_acc_Loc_t _loc x0)
+ and meta_module_expr _loc =
+ function
+ | Ast.MeAnt (x0, x1) -> Ast.ExAnt (x0, x1)
+ | Ast.MeTyc (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "MeTyc"))),
+ meta_acc_Loc_t _loc x0),
+ meta_module_expr _loc x1),
+ meta_module_type _loc x2)
+ | Ast.MeStr (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "MeStr"))),
+ meta_acc_Loc_t _loc x0),
+ meta_str_item _loc x1)
+ | Ast.MeFun (x0, x1, x2, x3) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "MeFun"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_module_type _loc x2),
+ meta_module_expr _loc x3)
+ | Ast.MeApp (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "MeApp"))),
+ meta_acc_Loc_t _loc x0),
+ meta_module_expr _loc x1),
+ meta_module_expr _loc x2)
+ | Ast.MeId (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "MeId"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ident _loc x1)
+ | Ast.MeNil x0 ->
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "MeNil"))),
+ meta_acc_Loc_t _loc x0)
+ and meta_module_type _loc =
+ function
+ | Ast.MtAnt (x0, x1) -> Ast.ExAnt (x0, x1)
+ | Ast.MtWit (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "MtWit"))),
+ meta_acc_Loc_t _loc x0),
+ meta_module_type _loc x1),
+ meta_with_constr _loc x2)
+ | Ast.MtSig (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "MtSig"))),
+ meta_acc_Loc_t _loc x0),
+ meta_sig_item _loc x1)
+ | Ast.MtQuo (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "MtQuo"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.MtFun (x0, x1, x2, x3) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "MtFun"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_module_type _loc x2),
+ meta_module_type _loc x3)
+ | Ast.MtId (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "MtId"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ident _loc x1)
+ | Ast.MtNil x0 ->
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "MtNil"))),
+ meta_acc_Loc_t _loc x0)
+ and meta_patt _loc =
+ function
+ | Ast.PaVrn (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaVrn"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.PaTyp (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaTyp"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ident _loc x1)
+ | Ast.PaTyc (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaTyc"))),
+ meta_acc_Loc_t _loc x0),
+ meta_patt _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.PaTup (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaTup"))),
+ meta_acc_Loc_t _loc x0),
+ meta_patt _loc x1)
+ | Ast.PaStr (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaStr"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.PaEq (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaEq"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ident _loc x1),
+ meta_patt _loc x2)
+ | Ast.PaRec (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaRec"))),
+ meta_acc_Loc_t _loc x0),
+ meta_patt _loc x1)
+ | Ast.PaRng (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaRng"))),
+ meta_acc_Loc_t _loc x0),
+ meta_patt _loc x1),
+ meta_patt _loc x2)
+ | Ast.PaOrp (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaOrp"))),
+ meta_acc_Loc_t _loc x0),
+ meta_patt _loc x1),
+ meta_patt _loc x2)
+ | Ast.PaOlbi (x0, x1, x2, x3) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaOlbi"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_patt _loc x2),
+ meta_expr _loc x3)
+ | Ast.PaOlb (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaOlb"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_patt _loc x2)
+ | Ast.PaLab (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaLab"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_patt _loc x2)
+ | Ast.PaFlo (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaFlo"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.PaNativeInt (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaNativeInt"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.PaInt64 (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaInt64"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.PaInt32 (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaInt32"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.PaInt (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaInt"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.PaChr (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaChr"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.PaSem (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaSem"))),
+ meta_acc_Loc_t _loc x0),
+ meta_patt _loc x1),
+ meta_patt _loc x2)
+ | Ast.PaCom (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaCom"))),
+ meta_acc_Loc_t _loc x0),
+ meta_patt _loc x1),
+ meta_patt _loc x2)
+ | Ast.PaArr (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaArr"))),
+ meta_acc_Loc_t _loc x0),
+ meta_patt _loc x1)
+ | Ast.PaApp (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaApp"))),
+ meta_acc_Loc_t _loc x0),
+ meta_patt _loc x1),
+ meta_patt _loc x2)
+ | Ast.PaAny x0 ->
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaAny"))),
+ meta_acc_Loc_t _loc x0)
+ | Ast.PaAnt (x0, x1) -> Ast.ExAnt (x0, x1)
+ | Ast.PaAli (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaAli"))),
+ meta_acc_Loc_t _loc x0),
+ meta_patt _loc x1),
+ meta_patt _loc x2)
+ | Ast.PaId (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaId"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ident _loc x1)
+ | Ast.PaNil x0 ->
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaNil"))),
+ meta_acc_Loc_t _loc x0)
+ and meta_rec_binding _loc =
+ function
+ | Ast.RbAnt (x0, x1) -> Ast.ExAnt (x0, x1)
+ | Ast.RbEq (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "RbEq"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ident _loc x1),
+ meta_expr _loc x2)
+ | Ast.RbSem (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "RbSem"))),
+ meta_acc_Loc_t _loc x0),
+ meta_rec_binding _loc x1),
+ meta_rec_binding _loc x2)
+ | Ast.RbNil x0 ->
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "RbNil"))),
+ meta_acc_Loc_t _loc x0)
+ and meta_sig_item _loc =
+ function
+ | Ast.SgAnt (x0, x1) -> Ast.ExAnt (x0, x1)
+ | Ast.SgVal (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "SgVal"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.SgTyp (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "SgTyp"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1)
+ | Ast.SgOpn (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "SgOpn"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ident _loc x1)
+ | Ast.SgMty (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "SgMty"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_module_type _loc x2)
+ | Ast.SgRecMod (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "SgRecMod"))),
+ meta_acc_Loc_t _loc x0),
+ meta_module_binding _loc x1)
+ | Ast.SgMod (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "SgMod"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_module_type _loc x2)
+ | Ast.SgInc (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "SgInc"))),
+ meta_acc_Loc_t _loc x0),
+ meta_module_type _loc x1)
+ | Ast.SgExt (x0, x1, x2, x3) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "SgExt"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_ctyp _loc x2),
+ meta_meta_list meta_string _loc x3)
+ | Ast.SgExc (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "SgExc"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1)
+ | Ast.SgDir (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "SgDir"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_expr _loc x2)
+ | Ast.SgSem (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "SgSem"))),
+ meta_acc_Loc_t _loc x0),
+ meta_sig_item _loc x1),
+ meta_sig_item _loc x2)
+ | Ast.SgClt (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "SgClt"))),
+ meta_acc_Loc_t _loc x0),
+ meta_class_type _loc x1)
+ | Ast.SgCls (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "SgCls"))),
+ meta_acc_Loc_t _loc x0),
+ meta_class_type _loc x1)
+ | Ast.SgNil x0 ->
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "SgNil"))),
+ meta_acc_Loc_t _loc x0)
+ and meta_str_item _loc =
+ function
+ | Ast.StAnt (x0, x1) -> Ast.ExAnt (x0, x1)
+ | Ast.StVal (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "StVal"))),
+ meta_acc_Loc_t _loc x0),
+ meta_meta_bool _loc x1),
+ meta_binding _loc x2)
+ | Ast.StTyp (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "StTyp"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1)
+ | Ast.StOpn (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "StOpn"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ident _loc x1)
+ | Ast.StMty (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "StMty"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_module_type _loc x2)
+ | Ast.StRecMod (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "StRecMod"))),
+ meta_acc_Loc_t _loc x0),
+ meta_module_binding _loc x1)
+ | Ast.StMod (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "StMod"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_module_expr _loc x2)
+ | Ast.StInc (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "StInc"))),
+ meta_acc_Loc_t _loc x0),
+ meta_module_expr _loc x1)
+ | Ast.StExt (x0, x1, x2, x3) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "StExt"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_ctyp _loc x2),
+ meta_meta_list meta_string _loc x3)
+ | Ast.StExp (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "StExp"))),
+ meta_acc_Loc_t _loc x0),
+ meta_expr _loc x1)
+ | Ast.StExc (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "StExc"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1),
+ meta_meta_option meta_ident _loc x2)
+ | Ast.StDir (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "StDir"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_expr _loc x2)
+ | Ast.StSem (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "StSem"))),
+ meta_acc_Loc_t _loc x0),
+ meta_str_item _loc x1),
+ meta_str_item _loc x2)
+ | Ast.StClt (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "StClt"))),
+ meta_acc_Loc_t _loc x0),
+ meta_class_type _loc x1)
+ | Ast.StCls (x0, x1) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "StCls"))),
+ meta_acc_Loc_t _loc x0),
+ meta_class_expr _loc x1)
+ | Ast.StNil x0 ->
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "StNil"))),
+ meta_acc_Loc_t _loc x0)
+ and meta_with_constr _loc =
+ function
+ | Ast.WcAnt (x0, x1) -> Ast.ExAnt (x0, x1)
+ | Ast.WcAnd (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "WcAnd"))),
+ meta_acc_Loc_t _loc x0),
+ meta_with_constr _loc x1),
+ meta_with_constr _loc x2)
+ | Ast.WcMod (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "WcMod"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ident _loc x1),
+ meta_ident _loc x2)
+ | Ast.WcTyp (x0, x1, x2) ->
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "WcTyp"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.WcNil x0 ->
+ Ast.ExApp (_loc,
+ Ast.ExId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "WcNil"))),
+ meta_acc_Loc_t _loc x0)
+ end
+ let meta_acc_Loc_t = meta_loc_patt
+ module Patt =
+ struct
+ let meta_string _loc s = Ast.PaStr (_loc, s)
+ let meta_int _loc s = Ast.PaInt (_loc, s)
+ let meta_float _loc s = Ast.PaFlo (_loc, s)
+ let meta_char _loc s = Ast.PaChr (_loc, s)
+ let meta_bool _loc =
+ function
+ | false ->
+ Ast.PaId (_loc, Ast.IdUid (_loc, "False"))
+ | true -> Ast.PaId (_loc, Ast.IdUid (_loc, "True"))
+ let rec meta_list mf_a _loc =
+ function
+ | [] -> Ast.PaId (_loc, Ast.IdUid (_loc, "[]"))
+ | x :: xs ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc, Ast.IdUid (_loc, "::")),
+ mf_a _loc x),
+ meta_list mf_a _loc xs)
+ let rec meta_binding _loc =
+ function
+ | Ast.BiAnt (x0, x1) -> Ast.PaAnt (x0, x1)
+ | Ast.BiEq (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "BiEq"))),
+ meta_acc_Loc_t _loc x0),
+ meta_patt _loc x1),
+ meta_expr _loc x2)
+ | Ast.BiAnd (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "BiAnd"))),
+ meta_acc_Loc_t _loc x0),
+ meta_binding _loc x1),
+ meta_binding _loc x2)
+ | Ast.BiNil x0 ->
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "BiNil"))),
+ meta_acc_Loc_t _loc x0)
+ and meta_class_expr _loc =
+ function
+ | Ast.CeAnt (x0, x1) -> Ast.PaAnt (x0, x1)
+ | Ast.CeEq (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CeEq"))),
+ meta_acc_Loc_t _loc x0),
+ meta_class_expr _loc x1),
+ meta_class_expr _loc x2)
+ | Ast.CeAnd (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CeAnd"))),
+ meta_acc_Loc_t _loc x0),
+ meta_class_expr _loc x1),
+ meta_class_expr _loc x2)
+ | Ast.CeTyc (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CeTyc"))),
+ meta_acc_Loc_t _loc x0),
+ meta_class_expr _loc x1),
+ meta_class_type _loc x2)
+ | Ast.CeStr (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CeStr"))),
+ meta_acc_Loc_t _loc x0),
+ meta_patt _loc x1),
+ meta_class_str_item _loc x2)
+ | Ast.CeLet (x0, x1, x2, x3) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CeLet"))),
+ meta_acc_Loc_t _loc x0),
+ meta_meta_bool _loc x1),
+ meta_binding _loc x2),
+ meta_class_expr _loc x3)
+ | Ast.CeFun (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CeFun"))),
+ meta_acc_Loc_t _loc x0),
+ meta_patt _loc x1),
+ meta_class_expr _loc x2)
+ | Ast.CeCon (x0, x1, x2, x3) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CeCon"))),
+ meta_acc_Loc_t _loc x0),
+ meta_meta_bool _loc x1),
+ meta_ident _loc x2),
+ meta_ctyp _loc x3)
+ | Ast.CeApp (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CeApp"))),
+ meta_acc_Loc_t _loc x0),
+ meta_class_expr _loc x1),
+ meta_expr _loc x2)
+ | Ast.CeNil x0 ->
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CeNil"))),
+ meta_acc_Loc_t _loc x0)
+ and meta_class_sig_item _loc =
+ function
+ | Ast.CgAnt (x0, x1) -> Ast.PaAnt (x0, x1)
+ | Ast.CgVir (x0, x1, x2, x3) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CgVir"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_meta_bool _loc x2),
+ meta_ctyp _loc x3)
+ | Ast.CgVal (x0, x1, x2, x3, x4) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CgVal"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_meta_bool _loc x2),
+ meta_meta_bool _loc x3),
+ meta_ctyp _loc x4)
+ | Ast.CgMth (x0, x1, x2, x3) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CgMth"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_meta_bool _loc x2),
+ meta_ctyp _loc x3)
+ | Ast.CgInh (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CgInh"))),
+ meta_acc_Loc_t _loc x0),
+ meta_class_type _loc x1)
+ | Ast.CgSem (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CgSem"))),
+ meta_acc_Loc_t _loc x0),
+ meta_class_sig_item _loc x1),
+ meta_class_sig_item _loc x2)
+ | Ast.CgCtr (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CgCtr"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.CgNil x0 ->
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CgNil"))),
+ meta_acc_Loc_t _loc x0)
+ and meta_class_str_item _loc =
+ function
+ | Ast.CrAnt (x0, x1) -> Ast.PaAnt (x0, x1)
+ | Ast.CrVvr (x0, x1, x2, x3) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CrVvr"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_meta_bool _loc x2),
+ meta_ctyp _loc x3)
+ | Ast.CrVir (x0, x1, x2, x3) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CrVir"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_meta_bool _loc x2),
+ meta_ctyp _loc x3)
+ | Ast.CrVal (x0, x1, x2, x3) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CrVal"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_meta_bool _loc x2),
+ meta_expr _loc x3)
+ | Ast.CrMth (x0, x1, x2, x3, x4) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CrMth"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_meta_bool _loc x2),
+ meta_expr _loc x3),
+ meta_ctyp _loc x4)
+ | Ast.CrIni (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CrIni"))),
+ meta_acc_Loc_t _loc x0),
+ meta_expr _loc x1)
+ | Ast.CrInh (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CrInh"))),
+ meta_acc_Loc_t _loc x0),
+ meta_class_expr _loc x1),
+ meta_string _loc x2)
+ | Ast.CrCtr (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CrCtr"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.CrSem (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CrSem"))),
+ meta_acc_Loc_t _loc x0),
+ meta_class_str_item _loc x1),
+ meta_class_str_item _loc x2)
+ | Ast.CrNil x0 ->
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CrNil"))),
+ meta_acc_Loc_t _loc x0)
+ and meta_class_type _loc =
+ function
+ | Ast.CtAnt (x0, x1) -> Ast.PaAnt (x0, x1)
+ | Ast.CtEq (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CtEq"))),
+ meta_acc_Loc_t _loc x0),
+ meta_class_type _loc x1),
+ meta_class_type _loc x2)
+ | Ast.CtCol (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CtCol"))),
+ meta_acc_Loc_t _loc x0),
+ meta_class_type _loc x1),
+ meta_class_type _loc x2)
+ | Ast.CtAnd (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CtAnd"))),
+ meta_acc_Loc_t _loc x0),
+ meta_class_type _loc x1),
+ meta_class_type _loc x2)
+ | Ast.CtSig (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CtSig"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1),
+ meta_class_sig_item _loc x2)
+ | Ast.CtFun (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CtFun"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1),
+ meta_class_type _loc x2)
+ | Ast.CtCon (x0, x1, x2, x3) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CtCon"))),
+ meta_acc_Loc_t _loc x0),
+ meta_meta_bool _loc x1),
+ meta_ident _loc x2),
+ meta_ctyp _loc x3)
+ | Ast.CtNil x0 ->
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "CtNil"))),
+ meta_acc_Loc_t _loc x0)
+ and meta_ctyp _loc =
+ function
+ | Ast.TyAnt (x0, x1) -> Ast.PaAnt (x0, x1)
+ | Ast.TyOfAmp (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyOfAmp"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.TyAmp (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyAmp"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.TyVrnInfSup (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyVrnInfSup"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.TyVrnInf (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyVrnInf"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1)
+ | Ast.TyVrnSup (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyVrnSup"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1)
+ | Ast.TyVrnEq (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyVrnEq"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1)
+ | Ast.TySta (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TySta"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.TyTup (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyTup"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1)
+ | Ast.TyMut (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyMut"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1)
+ | Ast.TyPrv (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyPrv"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1)
+ | Ast.TyOr (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyOr"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.TyAnd (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyAnd"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.TyOf (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyOf"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.TySum (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TySum"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1)
+ | Ast.TyCom (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyCom"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.TySem (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TySem"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.TyCol (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyCol"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.TyRec (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyRec"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1)
+ | Ast.TyVrn (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyVrn"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.TyQuM (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyQuM"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.TyQuP (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyQuP"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.TyQuo (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyQuo"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.TyPol (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyPol"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.TyOlb (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyOlb"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.TyObj (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyObj"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1),
+ meta_meta_bool _loc x2)
+ | Ast.TyDcl (x0, x1, x2, x3, x4) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyDcl"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_list meta_ctyp _loc x2),
+ meta_ctyp _loc x3),
+ meta_list
+ (fun _loc (x1, x2) ->
+ Ast.PaTup (_loc,
+ Ast.PaCom (_loc, meta_ctyp _loc x1,
+ meta_ctyp _loc x2)))
+ _loc x4)
+ | Ast.TyMan (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyMan"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.TyId (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyId"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ident _loc x1)
+ | Ast.TyLab (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyLab"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.TyCls (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyCls"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ident _loc x1)
+ | Ast.TyArr (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyArr"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.TyApp (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyApp"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.TyAny x0 ->
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyAny"))),
+ meta_acc_Loc_t _loc x0)
+ | Ast.TyAli (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyAli"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.TyNil x0 ->
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "TyNil"))),
+ meta_acc_Loc_t _loc x0)
+ and meta_expr _loc =
+ function
+ | Ast.ExWhi (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExWhi"))),
+ meta_acc_Loc_t _loc x0),
+ meta_expr _loc x1),
+ meta_expr _loc x2)
+ | Ast.ExVrn (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExVrn"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.ExTyc (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExTyc"))),
+ meta_acc_Loc_t _loc x0),
+ meta_expr _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.ExCom (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExCom"))),
+ meta_acc_Loc_t _loc x0),
+ meta_expr _loc x1),
+ meta_expr _loc x2)
+ | Ast.ExTup (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExTup"))),
+ meta_acc_Loc_t _loc x0),
+ meta_expr _loc x1)
+ | Ast.ExTry (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExTry"))),
+ meta_acc_Loc_t _loc x0),
+ meta_expr _loc x1),
+ meta_match_case _loc x2)
+ | Ast.ExStr (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExStr"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.ExSte (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExSte"))),
+ meta_acc_Loc_t _loc x0),
+ meta_expr _loc x1),
+ meta_expr _loc x2)
+ | Ast.ExSnd (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExSnd"))),
+ meta_acc_Loc_t _loc x0),
+ meta_expr _loc x1),
+ meta_string _loc x2)
+ | Ast.ExSeq (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExSeq"))),
+ meta_acc_Loc_t _loc x0),
+ meta_expr _loc x1)
+ | Ast.ExRec (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExRec"))),
+ meta_acc_Loc_t _loc x0),
+ meta_rec_binding _loc x1),
+ meta_expr _loc x2)
+ | Ast.ExOvr (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExOvr"))),
+ meta_acc_Loc_t _loc x0),
+ meta_rec_binding _loc x1)
+ | Ast.ExOlb (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExOlb"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_expr _loc x2)
+ | Ast.ExObj (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExObj"))),
+ meta_acc_Loc_t _loc x0),
+ meta_patt _loc x1),
+ meta_class_str_item _loc x2)
+ | Ast.ExNew (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExNew"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ident _loc x1)
+ | Ast.ExMat (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExMat"))),
+ meta_acc_Loc_t _loc x0),
+ meta_expr _loc x1),
+ meta_match_case _loc x2)
+ | Ast.ExLmd (x0, x1, x2, x3) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExLmd"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_module_expr _loc x2),
+ meta_expr _loc x3)
+ | Ast.ExLet (x0, x1, x2, x3) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExLet"))),
+ meta_acc_Loc_t _loc x0),
+ meta_meta_bool _loc x1),
+ meta_binding _loc x2),
+ meta_expr _loc x3)
+ | Ast.ExLaz (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExLaz"))),
+ meta_acc_Loc_t _loc x0),
+ meta_expr _loc x1)
+ | Ast.ExLab (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExLab"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_expr _loc x2)
+ | Ast.ExNativeInt (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExNativeInt"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.ExInt64 (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExInt64"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.ExInt32 (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExInt32"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.ExInt (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExInt"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.ExIfe (x0, x1, x2, x3) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExIfe"))),
+ meta_acc_Loc_t _loc x0),
+ meta_expr _loc x1),
+ meta_expr _loc x2),
+ meta_expr _loc x3)
+ | Ast.ExFun (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExFun"))),
+ meta_acc_Loc_t _loc x0),
+ meta_match_case _loc x1)
+ | Ast.ExFor (x0, x1, x2, x3, x4, x5) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExFor"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_expr _loc x2),
+ meta_expr _loc x3),
+ meta_meta_bool _loc x4),
+ meta_expr _loc x5)
+ | Ast.ExFlo (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExFlo"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.ExCoe (x0, x1, x2, x3) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExCoe"))),
+ meta_acc_Loc_t _loc x0),
+ meta_expr _loc x1),
+ meta_ctyp _loc x2),
+ meta_ctyp _loc x3)
+ | Ast.ExChr (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExChr"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.ExAss (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExAss"))),
+ meta_acc_Loc_t _loc x0),
+ meta_expr _loc x1),
+ meta_expr _loc x2)
+ | Ast.ExAsr (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExAsr"))),
+ meta_acc_Loc_t _loc x0),
+ meta_expr _loc x1)
+ | Ast.ExAsf x0 ->
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExAsf"))),
+ meta_acc_Loc_t _loc x0)
+ | Ast.ExSem (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExSem"))),
+ meta_acc_Loc_t _loc x0),
+ meta_expr _loc x1),
+ meta_expr _loc x2)
+ | Ast.ExArr (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExArr"))),
+ meta_acc_Loc_t _loc x0),
+ meta_expr _loc x1)
+ | Ast.ExAre (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExAre"))),
+ meta_acc_Loc_t _loc x0),
+ meta_expr _loc x1),
+ meta_expr _loc x2)
+ | Ast.ExApp (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExApp"))),
+ meta_acc_Loc_t _loc x0),
+ meta_expr _loc x1),
+ meta_expr _loc x2)
+ | Ast.ExAnt (x0, x1) -> Ast.PaAnt (x0, x1)
+ | Ast.ExAcc (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExAcc"))),
+ meta_acc_Loc_t _loc x0),
+ meta_expr _loc x1),
+ meta_expr _loc x2)
+ | Ast.ExId (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExId"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ident _loc x1)
+ | Ast.ExNil x0 ->
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ExNil"))),
+ meta_acc_Loc_t _loc x0)
+ and meta_ident _loc =
+ function
+ | Ast.IdAnt (x0, x1) -> Ast.PaAnt (x0, x1)
+ | Ast.IdUid (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "IdUid"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.IdLid (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "IdLid"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.IdApp (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "IdApp"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ident _loc x1),
+ meta_ident _loc x2)
+ | Ast.IdAcc (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "IdAcc"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ident _loc x1),
+ meta_ident _loc x2)
+ and meta_match_case _loc =
+ function
+ | Ast.McAnt (x0, x1) -> Ast.PaAnt (x0, x1)
+ | Ast.McArr (x0, x1, x2, x3) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "McArr"))),
+ meta_acc_Loc_t _loc x0),
+ meta_patt _loc x1),
+ meta_expr _loc x2),
+ meta_expr _loc x3)
+ | Ast.McOr (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "McOr"))),
+ meta_acc_Loc_t _loc x0),
+ meta_match_case _loc x1),
+ meta_match_case _loc x2)
+ | Ast.McNil x0 ->
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "McNil"))),
+ meta_acc_Loc_t _loc x0)
+ and meta_meta_bool _loc =
+ function
+ | Ast.BAnt x0 -> Ast.PaAnt (_loc, x0)
+ | Ast.BFalse ->
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "BFalse")))
+ | Ast.BTrue ->
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "BTrue")))
+ and meta_meta_list mf_a _loc =
+ function
+ | Ast.LAnt x0 -> Ast.PaAnt (_loc, x0)
+ | Ast.LCons (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "LCons"))),
+ mf_a _loc x0),
+ meta_meta_list mf_a _loc x1)
+ | Ast.LNil ->
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "LNil")))
+ and meta_meta_option mf_a _loc =
+ function
+ | Ast.OAnt x0 -> Ast.PaAnt (_loc, x0)
+ | Ast.OSome x0 ->
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "OSome"))),
+ mf_a _loc x0)
+ | Ast.ONone ->
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "ONone")))
+ and meta_module_binding _loc =
+ function
+ | Ast.MbAnt (x0, x1) -> Ast.PaAnt (x0, x1)
+ | Ast.MbCol (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "MbCol"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_module_type _loc x2)
+ | Ast.MbColEq (x0, x1, x2, x3) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "MbColEq"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_module_type _loc x2),
+ meta_module_expr _loc x3)
+ | Ast.MbAnd (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "MbAnd"))),
+ meta_acc_Loc_t _loc x0),
+ meta_module_binding _loc x1),
+ meta_module_binding _loc x2)
+ | Ast.MbNil x0 ->
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "MbNil"))),
+ meta_acc_Loc_t _loc x0)
+ and meta_module_expr _loc =
+ function
+ | Ast.MeAnt (x0, x1) -> Ast.PaAnt (x0, x1)
+ | Ast.MeTyc (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "MeTyc"))),
+ meta_acc_Loc_t _loc x0),
+ meta_module_expr _loc x1),
+ meta_module_type _loc x2)
+ | Ast.MeStr (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "MeStr"))),
+ meta_acc_Loc_t _loc x0),
+ meta_str_item _loc x1)
+ | Ast.MeFun (x0, x1, x2, x3) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "MeFun"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_module_type _loc x2),
+ meta_module_expr _loc x3)
+ | Ast.MeApp (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "MeApp"))),
+ meta_acc_Loc_t _loc x0),
+ meta_module_expr _loc x1),
+ meta_module_expr _loc x2)
+ | Ast.MeId (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "MeId"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ident _loc x1)
+ | Ast.MeNil x0 ->
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "MeNil"))),
+ meta_acc_Loc_t _loc x0)
+ and meta_module_type _loc =
+ function
+ | Ast.MtAnt (x0, x1) -> Ast.PaAnt (x0, x1)
+ | Ast.MtWit (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "MtWit"))),
+ meta_acc_Loc_t _loc x0),
+ meta_module_type _loc x1),
+ meta_with_constr _loc x2)
+ | Ast.MtSig (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "MtSig"))),
+ meta_acc_Loc_t _loc x0),
+ meta_sig_item _loc x1)
+ | Ast.MtQuo (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "MtQuo"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.MtFun (x0, x1, x2, x3) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "MtFun"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_module_type _loc x2),
+ meta_module_type _loc x3)
+ | Ast.MtId (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "MtId"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ident _loc x1)
+ | Ast.MtNil x0 ->
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "MtNil"))),
+ meta_acc_Loc_t _loc x0)
+ and meta_patt _loc =
+ function
+ | Ast.PaVrn (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaVrn"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.PaTyp (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaTyp"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ident _loc x1)
+ | Ast.PaTyc (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaTyc"))),
+ meta_acc_Loc_t _loc x0),
+ meta_patt _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.PaTup (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaTup"))),
+ meta_acc_Loc_t _loc x0),
+ meta_patt _loc x1)
+ | Ast.PaStr (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaStr"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.PaEq (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaEq"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ident _loc x1),
+ meta_patt _loc x2)
+ | Ast.PaRec (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaRec"))),
+ meta_acc_Loc_t _loc x0),
+ meta_patt _loc x1)
+ | Ast.PaRng (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaRng"))),
+ meta_acc_Loc_t _loc x0),
+ meta_patt _loc x1),
+ meta_patt _loc x2)
+ | Ast.PaOrp (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaOrp"))),
+ meta_acc_Loc_t _loc x0),
+ meta_patt _loc x1),
+ meta_patt _loc x2)
+ | Ast.PaOlbi (x0, x1, x2, x3) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaOlbi"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_patt _loc x2),
+ meta_expr _loc x3)
+ | Ast.PaOlb (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaOlb"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_patt _loc x2)
+ | Ast.PaLab (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaLab"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_patt _loc x2)
+ | Ast.PaFlo (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaFlo"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.PaNativeInt (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaNativeInt"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.PaInt64 (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaInt64"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.PaInt32 (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaInt32"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.PaInt (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaInt"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.PaChr (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaChr"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1)
+ | Ast.PaSem (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaSem"))),
+ meta_acc_Loc_t _loc x0),
+ meta_patt _loc x1),
+ meta_patt _loc x2)
+ | Ast.PaCom (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaCom"))),
+ meta_acc_Loc_t _loc x0),
+ meta_patt _loc x1),
+ meta_patt _loc x2)
+ | Ast.PaArr (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaArr"))),
+ meta_acc_Loc_t _loc x0),
+ meta_patt _loc x1)
+ | Ast.PaApp (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaApp"))),
+ meta_acc_Loc_t _loc x0),
+ meta_patt _loc x1),
+ meta_patt _loc x2)
+ | Ast.PaAny x0 ->
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaAny"))),
+ meta_acc_Loc_t _loc x0)
+ | Ast.PaAnt (x0, x1) -> Ast.PaAnt (x0, x1)
+ | Ast.PaAli (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaAli"))),
+ meta_acc_Loc_t _loc x0),
+ meta_patt _loc x1),
+ meta_patt _loc x2)
+ | Ast.PaId (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaId"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ident _loc x1)
+ | Ast.PaNil x0 ->
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "PaNil"))),
+ meta_acc_Loc_t _loc x0)
+ and meta_rec_binding _loc =
+ function
+ | Ast.RbAnt (x0, x1) -> Ast.PaAnt (x0, x1)
+ | Ast.RbEq (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "RbEq"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ident _loc x1),
+ meta_expr _loc x2)
+ | Ast.RbSem (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "RbSem"))),
+ meta_acc_Loc_t _loc x0),
+ meta_rec_binding _loc x1),
+ meta_rec_binding _loc x2)
+ | Ast.RbNil x0 ->
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "RbNil"))),
+ meta_acc_Loc_t _loc x0)
+ and meta_sig_item _loc =
+ function
+ | Ast.SgAnt (x0, x1) -> Ast.PaAnt (x0, x1)
+ | Ast.SgVal (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "SgVal"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.SgTyp (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "SgTyp"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1)
+ | Ast.SgOpn (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "SgOpn"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ident _loc x1)
+ | Ast.SgMty (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "SgMty"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_module_type _loc x2)
+ | Ast.SgRecMod (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "SgRecMod"))),
+ meta_acc_Loc_t _loc x0),
+ meta_module_binding _loc x1)
+ | Ast.SgMod (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "SgMod"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_module_type _loc x2)
+ | Ast.SgInc (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "SgInc"))),
+ meta_acc_Loc_t _loc x0),
+ meta_module_type _loc x1)
+ | Ast.SgExt (x0, x1, x2, x3) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "SgExt"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_ctyp _loc x2),
+ meta_meta_list meta_string _loc x3)
+ | Ast.SgExc (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "SgExc"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1)
+ | Ast.SgDir (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "SgDir"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_expr _loc x2)
+ | Ast.SgSem (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "SgSem"))),
+ meta_acc_Loc_t _loc x0),
+ meta_sig_item _loc x1),
+ meta_sig_item _loc x2)
+ | Ast.SgClt (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "SgClt"))),
+ meta_acc_Loc_t _loc x0),
+ meta_class_type _loc x1)
+ | Ast.SgCls (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "SgCls"))),
+ meta_acc_Loc_t _loc x0),
+ meta_class_type _loc x1)
+ | Ast.SgNil x0 ->
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "SgNil"))),
+ meta_acc_Loc_t _loc x0)
+ and meta_str_item _loc =
+ function
+ | Ast.StAnt (x0, x1) -> Ast.PaAnt (x0, x1)
+ | Ast.StVal (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "StVal"))),
+ meta_acc_Loc_t _loc x0),
+ meta_meta_bool _loc x1),
+ meta_binding _loc x2)
+ | Ast.StTyp (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "StTyp"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1)
+ | Ast.StOpn (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "StOpn"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ident _loc x1)
+ | Ast.StMty (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "StMty"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_module_type _loc x2)
+ | Ast.StRecMod (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "StRecMod"))),
+ meta_acc_Loc_t _loc x0),
+ meta_module_binding _loc x1)
+ | Ast.StMod (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "StMod"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_module_expr _loc x2)
+ | Ast.StInc (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "StInc"))),
+ meta_acc_Loc_t _loc x0),
+ meta_module_expr _loc x1)
+ | Ast.StExt (x0, x1, x2, x3) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "StExt"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_ctyp _loc x2),
+ meta_meta_list meta_string _loc x3)
+ | Ast.StExp (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "StExp"))),
+ meta_acc_Loc_t _loc x0),
+ meta_expr _loc x1)
+ | Ast.StExc (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "StExc"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1),
+ meta_meta_option meta_ident _loc x2)
+ | Ast.StDir (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "StDir"))),
+ meta_acc_Loc_t _loc x0),
+ meta_string _loc x1),
+ meta_expr _loc x2)
+ | Ast.StSem (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "StSem"))),
+ meta_acc_Loc_t _loc x0),
+ meta_str_item _loc x1),
+ meta_str_item _loc x2)
+ | Ast.StClt (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "StClt"))),
+ meta_acc_Loc_t _loc x0),
+ meta_class_type _loc x1)
+ | Ast.StCls (x0, x1) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "StCls"))),
+ meta_acc_Loc_t _loc x0),
+ meta_class_expr _loc x1)
+ | Ast.StNil x0 ->
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "StNil"))),
+ meta_acc_Loc_t _loc x0)
+ and meta_with_constr _loc =
+ function
+ | Ast.WcAnt (x0, x1) -> Ast.PaAnt (x0, x1)
+ | Ast.WcAnd (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "WcAnd"))),
+ meta_acc_Loc_t _loc x0),
+ meta_with_constr _loc x1),
+ meta_with_constr _loc x2)
+ | Ast.WcMod (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "WcMod"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ident _loc x1),
+ meta_ident _loc x2)
+ | Ast.WcTyp (x0, x1, x2) ->
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc,
+ Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "WcTyp"))),
+ meta_acc_Loc_t _loc x0),
+ meta_ctyp _loc x1),
+ meta_ctyp _loc x2)
+ | Ast.WcNil x0 ->
+ Ast.PaApp (_loc,
+ Ast.PaId (_loc,
+ Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"),
+ Ast.IdUid (_loc, "WcNil"))),
+ meta_acc_Loc_t _loc x0)
+ end
+ end
+ end
+ class map =
+ object (o)
+ method string = fun x -> (x : string)
+ method int = fun x -> (x : int)
+ method float = fun x -> (x : float)
+ method bool = fun x -> (x : bool)
+ method list : 'a 'b. ('a -> 'b) -> 'a list -> 'b list = List.
+ map
+ method option : 'a 'b. ('a -> 'b) -> 'a option -> 'b option =
+ fun f -> function | None -> None | Some x -> Some (f x)
+ method array : 'a 'b. ('a -> 'b) -> 'a array -> 'b array =
+ Array.map
+ method ref : 'a 'b. ('a -> 'b) -> 'a ref -> 'b ref =
+ fun f { contents = x } -> { contents = f x; }
+ method _Loc_t : Loc.t -> Loc.t = fun x -> x
+ method with_constr : with_constr -> with_constr =
+ function
+ | WcNil _x0 -> WcNil (o#_Loc_t _x0)
+ | WcTyp (_x0, _x1, _x2) ->
+ WcTyp (o#_Loc_t _x0, o#ctyp _x1, o#ctyp _x2)
+ | WcMod (_x0, _x1, _x2) ->
+ WcMod (o#_Loc_t _x0, o#ident _x1, o#ident _x2)
+ | WcAnd (_x0, _x1, _x2) ->
+ WcAnd (o#_Loc_t _x0, o#with_constr _x1,
+ o#with_constr _x2)
+ | WcAnt (_x0, _x1) -> WcAnt (o#_Loc_t _x0, o#string _x1)
+ method str_item : str_item -> str_item =
+ function
+ | StNil _x0 -> StNil (o#_Loc_t _x0)
+ | StCls (_x0, _x1) ->
+ StCls (o#_Loc_t _x0, o#class_expr _x1)
+ | StClt (_x0, _x1) ->
+ StClt (o#_Loc_t _x0, o#class_type _x1)
+ | StSem (_x0, _x1, _x2) ->
+ StSem (o#_Loc_t _x0, o#str_item _x1, o#str_item _x2)
+ | StDir (_x0, _x1, _x2) ->
+ StDir (o#_Loc_t _x0, o#string _x1, o#expr _x2)
+ | StExc (_x0, _x1, _x2) ->
+ StExc (o#_Loc_t _x0, o#ctyp _x1,
+ o#meta_option o#ident _x2)
+ | StExp (_x0, _x1) -> StExp (o#_Loc_t _x0, o#expr _x1)
+ | StExt (_x0, _x1, _x2, _x3) ->
+ StExt (o#_Loc_t _x0, o#string _x1, o#ctyp _x2,
+ o#meta_list o#string _x3)
+ | StInc (_x0, _x1) ->
+ StInc (o#_Loc_t _x0, o#module_expr _x1)
+ | StMod (_x0, _x1, _x2) ->
+ StMod (o#_Loc_t _x0, o#string _x1, o#module_expr _x2)
+ | StRecMod (_x0, _x1) ->
+ StRecMod (o#_Loc_t _x0, o#module_binding _x1)
+ | StMty (_x0, _x1, _x2) ->
+ StMty (o#_Loc_t _x0, o#string _x1, o#module_type _x2)
+ | StOpn (_x0, _x1) -> StOpn (o#_Loc_t _x0, o#ident _x1)
+ | StTyp (_x0, _x1) -> StTyp (o#_Loc_t _x0, o#ctyp _x1)
+ | StVal (_x0, _x1, _x2) ->
+ StVal (o#_Loc_t _x0, o#meta_bool _x1, o#binding _x2)
+ | StAnt (_x0, _x1) -> StAnt (o#_Loc_t _x0, o#string _x1)
+ method sig_item : sig_item -> sig_item =
+ function
+ | SgNil _x0 -> SgNil (o#_Loc_t _x0)
+ | SgCls (_x0, _x1) ->
+ SgCls (o#_Loc_t _x0, o#class_type _x1)
+ | SgClt (_x0, _x1) ->
+ SgClt (o#_Loc_t _x0, o#class_type _x1)
+ | SgSem (_x0, _x1, _x2) ->
+ SgSem (o#_Loc_t _x0, o#sig_item _x1, o#sig_item _x2)
+ | SgDir (_x0, _x1, _x2) ->
+ SgDir (o#_Loc_t _x0, o#string _x1, o#expr _x2)
+ | SgExc (_x0, _x1) -> SgExc (o#_Loc_t _x0, o#ctyp _x1)
+ | SgExt (_x0, _x1, _x2, _x3) ->
+ SgExt (o#_Loc_t _x0, o#string _x1, o#ctyp _x2,
+ o#meta_list o#string _x3)
+ | SgInc (_x0, _x1) ->
+ SgInc (o#_Loc_t _x0, o#module_type _x1)
+ | SgMod (_x0, _x1, _x2) ->
+ SgMod (o#_Loc_t _x0, o#string _x1, o#module_type _x2)
+ | SgRecMod (_x0, _x1) ->
+ SgRecMod (o#_Loc_t _x0, o#module_binding _x1)
+ | SgMty (_x0, _x1, _x2) ->
+ SgMty (o#_Loc_t _x0, o#string _x1, o#module_type _x2)
+ | SgOpn (_x0, _x1) -> SgOpn (o#_Loc_t _x0, o#ident _x1)
+ | SgTyp (_x0, _x1) -> SgTyp (o#_Loc_t _x0, o#ctyp _x1)
+ | SgVal (_x0, _x1, _x2) ->
+ SgVal (o#_Loc_t _x0, o#string _x1, o#ctyp _x2)
+ | SgAnt (_x0, _x1) -> SgAnt (o#_Loc_t _x0, o#string _x1)
+ method rec_binding : rec_binding -> rec_binding =
+ function
+ | RbNil _x0 -> RbNil (o#_Loc_t _x0)
+ | RbSem (_x0, _x1, _x2) ->
+ RbSem (o#_Loc_t _x0, o#rec_binding _x1,
+ o#rec_binding _x2)
+ | RbEq (_x0, _x1, _x2) ->
+ RbEq (o#_Loc_t _x0, o#ident _x1, o#expr _x2)
+ | RbAnt (_x0, _x1) -> RbAnt (o#_Loc_t _x0, o#string _x1)
+ method patt : patt -> patt =
+ function
+ | PaNil _x0 -> PaNil (o#_Loc_t _x0)
+ | PaId (_x0, _x1) -> PaId (o#_Loc_t _x0, o#ident _x1)
+ | PaAli (_x0, _x1, _x2) ->
+ PaAli (o#_Loc_t _x0, o#patt _x1, o#patt _x2)
+ | PaAnt (_x0, _x1) -> PaAnt (o#_Loc_t _x0, o#string _x1)
+ | PaAny _x0 -> PaAny (o#_Loc_t _x0)
+ | PaApp (_x0, _x1, _x2) ->
+ PaApp (o#_Loc_t _x0, o#patt _x1, o#patt _x2)
+ | PaArr (_x0, _x1) -> PaArr (o#_Loc_t _x0, o#patt _x1)
+ | PaCom (_x0, _x1, _x2) ->
+ PaCom (o#_Loc_t _x0, o#patt _x1, o#patt _x2)
+ | PaSem (_x0, _x1, _x2) ->
+ PaSem (o#_Loc_t _x0, o#patt _x1, o#patt _x2)
+ | PaChr (_x0, _x1) -> PaChr (o#_Loc_t _x0, o#string _x1)
+ | PaInt (_x0, _x1) -> PaInt (o#_Loc_t _x0, o#string _x1)
+ | PaInt32 (_x0, _x1) ->
+ PaInt32 (o#_Loc_t _x0, o#string _x1)
+ | PaInt64 (_x0, _x1) ->
+ PaInt64 (o#_Loc_t _x0, o#string _x1)
+ | PaNativeInt (_x0, _x1) ->
+ PaNativeInt (o#_Loc_t _x0, o#string _x1)
+ | PaFlo (_x0, _x1) -> PaFlo (o#_Loc_t _x0, o#string _x1)
+ | PaLab (_x0, _x1, _x2) ->
+ PaLab (o#_Loc_t _x0, o#string _x1, o#patt _x2)
+ | PaOlb (_x0, _x1, _x2) ->
+ PaOlb (o#_Loc_t _x0, o#string _x1, o#patt _x2)
+ | PaOlbi (_x0, _x1, _x2, _x3) ->
+ PaOlbi (o#_Loc_t _x0, o#string _x1, o#patt _x2,
+ o#expr _x3)
+ | PaOrp (_x0, _x1, _x2) ->
+ PaOrp (o#_Loc_t _x0, o#patt _x1, o#patt _x2)
+ | PaRng (_x0, _x1, _x2) ->
+ PaRng (o#_Loc_t _x0, o#patt _x1, o#patt _x2)
+ | PaRec (_x0, _x1) -> PaRec (o#_Loc_t _x0, o#patt _x1)
+ | PaEq (_x0, _x1, _x2) ->
+ PaEq (o#_Loc_t _x0, o#ident _x1, o#patt _x2)
+ | PaStr (_x0, _x1) -> PaStr (o#_Loc_t _x0, o#string _x1)
+ | PaTup (_x0, _x1) -> PaTup (o#_Loc_t _x0, o#patt _x1)
+ | PaTyc (_x0, _x1, _x2) ->
+ PaTyc (o#_Loc_t _x0, o#patt _x1, o#ctyp _x2)
+ | PaTyp (_x0, _x1) -> PaTyp (o#_Loc_t _x0, o#ident _x1)
+ | PaVrn (_x0, _x1) -> PaVrn (o#_Loc_t _x0, o#string _x1)
+ method module_type : module_type -> module_type =
+ function
+ | MtNil _x0 -> MtNil (o#_Loc_t _x0)
+ | MtId (_x0, _x1) -> MtId (o#_Loc_t _x0, o#ident _x1)
+ | MtFun (_x0, _x1, _x2, _x3) ->
+ MtFun (o#_Loc_t _x0, o#string _x1, o#module_type _x2,
+ o#module_type _x3)
+ | MtQuo (_x0, _x1) -> MtQuo (o#_Loc_t _x0, o#string _x1)
+ | MtSig (_x0, _x1) -> MtSig (o#_Loc_t _x0, o#sig_item _x1)
+ | MtWit (_x0, _x1, _x2) ->
+ MtWit (o#_Loc_t _x0, o#module_type _x1,
+ o#with_constr _x2)
+ | MtAnt (_x0, _x1) -> MtAnt (o#_Loc_t _x0, o#string _x1)
+ method module_expr : module_expr -> module_expr =
+ function
+ | MeNil _x0 -> MeNil (o#_Loc_t _x0)
+ | MeId (_x0, _x1) -> MeId (o#_Loc_t _x0, o#ident _x1)
+ | MeApp (_x0, _x1, _x2) ->
+ MeApp (o#_Loc_t _x0, o#module_expr _x1,
+ o#module_expr _x2)
+ | MeFun (_x0, _x1, _x2, _x3) ->
+ MeFun (o#_Loc_t _x0, o#string _x1, o#module_type _x2,
+ o#module_expr _x3)
+ | MeStr (_x0, _x1) -> MeStr (o#_Loc_t _x0, o#str_item _x1)
+ | MeTyc (_x0, _x1, _x2) ->
+ MeTyc (o#_Loc_t _x0, o#module_expr _x1,
+ o#module_type _x2)
+ | MeAnt (_x0, _x1) -> MeAnt (o#_Loc_t _x0, o#string _x1)
+ method module_binding : module_binding -> module_binding =
+ function
+ | MbNil _x0 -> MbNil (o#_Loc_t _x0)
+ | MbAnd (_x0, _x1, _x2) ->
+ MbAnd (o#_Loc_t _x0, o#module_binding _x1,
+ o#module_binding _x2)
+ | MbColEq (_x0, _x1, _x2, _x3) ->
+ MbColEq (o#_Loc_t _x0, o#string _x1, o#module_type _x2,
+ o#module_expr _x3)
+ | MbCol (_x0, _x1, _x2) ->
+ MbCol (o#_Loc_t _x0, o#string _x1, o#module_type _x2)
+ | MbAnt (_x0, _x1) -> MbAnt (o#_Loc_t _x0, o#string _x1)
+ method meta_option :
+ 'a 'b. ('a -> 'b) -> 'a meta_option -> 'b meta_option =
+ fun _f_a ->
+ function
+ | ONone -> ONone
+ | OSome _x0 -> OSome (_f_a _x0)
+ | OAnt _x0 -> OAnt (o#string _x0)
+ method meta_list :
+ 'a 'b. ('a -> 'b) -> 'a meta_list -> 'b meta_list =
+ fun _f_a ->
+ function
+ | LNil -> LNil
+ | LCons (_x0, _x1) ->
+ LCons (_f_a _x0, o#meta_list _f_a _x1)
+ | LAnt _x0 -> LAnt (o#string _x0)
+ method meta_bool : meta_bool -> meta_bool =
+ function
+ | BTrue -> BTrue
+ | BFalse -> BFalse
+ | BAnt _x0 -> BAnt (o#string _x0)
+ method match_case : match_case -> match_case =
+ function
+ | McNil _x0 -> McNil (o#_Loc_t _x0)
+ | McOr (_x0, _x1, _x2) ->
+ McOr (o#_Loc_t _x0, o#match_case _x1, o#match_case _x2)
+ | McArr (_x0, _x1, _x2, _x3) ->
+ McArr (o#_Loc_t _x0, o#patt _x1, o#expr _x2,
+ o#expr _x3)
+ | McAnt (_x0, _x1) -> McAnt (o#_Loc_t _x0, o#string _x1)
+ method ident : ident -> ident =
+ function
+ | IdAcc (_x0, _x1, _x2) ->
+ IdAcc (o#_Loc_t _x0, o#ident _x1, o#ident _x2)
+ | IdApp (_x0, _x1, _x2) ->
+ IdApp (o#_Loc_t _x0, o#ident _x1, o#ident _x2)
+ | IdLid (_x0, _x1) -> IdLid (o#_Loc_t _x0, o#string _x1)
+ | IdUid (_x0, _x1) -> IdUid (o#_Loc_t _x0, o#string _x1)
+ | IdAnt (_x0, _x1) -> IdAnt (o#_Loc_t _x0, o#string _x1)
+ method expr : expr -> expr =
+ function
+ | ExNil _x0 -> ExNil (o#_Loc_t _x0)
+ | ExId (_x0, _x1) -> ExId (o#_Loc_t _x0, o#ident _x1)
+ | ExAcc (_x0, _x1, _x2) ->
+ ExAcc (o#_Loc_t _x0, o#expr _x1, o#expr _x2)
+ | ExAnt (_x0, _x1) -> ExAnt (o#_Loc_t _x0, o#string _x1)
+ | ExApp (_x0, _x1, _x2) ->
+ ExApp (o#_Loc_t _x0, o#expr _x1, o#expr _x2)
+ | ExAre (_x0, _x1, _x2) ->
+ ExAre (o#_Loc_t _x0, o#expr _x1, o#expr _x2)
+ | ExArr (_x0, _x1) -> ExArr (o#_Loc_t _x0, o#expr _x1)
+ | ExSem (_x0, _x1, _x2) ->
+ ExSem (o#_Loc_t _x0, o#expr _x1, o#expr _x2)
+ | ExAsf _x0 -> ExAsf (o#_Loc_t _x0)
+ | ExAsr (_x0, _x1) -> ExAsr (o#_Loc_t _x0, o#expr _x1)
+ | ExAss (_x0, _x1, _x2) ->
+ ExAss (o#_Loc_t _x0, o#expr _x1, o#expr _x2)
+ | ExChr (_x0, _x1) -> ExChr (o#_Loc_t _x0, o#string _x1)
+ | ExCoe (_x0, _x1, _x2, _x3) ->
+ ExCoe (o#_Loc_t _x0, o#expr _x1, o#ctyp _x2,
+ o#ctyp _x3)
+ | ExFlo (_x0, _x1) -> ExFlo (o#_Loc_t _x0, o#string _x1)
+ | ExFor (_x0, _x1, _x2, _x3, _x4, _x5) ->
+ ExFor (o#_Loc_t _x0, o#string _x1, o#expr _x2,
+ o#expr _x3, o#meta_bool _x4, o#expr _x5)
+ | ExFun (_x0, _x1) ->
+ ExFun (o#_Loc_t _x0, o#match_case _x1)
+ | ExIfe (_x0, _x1, _x2, _x3) ->
+ ExIfe (o#_Loc_t _x0, o#expr _x1, o#expr _x2,
+ o#expr _x3)
+ | ExInt (_x0, _x1) -> ExInt (o#_Loc_t _x0, o#string _x1)
+ | ExInt32 (_x0, _x1) ->
+ ExInt32 (o#_Loc_t _x0, o#string _x1)
+ | ExInt64 (_x0, _x1) ->
+ ExInt64 (o#_Loc_t _x0, o#string _x1)
+ | ExNativeInt (_x0, _x1) ->
+ ExNativeInt (o#_Loc_t _x0, o#string _x1)
+ | ExLab (_x0, _x1, _x2) ->
+ ExLab (o#_Loc_t _x0, o#string _x1, o#expr _x2)
+ | ExLaz (_x0, _x1) -> ExLaz (o#_Loc_t _x0, o#expr _x1)
+ | ExLet (_x0, _x1, _x2, _x3) ->
+ ExLet (o#_Loc_t _x0, o#meta_bool _x1, o#binding _x2,
+ o#expr _x3)
+ | ExLmd (_x0, _x1, _x2, _x3) ->
+ ExLmd (o#_Loc_t _x0, o#string _x1, o#module_expr _x2,
+ o#expr _x3)
+ | ExMat (_x0, _x1, _x2) ->
+ ExMat (o#_Loc_t _x0, o#expr _x1, o#match_case _x2)
+ | ExNew (_x0, _x1) -> ExNew (o#_Loc_t _x0, o#ident _x1)
+ | ExObj (_x0, _x1, _x2) ->
+ ExObj (o#_Loc_t _x0, o#patt _x1, o#class_str_item _x2)
+ | ExOlb (_x0, _x1, _x2) ->
+ ExOlb (o#_Loc_t _x0, o#string _x1, o#expr _x2)
+ | ExOvr (_x0, _x1) ->
+ ExOvr (o#_Loc_t _x0, o#rec_binding _x1)
+ | ExRec (_x0, _x1, _x2) ->
+ ExRec (o#_Loc_t _x0, o#rec_binding _x1, o#expr _x2)
+ | ExSeq (_x0, _x1) -> ExSeq (o#_Loc_t _x0, o#expr _x1)
+ | ExSnd (_x0, _x1, _x2) ->
+ ExSnd (o#_Loc_t _x0, o#expr _x1, o#string _x2)
+ | ExSte (_x0, _x1, _x2) ->
+ ExSte (o#_Loc_t _x0, o#expr _x1, o#expr _x2)
+ | ExStr (_x0, _x1) -> ExStr (o#_Loc_t _x0, o#string _x1)
+ | ExTry (_x0, _x1, _x2) ->
+ ExTry (o#_Loc_t _x0, o#expr _x1, o#match_case _x2)
+ | ExTup (_x0, _x1) -> ExTup (o#_Loc_t _x0, o#expr _x1)
+ | ExCom (_x0, _x1, _x2) ->
+ ExCom (o#_Loc_t _x0, o#expr _x1, o#expr _x2)
+ | ExTyc (_x0, _x1, _x2) ->
+ ExTyc (o#_Loc_t _x0, o#expr _x1, o#ctyp _x2)
+ | ExVrn (_x0, _x1) -> ExVrn (o#_Loc_t _x0, o#string _x1)
+ | ExWhi (_x0, _x1, _x2) ->
+ ExWhi (o#_Loc_t _x0, o#expr _x1, o#expr _x2)
+ method ctyp : ctyp -> ctyp =
+ function
+ | TyNil _x0 -> TyNil (o#_Loc_t _x0)
+ | TyAli (_x0, _x1, _x2) ->
+ TyAli (o#_Loc_t _x0, o#ctyp _x1, o#ctyp _x2)
+ | TyAny _x0 -> TyAny (o#_Loc_t _x0)
+ | TyApp (_x0, _x1, _x2) ->
+ TyApp (o#_Loc_t _x0, o#ctyp _x1, o#ctyp _x2)
+ | TyArr (_x0, _x1, _x2) ->
+ TyArr (o#_Loc_t _x0, o#ctyp _x1, o#ctyp _x2)
+ | TyCls (_x0, _x1) -> TyCls (o#_Loc_t _x0, o#ident _x1)
+ | TyLab (_x0, _x1, _x2) ->
+ TyLab (o#_Loc_t _x0, o#string _x1, o#ctyp _x2)
+ | TyId (_x0, _x1) -> TyId (o#_Loc_t _x0, o#ident _x1)
+ | TyMan (_x0, _x1, _x2) ->
+ TyMan (o#_Loc_t _x0, o#ctyp _x1, o#ctyp _x2)
+ | TyDcl (_x0, _x1, _x2, _x3, _x4) ->
+ TyDcl (o#_Loc_t _x0, o#string _x1, o#list o#ctyp _x2,
+ o#ctyp _x3,
+ o#list
+ (fun (_x0, _x1) -> ((o#ctyp _x0), (o#ctyp _x1)))
+ _x4)
+ | TyObj (_x0, _x1, _x2) ->
+ TyObj (o#_Loc_t _x0, o#ctyp _x1, o#meta_bool _x2)
+ | TyOlb (_x0, _x1, _x2) ->
+ TyOlb (o#_Loc_t _x0, o#string _x1, o#ctyp _x2)
+ | TyPol (_x0, _x1, _x2) ->
+ TyPol (o#_Loc_t _x0, o#ctyp _x1, o#ctyp _x2)
+ | TyQuo (_x0, _x1) -> TyQuo (o#_Loc_t _x0, o#string _x1)
+ | TyQuP (_x0, _x1) -> TyQuP (o#_Loc_t _x0, o#string _x1)
+ | TyQuM (_x0, _x1) -> TyQuM (o#_Loc_t _x0, o#string _x1)
+ | TyVrn (_x0, _x1) -> TyVrn (o#_Loc_t _x0, o#string _x1)
+ | TyRec (_x0, _x1) -> TyRec (o#_Loc_t _x0, o#ctyp _x1)
+ | TyCol (_x0, _x1, _x2) ->
+ TyCol (o#_Loc_t _x0, o#ctyp _x1, o#ctyp _x2)
+ | TySem (_x0, _x1, _x2) ->
+ TySem (o#_Loc_t _x0, o#ctyp _x1, o#ctyp _x2)
+ | TyCom (_x0, _x1, _x2) ->
+ TyCom (o#_Loc_t _x0, o#ctyp _x1, o#ctyp _x2)
+ | TySum (_x0, _x1) -> TySum (o#_Loc_t _x0, o#ctyp _x1)
+ | TyOf (_x0, _x1, _x2) ->
+ TyOf (o#_Loc_t _x0, o#ctyp _x1, o#ctyp _x2)
+ | TyAnd (_x0, _x1, _x2) ->
+ TyAnd (o#_Loc_t _x0, o#ctyp _x1, o#ctyp _x2)
+ | TyOr (_x0, _x1, _x2) ->
+ TyOr (o#_Loc_t _x0, o#ctyp _x1, o#ctyp _x2)
+ | TyPrv (_x0, _x1) -> TyPrv (o#_Loc_t _x0, o#ctyp _x1)
+ | TyMut (_x0, _x1) -> TyMut (o#_Loc_t _x0, o#ctyp _x1)
+ | TyTup (_x0, _x1) -> TyTup (o#_Loc_t _x0, o#ctyp _x1)
+ | TySta (_x0, _x1, _x2) ->
+ TySta (o#_Loc_t _x0, o#ctyp _x1, o#ctyp _x2)
+ | TyVrnEq (_x0, _x1) -> TyVrnEq (o#_Loc_t _x0, o#ctyp _x1)
+ | TyVrnSup (_x0, _x1) ->
+ TyVrnSup (o#_Loc_t _x0, o#ctyp _x1)
+ | TyVrnInf (_x0, _x1) ->
+ TyVrnInf (o#_Loc_t _x0, o#ctyp _x1)
+ | TyVrnInfSup (_x0, _x1, _x2) ->
+ TyVrnInfSup (o#_Loc_t _x0, o#ctyp _x1, o#ctyp _x2)
+ | TyAmp (_x0, _x1, _x2) ->
+ TyAmp (o#_Loc_t _x0, o#ctyp _x1, o#ctyp _x2)
+ | TyOfAmp (_x0, _x1, _x2) ->
+ TyOfAmp (o#_Loc_t _x0, o#ctyp _x1, o#ctyp _x2)
+ | TyAnt (_x0, _x1) -> TyAnt (o#_Loc_t _x0, o#string _x1)
+ method class_type : class_type -> class_type =
+ function
+ | CtNil _x0 -> CtNil (o#_Loc_t _x0)
+ | CtCon (_x0, _x1, _x2, _x3) ->
+ CtCon (o#_Loc_t _x0, o#meta_bool _x1, o#ident _x2,
+ o#ctyp _x3)
+ | CtFun (_x0, _x1, _x2) ->
+ CtFun (o#_Loc_t _x0, o#ctyp _x1, o#class_type _x2)
+ | CtSig (_x0, _x1, _x2) ->
+ CtSig (o#_Loc_t _x0, o#ctyp _x1, o#class_sig_item _x2)
+ | CtAnd (_x0, _x1, _x2) ->
+ CtAnd (o#_Loc_t _x0, o#class_type _x1,
+ o#class_type _x2)
+ | CtCol (_x0, _x1, _x2) ->
+ CtCol (o#_Loc_t _x0, o#class_type _x1,
+ o#class_type _x2)
+ | CtEq (_x0, _x1, _x2) ->
+ CtEq (o#_Loc_t _x0, o#class_type _x1, o#class_type _x2)
+ | CtAnt (_x0, _x1) -> CtAnt (o#_Loc_t _x0, o#string _x1)
+ method class_str_item : class_str_item -> class_str_item =
+ function
+ | CrNil _x0 -> CrNil (o#_Loc_t _x0)
+ | CrSem (_x0, _x1, _x2) ->
+ CrSem (o#_Loc_t _x0, o#class_str_item _x1,
+ o#class_str_item _x2)
+ | CrCtr (_x0, _x1, _x2) ->
+ CrCtr (o#_Loc_t _x0, o#ctyp _x1, o#ctyp _x2)
+ | CrInh (_x0, _x1, _x2) ->
+ CrInh (o#_Loc_t _x0, o#class_expr _x1, o#string _x2)
+ | CrIni (_x0, _x1) -> CrIni (o#_Loc_t _x0, o#expr _x1)
+ | CrMth (_x0, _x1, _x2, _x3, _x4) ->
+ CrMth (o#_Loc_t _x0, o#string _x1, o#meta_bool _x2,
+ o#expr _x3, o#ctyp _x4)
+ | CrVal (_x0, _x1, _x2, _x3) ->
+ CrVal (o#_Loc_t _x0, o#string _x1, o#meta_bool _x2,
+ o#expr _x3)
+ | CrVir (_x0, _x1, _x2, _x3) ->
+ CrVir (o#_Loc_t _x0, o#string _x1, o#meta_bool _x2,
+ o#ctyp _x3)
+ | CrVvr (_x0, _x1, _x2, _x3) ->
+ CrVvr (o#_Loc_t _x0, o#string _x1, o#meta_bool _x2,
+ o#ctyp _x3)
+ | CrAnt (_x0, _x1) -> CrAnt (o#_Loc_t _x0, o#string _x1)
+ method class_sig_item : class_sig_item -> class_sig_item =
+ function
+ | CgNil _x0 -> CgNil (o#_Loc_t _x0)
+ | CgCtr (_x0, _x1, _x2) ->
+ CgCtr (o#_Loc_t _x0, o#ctyp _x1, o#ctyp _x2)
+ | CgSem (_x0, _x1, _x2) ->
+ CgSem (o#_Loc_t _x0, o#class_sig_item _x1,
+ o#class_sig_item _x2)
+ | CgInh (_x0, _x1) ->
+ CgInh (o#_Loc_t _x0, o#class_type _x1)
+ | CgMth (_x0, _x1, _x2, _x3) ->
+ CgMth (o#_Loc_t _x0, o#string _x1, o#meta_bool _x2,
+ o#ctyp _x3)
+ | CgVal (_x0, _x1, _x2, _x3, _x4) ->
+ CgVal (o#_Loc_t _x0, o#string _x1, o#meta_bool _x2,
+ o#meta_bool _x3, o#ctyp _x4)
+ | CgVir (_x0, _x1, _x2, _x3) ->
+ CgVir (o#_Loc_t _x0, o#string _x1, o#meta_bool _x2,
+ o#ctyp _x3)
+ | CgAnt (_x0, _x1) -> CgAnt (o#_Loc_t _x0, o#string _x1)
+ method class_expr : class_expr -> class_expr =
+ function
+ | CeNil _x0 -> CeNil (o#_Loc_t _x0)
+ | CeApp (_x0, _x1, _x2) ->
+ CeApp (o#_Loc_t _x0, o#class_expr _x1, o#expr _x2)
+ | CeCon (_x0, _x1, _x2, _x3) ->
+ CeCon (o#_Loc_t _x0, o#meta_bool _x1, o#ident _x2,
+ o#ctyp _x3)
+ | CeFun (_x0, _x1, _x2) ->
+ CeFun (o#_Loc_t _x0, o#patt _x1, o#class_expr _x2)
+ | CeLet (_x0, _x1, _x2, _x3) ->
+ CeLet (o#_Loc_t _x0, o#meta_bool _x1, o#binding _x2,
+ o#class_expr _x3)
+ | CeStr (_x0, _x1, _x2) ->
+ CeStr (o#_Loc_t _x0, o#patt _x1, o#class_str_item _x2)
+ | CeTyc (_x0, _x1, _x2) ->
+ CeTyc (o#_Loc_t _x0, o#class_expr _x1,
+ o#class_type _x2)
+ | CeAnd (_x0, _x1, _x2) ->
+ CeAnd (o#_Loc_t _x0, o#class_expr _x1,
+ o#class_expr _x2)
+ | CeEq (_x0, _x1, _x2) ->
+ CeEq (o#_Loc_t _x0, o#class_expr _x1, o#class_expr _x2)
+ | CeAnt (_x0, _x1) -> CeAnt (o#_Loc_t _x0, o#string _x1)
+ method binding : binding -> binding =
+ function
+ | BiNil _x0 -> BiNil (o#_Loc_t _x0)
+ | BiAnd (_x0, _x1, _x2) ->
+ BiAnd (o#_Loc_t _x0, o#binding _x1, o#binding _x2)
+ | BiEq (_x0, _x1, _x2) ->
+ BiEq (o#_Loc_t _x0, o#patt _x1, o#expr _x2)
+ | BiAnt (_x0, _x1) -> BiAnt (o#_Loc_t _x0, o#string _x1)
+ end
+ class fold =
+ object ((o : 'self_type))
+ method string = fun (_ : string) -> (o : 'self_type)
+ method int = fun (_ : int) -> (o : 'self_type)
+ method float = fun (_ : float) -> (o : 'self_type)
+ method bool = fun (_ : bool) -> (o : 'self_type)
+ method list :
+ 'a.
+ ('self_type -> 'a -> 'self_type) -> 'a list -> 'self_type =
+ fun f -> List.fold_left f o
+ method option :
+ 'a.
+ ('self_type -> 'a -> 'self_type) ->
+ 'a option -> 'self_type =
+ fun f -> function | None -> o | Some x -> f o x
+ method array :
+ 'a.
+ ('self_type -> 'a -> 'self_type) ->
+ 'a array -> 'self_type =
+ fun f -> Array.fold_left f o
+ method ref :
+ 'a.
+ ('self_type -> 'a -> 'self_type) -> 'a ref -> 'self_type =
+ fun f { contents = x } -> f o x
+ method _Loc_t : Loc.t -> 'self_type = fun _ -> o
+ method with_constr : with_constr -> 'self_type =
+ function
+ | WcNil _x0 -> o#_Loc_t _x0
+ | WcTyp (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
+ | WcMod (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#ident _x1)#ident _x2
+ | WcAnd (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#with_constr _x1)#with_constr _x2
+ | WcAnt (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
+ method str_item : str_item -> 'self_type =
+ function
+ | StNil _x0 -> o#_Loc_t _x0
+ | StCls (_x0, _x1) -> (o#_Loc_t _x0)#class_expr _x1
+ | StClt (_x0, _x1) -> (o#_Loc_t _x0)#class_type _x1
+ | StSem (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#str_item _x1)#str_item _x2
+ | StDir (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#string _x1)#expr _x2
+ | StExc (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#ctyp _x1)#meta_option
+ (fun o -> o#ident) _x2
+ | StExp (_x0, _x1) -> (o#_Loc_t _x0)#expr _x1
+ | StExt (_x0, _x1, _x2, _x3) ->
+ (((o#_Loc_t _x0)#string _x1)#ctyp _x2)#meta_list
+ (fun o -> o#string) _x3
+ | StInc (_x0, _x1) -> (o#_Loc_t _x0)#module_expr _x1
+ | StMod (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#string _x1)#module_expr _x2
+ | StRecMod (_x0, _x1) -> (o#_Loc_t _x0)#module_binding _x1
+ | StMty (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#string _x1)#module_type _x2
+ | StOpn (_x0, _x1) -> (o#_Loc_t _x0)#ident _x1
+ | StTyp (_x0, _x1) -> (o#_Loc_t _x0)#ctyp _x1
+ | StVal (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#meta_bool _x1)#binding _x2
+ | StAnt (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
+ method sig_item : sig_item -> 'self_type =
+ function
+ | SgNil _x0 -> o#_Loc_t _x0
+ | SgCls (_x0, _x1) -> (o#_Loc_t _x0)#class_type _x1
+ | SgClt (_x0, _x1) -> (o#_Loc_t _x0)#class_type _x1
+ | SgSem (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#sig_item _x1)#sig_item _x2
+ | SgDir (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#string _x1)#expr _x2
+ | SgExc (_x0, _x1) -> (o#_Loc_t _x0)#ctyp _x1
+ | SgExt (_x0, _x1, _x2, _x3) ->
+ (((o#_Loc_t _x0)#string _x1)#ctyp _x2)#meta_list
+ (fun o -> o#string) _x3
+ | SgInc (_x0, _x1) -> (o#_Loc_t _x0)#module_type _x1
+ | SgMod (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#string _x1)#module_type _x2
+ | SgRecMod (_x0, _x1) -> (o#_Loc_t _x0)#module_binding _x1
+ | SgMty (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#string _x1)#module_type _x2
+ | SgOpn (_x0, _x1) -> (o#_Loc_t _x0)#ident _x1
+ | SgTyp (_x0, _x1) -> (o#_Loc_t _x0)#ctyp _x1
+ | SgVal (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#string _x1)#ctyp _x2
+ | SgAnt (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
+ method rec_binding : rec_binding -> 'self_type =
+ function
+ | RbNil _x0 -> o#_Loc_t _x0
+ | RbSem (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#rec_binding _x1)#rec_binding _x2
+ | RbEq (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#ident _x1)#expr _x2
+ | RbAnt (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
+ method patt : patt -> 'self_type =
+ function
+ | PaNil _x0 -> o#_Loc_t _x0
+ | PaId (_x0, _x1) -> (o#_Loc_t _x0)#ident _x1
+ | PaAli (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#patt _x1)#patt _x2
+ | PaAnt (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
+ | PaAny _x0 -> o#_Loc_t _x0
+ | PaApp (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#patt _x1)#patt _x2
+ | PaArr (_x0, _x1) -> (o#_Loc_t _x0)#patt _x1
+ | PaCom (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#patt _x1)#patt _x2
+ | PaSem (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#patt _x1)#patt _x2
+ | PaChr (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
+ | PaInt (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
+ | PaInt32 (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
+ | PaInt64 (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
+ | PaNativeInt (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
+ | PaFlo (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
+ | PaLab (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#string _x1)#patt _x2
+ | PaOlb (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#string _x1)#patt _x2
+ | PaOlbi (_x0, _x1, _x2, _x3) ->
+ (((o#_Loc_t _x0)#string _x1)#patt _x2)#expr _x3
+ | PaOrp (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#patt _x1)#patt _x2
+ | PaRng (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#patt _x1)#patt _x2
+ | PaRec (_x0, _x1) -> (o#_Loc_t _x0)#patt _x1
+ | PaEq (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#ident _x1)#patt _x2
+ | PaStr (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
+ | PaTup (_x0, _x1) -> (o#_Loc_t _x0)#patt _x1
+ | PaTyc (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#patt _x1)#ctyp _x2
+ | PaTyp (_x0, _x1) -> (o#_Loc_t _x0)#ident _x1
+ | PaVrn (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
+ method module_type : module_type -> 'self_type =
+ function
+ | MtNil _x0 -> o#_Loc_t _x0
+ | MtId (_x0, _x1) -> (o#_Loc_t _x0)#ident _x1
+ | MtFun (_x0, _x1, _x2, _x3) ->
+ (((o#_Loc_t _x0)#string _x1)#module_type _x2)#
+ module_type _x3
+ | MtQuo (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
+ | MtSig (_x0, _x1) -> (o#_Loc_t _x0)#sig_item _x1
+ | MtWit (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#module_type _x1)#with_constr _x2
+ | MtAnt (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
+ method module_expr : module_expr -> 'self_type =
+ function
+ | MeNil _x0 -> o#_Loc_t _x0
+ | MeId (_x0, _x1) -> (o#_Loc_t _x0)#ident _x1
+ | MeApp (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#module_expr _x1)#module_expr _x2
+ | MeFun (_x0, _x1, _x2, _x3) ->
+ (((o#_Loc_t _x0)#string _x1)#module_type _x2)#
+ module_expr _x3
+ | MeStr (_x0, _x1) -> (o#_Loc_t _x0)#str_item _x1
+ | MeTyc (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#module_expr _x1)#module_type _x2
+ | MeAnt (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
+ method module_binding : module_binding -> 'self_type =
+ function
+ | MbNil _x0 -> o#_Loc_t _x0
+ | MbAnd (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#module_binding _x1)#module_binding _x2
+ | MbColEq (_x0, _x1, _x2, _x3) ->
+ (((o#_Loc_t _x0)#string _x1)#module_type _x2)#
+ module_expr _x3
+ | MbCol (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#string _x1)#module_type _x2
+ | MbAnt (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
+ method meta_option :
+ 'a.
+ ('self_type -> 'a -> 'self_type) ->
+ 'a meta_option -> 'self_type =
+ fun _f_a ->
+ function
+ | ONone -> o
+ | OSome _x0 -> _f_a o _x0
+ | OAnt _x0 -> o#string _x0
+ method meta_list :
+ 'a.
+ ('self_type -> 'a -> 'self_type) ->
+ 'a meta_list -> 'self_type =
+ fun _f_a ->
+ function
+ | LNil -> o
+ | LCons (_x0, _x1) ->
+ (_f_a o _x0)#meta_list (fun o -> _f_a o) _x1
+ | LAnt _x0 -> o#string _x0
+ method meta_bool : meta_bool -> 'self_type =
+ function
+ | BTrue -> o
+ | BFalse -> o
+ | BAnt _x0 -> o#string _x0
+ method match_case : match_case -> 'self_type =
+ function
+ | McNil _x0 -> o#_Loc_t _x0
+ | McOr (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#match_case _x1)#match_case _x2
+ | McArr (_x0, _x1, _x2, _x3) ->
+ (((o#_Loc_t _x0)#patt _x1)#expr _x2)#expr _x3
+ | McAnt (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
+ method ident : ident -> 'self_type =
+ function
+ | IdAcc (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#ident _x1)#ident _x2
+ | IdApp (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#ident _x1)#ident _x2
+ | IdLid (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
+ | IdUid (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
+ | IdAnt (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
+ method expr : expr -> 'self_type =
+ function
+ | ExNil _x0 -> o#_Loc_t _x0
+ | ExId (_x0, _x1) -> (o#_Loc_t _x0)#ident _x1
+ | ExAcc (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#expr _x1)#expr _x2
+ | ExAnt (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
+ | ExApp (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#expr _x1)#expr _x2
+ | ExAre (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#expr _x1)#expr _x2
+ | ExArr (_x0, _x1) -> (o#_Loc_t _x0)#expr _x1
+ | ExSem (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#expr _x1)#expr _x2
+ | ExAsf _x0 -> o#_Loc_t _x0
+ | ExAsr (_x0, _x1) -> (o#_Loc_t _x0)#expr _x1
+ | ExAss (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#expr _x1)#expr _x2
+ | ExChr (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
+ | ExCoe (_x0, _x1, _x2, _x3) ->
+ (((o#_Loc_t _x0)#expr _x1)#ctyp _x2)#ctyp _x3
+ | ExFlo (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
+ | ExFor (_x0, _x1, _x2, _x3, _x4, _x5) ->
+ (((((o#_Loc_t _x0)#string _x1)#expr _x2)#expr _x3)#
+ meta_bool _x4)#
+ expr _x5
+ | ExFun (_x0, _x1) -> (o#_Loc_t _x0)#match_case _x1
+ | ExIfe (_x0, _x1, _x2, _x3) ->
+ (((o#_Loc_t _x0)#expr _x1)#expr _x2)#expr _x3
+ | ExInt (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
+ | ExInt32 (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
+ | ExInt64 (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
+ | ExNativeInt (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
+ | ExLab (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#string _x1)#expr _x2
+ | ExLaz (_x0, _x1) -> (o#_Loc_t _x0)#expr _x1
+ | ExLet (_x0, _x1, _x2, _x3) ->
+ (((o#_Loc_t _x0)#meta_bool _x1)#binding _x2)#expr _x3
+ | ExLmd (_x0, _x1, _x2, _x3) ->
+ (((o#_Loc_t _x0)#string _x1)#module_expr _x2)#expr _x3
+ | ExMat (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#expr _x1)#match_case _x2
+ | ExNew (_x0, _x1) -> (o#_Loc_t _x0)#ident _x1
+ | ExObj (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#patt _x1)#class_str_item _x2
+ | ExOlb (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#string _x1)#expr _x2
+ | ExOvr (_x0, _x1) -> (o#_Loc_t _x0)#rec_binding _x1
+ | ExRec (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#rec_binding _x1)#expr _x2
+ | ExSeq (_x0, _x1) -> (o#_Loc_t _x0)#expr _x1
+ | ExSnd (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#expr _x1)#string _x2
+ | ExSte (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#expr _x1)#expr _x2
+ | ExStr (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
+ | ExTry (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#expr _x1)#match_case _x2
+ | ExTup (_x0, _x1) -> (o#_Loc_t _x0)#expr _x1
+ | ExCom (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#expr _x1)#expr _x2
+ | ExTyc (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#expr _x1)#ctyp _x2
+ | ExVrn (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
+ | ExWhi (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#expr _x1)#expr _x2
+ method ctyp : ctyp -> 'self_type =
+ function
+ | TyNil _x0 -> o#_Loc_t _x0
+ | TyAli (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
+ | TyAny _x0 -> o#_Loc_t _x0
+ | TyApp (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
+ | TyArr (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
+ | TyCls (_x0, _x1) -> (o#_Loc_t _x0)#ident _x1
+ | TyLab (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#string _x1)#ctyp _x2
+ | TyId (_x0, _x1) -> (o#_Loc_t _x0)#ident _x1
+ | TyMan (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
+ | TyDcl (_x0, _x1, _x2, _x3, _x4) ->
+ ((((o#_Loc_t _x0)#string _x1)#list (fun o -> o#ctyp)
+ _x2)#
+ ctyp _x3)#
+ list (fun o (_x0, _x1) -> (o#ctyp _x0)#ctyp _x1) _x4
+ | TyObj (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#ctyp _x1)#meta_bool _x2
+ | TyOlb (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#string _x1)#ctyp _x2
+ | TyPol (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
+ | TyQuo (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
+ | TyQuP (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
+ | TyQuM (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
+ | TyVrn (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
+ | TyRec (_x0, _x1) -> (o#_Loc_t _x0)#ctyp _x1
+ | TyCol (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
+ | TySem (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
+ | TyCom (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
+ | TySum (_x0, _x1) -> (o#_Loc_t _x0)#ctyp _x1
+ | TyOf (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
+ | TyAnd (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
+ | TyOr (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
+ | TyPrv (_x0, _x1) -> (o#_Loc_t _x0)#ctyp _x1
+ | TyMut (_x0, _x1) -> (o#_Loc_t _x0)#ctyp _x1
+ | TyTup (_x0, _x1) -> (o#_Loc_t _x0)#ctyp _x1
+ | TySta (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
+ | TyVrnEq (_x0, _x1) -> (o#_Loc_t _x0)#ctyp _x1
+ | TyVrnSup (_x0, _x1) -> (o#_Loc_t _x0)#ctyp _x1
+ | TyVrnInf (_x0, _x1) -> (o#_Loc_t _x0)#ctyp _x1
+ | TyVrnInfSup (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
+ | TyAmp (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
+ | TyOfAmp (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
+ | TyAnt (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
+ method class_type : class_type -> 'self_type =
+ function
+ | CtNil _x0 -> o#_Loc_t _x0
+ | CtCon (_x0, _x1, _x2, _x3) ->
+ (((o#_Loc_t _x0)#meta_bool _x1)#ident _x2)#ctyp _x3
+ | CtFun (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#ctyp _x1)#class_type _x2
+ | CtSig (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#ctyp _x1)#class_sig_item _x2
+ | CtAnd (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#class_type _x1)#class_type _x2
+ | CtCol (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#class_type _x1)#class_type _x2
+ | CtEq (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#class_type _x1)#class_type _x2
+ | CtAnt (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
+ method class_str_item : class_str_item -> 'self_type =
+ function
+ | CrNil _x0 -> o#_Loc_t _x0
+ | CrSem (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#class_str_item _x1)#class_str_item _x2
+ | CrCtr (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
+ | CrInh (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#class_expr _x1)#string _x2
+ | CrIni (_x0, _x1) -> (o#_Loc_t _x0)#expr _x1
+ | CrMth (_x0, _x1, _x2, _x3, _x4) ->
+ ((((o#_Loc_t _x0)#string _x1)#meta_bool _x2)#expr _x3)#
+ ctyp _x4
+ | CrVal (_x0, _x1, _x2, _x3) ->
+ (((o#_Loc_t _x0)#string _x1)#meta_bool _x2)#expr _x3
+ | CrVir (_x0, _x1, _x2, _x3) ->
+ (((o#_Loc_t _x0)#string _x1)#meta_bool _x2)#ctyp _x3
+ | CrVvr (_x0, _x1, _x2, _x3) ->
+ (((o#_Loc_t _x0)#string _x1)#meta_bool _x2)#ctyp _x3
+ | CrAnt (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
+ method class_sig_item : class_sig_item -> 'self_type =
+ function
+ | CgNil _x0 -> o#_Loc_t _x0
+ | CgCtr (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
+ | CgSem (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#class_sig_item _x1)#class_sig_item _x2
+ | CgInh (_x0, _x1) -> (o#_Loc_t _x0)#class_type _x1
+ | CgMth (_x0, _x1, _x2, _x3) ->
+ (((o#_Loc_t _x0)#string _x1)#meta_bool _x2)#ctyp _x3
+ | CgVal (_x0, _x1, _x2, _x3, _x4) ->
+ ((((o#_Loc_t _x0)#string _x1)#meta_bool _x2)#meta_bool
+ _x3)#
+ ctyp _x4
+ | CgVir (_x0, _x1, _x2, _x3) ->
+ (((o#_Loc_t _x0)#string _x1)#meta_bool _x2)#ctyp _x3
+ | CgAnt (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
+ method class_expr : class_expr -> 'self_type =
+ function
+ | CeNil _x0 -> o#_Loc_t _x0
+ | CeApp (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#class_expr _x1)#expr _x2
+ | CeCon (_x0, _x1, _x2, _x3) ->
+ (((o#_Loc_t _x0)#meta_bool _x1)#ident _x2)#ctyp _x3
+ | CeFun (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#patt _x1)#class_expr _x2
+ | CeLet (_x0, _x1, _x2, _x3) ->
+ (((o#_Loc_t _x0)#meta_bool _x1)#binding _x2)#class_expr
+ _x3
+ | CeStr (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#patt _x1)#class_str_item _x2
+ | CeTyc (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#class_expr _x1)#class_type _x2
+ | CeAnd (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#class_expr _x1)#class_expr _x2
+ | CeEq (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#class_expr _x1)#class_expr _x2
+ | CeAnt (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
+ method binding : binding -> 'self_type =
+ function
+ | BiNil _x0 -> o#_Loc_t _x0
+ | BiAnd (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#binding _x1)#binding _x2
+ | BiEq (_x0, _x1, _x2) ->
+ ((o#_Loc_t _x0)#patt _x1)#expr _x2
+ | BiAnt (_x0, _x1) -> (o#_Loc_t _x0)#string _x1
+ end
+ let map_expr f =
+ object
+ inherit map as super
+ method expr = fun x -> f (super#expr x)
+ end
+ let map_patt f =
+ object
+ inherit map as super
+ method patt = fun x -> f (super#patt x)
+ end
+ let map_ctyp f =
+ object
+ inherit map as super
+ method ctyp = fun x -> f (super#ctyp x)
+ end
+ let map_str_item f =
+ object
+ inherit map as super
+ method str_item = fun x -> f (super#str_item x)
+ end
+ let map_sig_item f =
+ object
+ inherit map as super
+ method sig_item = fun x -> f (super#sig_item x)
+ end
+ let map_loc f =
+ object
+ inherit map as super
+ method _Loc_t = fun x -> f (super#_Loc_t x)
+ end
+ end
+ end
+ module DynAst =
+ struct
+ module Make (Ast : Sig.Ast) : Sig.DynAst with module Ast = Ast =
+ struct
+ module Ast = Ast
+ type 'a tag =
+ | Tag_ctyp | Tag_patt | Tag_expr | Tag_module_type
+ | Tag_sig_item | Tag_with_constr | Tag_module_expr
+ | Tag_str_item | Tag_class_type | Tag_class_sig_item
+ | Tag_class_expr | Tag_class_str_item | Tag_match_case
+ | Tag_ident | Tag_binding | Tag_rec_binding
+ | Tag_module_binding
+ let string_of_tag =
+ function
+ | Tag_ctyp -> "ctyp"
+ | Tag_patt -> "patt"
+ | Tag_expr -> "expr"
+ | Tag_module_type -> "module_type"
+ | Tag_sig_item -> "sig_item"
+ | Tag_with_constr -> "with_constr"
+ | Tag_module_expr -> "module_expr"
+ | Tag_str_item -> "str_item"
+ | Tag_class_type -> "class_type"
+ | Tag_class_sig_item -> "class_sig_item"
+ | Tag_class_expr -> "class_expr"
+ | Tag_class_str_item -> "class_str_item"
+ | Tag_match_case -> "match_case"
+ | Tag_ident -> "ident"
+ | Tag_binding -> "binding"
+ | Tag_rec_binding -> "rec_binding"
+ | Tag_module_binding -> "module_binding"
+ let ctyp_tag = Tag_ctyp
+ let patt_tag = Tag_patt
+ let expr_tag = Tag_expr
+ let module_type_tag = Tag_module_type
+ let sig_item_tag = Tag_sig_item
+ let with_constr_tag = Tag_with_constr
+ let module_expr_tag = Tag_module_expr
+ let str_item_tag = Tag_str_item
+ let class_type_tag = Tag_class_type
+ let class_sig_item_tag = Tag_class_sig_item
+ let class_expr_tag = Tag_class_expr
+ let class_str_item_tag = Tag_class_str_item
+ let match_case_tag = Tag_match_case
+ let ident_tag = Tag_ident
+ let binding_tag = Tag_binding
+ let rec_binding_tag = Tag_rec_binding
+ let module_binding_tag = Tag_module_binding
+ type dyn
+ external dyn_tag : 'a tag -> dyn tag = "%identity"
+ module Pack (X : sig type 'a t end) =
+ struct
+ type pack = ((dyn tag) * Obj.t)
+ exception Pack_error
+ let pack tag v = ((dyn_tag tag), (Obj.repr v))
+ let unpack (tag : 'a tag) (tag', obj) =
+ if (dyn_tag tag) = tag'
+ then (Obj.obj obj : 'a X.t)
+ else raise Pack_error
+ let print_tag f (tag, _) =
+ Format.pp_print_string f (string_of_tag tag)
+ end
end
end
module Quotation =
module Make (Ast : Sig.Ast) : Sig.Quotation with module Ast = Ast =
struct
module Ast = Ast
+ module DynAst = DynAst.Make(Ast)
module Loc = Ast.Loc
open Format
open Sig
type 'a expand_fun = Loc.t -> string option -> string -> 'a
- type expander =
- | ExStr of (bool -> string expand_fun)
- | ExAst of Ast.expr expand_fun * Ast.patt expand_fun
- let expanders_table = ref []
+ module Exp_key = DynAst.Pack(struct type 'a t = unit end)
+ module Exp_fun =
+ DynAst.Pack(struct type 'a t = 'a expand_fun end)
+ let expanders_table :
+ (((string * Exp_key.pack) * Exp_fun.pack) list) ref = ref []
let default = ref ""
let translate = ref (fun x -> x)
let expander_name name =
match !translate name with | "" -> !default | name -> name
- let find name = List.assoc (expander_name name) !expanders_table
- let add name f = expanders_table := (name, f) :: !expanders_table
+ let find name tag =
+ let key = ((expander_name name), (Exp_key.pack tag ()))
+ in Exp_fun.unpack tag (List.assoc key !expanders_table)
+ let add name tag f =
+ let elt = ((name, (Exp_key.pack tag ())), (Exp_fun.pack tag f))
+ in expanders_table := elt :: !expanders_table
let dump_file = ref None
module Error =
struct
type error =
| Finding | Expanding | ParsingResult of Loc.t * string
| Locating
- type t = (string * error * exn)
+ type t = (string * string * error * exn)
exception E of t
- let print ppf (name, ctx, exn) =
+ let print ppf (name, position, ctx, exn) =
let name = if name = "" then !default else name in
- let pp x = fprintf ppf "@?@[<2>While %s %S:" x name in
+ let pp x =
+ fprintf ppf "@?@[<2>While %s %S in a position of %S:" x
+ name position in
let () =
match ctx with
| Finding ->
(pp "finding quotation";
- fprintf ppf " available quotations are:\n@[<2>";
- List.iter (fun (s, _) -> fprintf ppf "%s@ " s)
+ fprintf ppf "@ @[<hv2>Available quotations are:@\n";
+ List.iter
+ (fun ((s, t), _) ->
+ fprintf ppf
+ "@[<2>%s@ (in@ a@ position@ of %a)@]@ " s
+ Exp_key.print_tag t)
!expanders_table;
fprintf ppf "@]")
| Expanding -> pp "expanding quotation"
end
let _ = let module M = ErrorHandler.Register(Error) in ()
open Error
- let expand_quotation loc expander quot =
+ let expand_quotation loc expander pos_tag quot =
let loc_name_opt =
if quot.q_loc = "" then None else Some quot.q_loc
in
try expander loc loc_name_opt quot.q_contents
with | (Loc.Exc_located (_, (Error.E _)) as exc) -> raise exc
| Loc.Exc_located (iloc, exc) ->
- let exc1 = Error.E (((quot.q_name), Expanding, exc))
+ let exc1 =
+ Error.E (((quot.q_name), pos_tag, Expanding, exc))
in raise (Loc.Exc_located (iloc, exc1))
| exc ->
- let exc1 = Error.E (((quot.q_name), Expanding, exc))
+ let exc1 =
+ Error.E (((quot.q_name), pos_tag, Expanding, exc))
in raise (Loc.Exc_located (loc, exc1))
- let parse_quotation_result parse loc quot str =
+ let parse_quotation_result parse loc quot pos_tag str =
try parse loc str
with
- | Loc.Exc_located (iloc, (Error.E ((n, Expanding, exc)))) ->
+ | Loc.Exc_located (iloc,
+ (Error.E ((n, pos_tag, Expanding, exc)))) ->
let ctx = ParsingResult (iloc, quot.q_contents) in
- let exc1 = Error.E ((n, ctx, exc))
+ let exc1 = Error.E ((n, pos_tag, ctx, exc))
in raise (Loc.Exc_located (iloc, exc1))
| Loc.Exc_located (iloc, ((Error.E _ as exc))) ->
raise (Loc.Exc_located (iloc, exc))
| Loc.Exc_located (iloc, exc) ->
let ctx = ParsingResult (iloc, quot.q_contents) in
- let exc1 = Error.E (((quot.q_name), ctx, exc))
+ let exc1 = Error.E (((quot.q_name), pos_tag, ctx, exc))
in raise (Loc.Exc_located (iloc, exc1))
- let handle_quotation loc proj in_expr parse quotation =
+ let expand loc quotation tag =
+ let pos_tag = DynAst.string_of_tag tag in
let name = quotation.q_name in
let expander =
- try find name
+ try find name tag
with | (Loc.Exc_located (_, (Error.E _)) as exc) -> raise exc
| Loc.Exc_located (qloc, exc) ->
raise
- (Loc.Exc_located (qloc, Error.E ((name, Finding, exc))))
+ (Loc.Exc_located (qloc,
+ Error.E ((name, pos_tag, Finding, exc))))
| exc ->
raise
- (Loc.Exc_located (loc, Error.E ((name, Finding, exc)))) in
+ (Loc.Exc_located (loc,
+ Error.E ((name, pos_tag, Finding, exc)))) in
let loc = Loc.join (Loc.move `start quotation.q_shift loc)
- in
- match expander with
- | ExStr f ->
- let new_str = expand_quotation loc (f in_expr) quotation
- in parse_quotation_result parse loc quotation new_str
- | ExAst (fe, fp) ->
- expand_quotation loc (proj (fe, fp)) quotation
- let expand_expr parse loc x =
- handle_quotation loc fst true parse x
- let expand_patt parse loc x =
- handle_quotation loc snd false parse x
+ in expand_quotation loc expander pos_tag quotation
end
end
module AstFilters =
let string_of_string_token loc s =
try Token.Eval.string s
with | (Failure _ as exn) -> Loc.raise loc exn
+ let remove_underscores s =
+ let l = String.length s in
+ let rec remove src dst =
+ if src >= l
+ then if dst >= l then s else String.sub s 0 dst
+ else
+ (match s.[src] with
+ | '_' -> remove (src + 1) dst
+ | c -> (s.[dst] <- c; remove (src + 1) (dst + 1)))
+ in remove 0 0
let mkloc = Loc.to_ocaml_location
let mkghloc loc = Loc.to_ocaml_location (Loc.ghostify loc)
- let mktyp loc d = { ptyp_desc = d; ptyp_loc = mkloc loc; }
- let mkpat loc d = { ppat_desc = d; ppat_loc = mkloc loc; }
- let mkghpat loc d = { ppat_desc = d; ppat_loc = mkghloc loc; }
- let mkexp loc d = { pexp_desc = d; pexp_loc = mkloc loc; }
- let mkmty loc d = { pmty_desc = d; pmty_loc = mkloc loc; }
- let mksig loc d = { psig_desc = d; psig_loc = mkloc loc; }
- let mkmod loc d = { pmod_desc = d; pmod_loc = mkloc loc; }
- let mkstr loc d = { pstr_desc = d; pstr_loc = mkloc loc; }
- let mkfield loc d = { pfield_desc = d; pfield_loc = mkloc loc; }
- let mkcty loc d = { pcty_desc = d; pcty_loc = mkloc loc; }
- let mkpcl loc d = { pcl_desc = d; pcl_loc = mkloc loc; }
+ let mktyp loc d = { ptyp_desc = d; ptyp_loc = mkloc loc; }
+ let mkpat loc d = { ppat_desc = d; ppat_loc = mkloc loc; }
+ let mkghpat loc d = { ppat_desc = d; ppat_loc = mkghloc loc; }
+ let mkexp loc d = { pexp_desc = d; pexp_loc = mkloc loc; }
+ let mkmty loc d = { pmty_desc = d; pmty_loc = mkloc loc; }
+ let mksig loc d = { psig_desc = d; psig_loc = mkloc loc; }
+ let mkmod loc d = { pmod_desc = d; pmod_loc = mkloc loc; }
+ let mkstr loc d = { pstr_desc = d; pstr_loc = mkloc loc; }
+ let mkfield loc d = { pfield_desc = d; pfield_loc = mkloc loc; }
+ let mkcty loc d = { pcty_desc = d; pcty_loc = mkloc loc; }
+ let mkpcl loc d = { pcl_desc = d; pcl_loc = mkloc loc; }
let mkpolytype t =
match t.ptyp_desc with
| Ptyp_poly (_, _) -> t
- | _ -> { (t) with ptyp_desc = Ptyp_poly ([], t); }
+ | _ -> { (t) with ptyp_desc = Ptyp_poly ([], t); }
let mb2b =
function
| Ast.BTrue -> true
let (params, variance) = List.split tl
in
{
-
ptype_params = params;
ptype_cstrs = cl;
ptype_kind = tk;
| _ -> assert false
let rec type_decl tl cl loc m pflag =
function
- | TyMan (_, t1, t2) ->
+ | Ast.TyMan (_, t1, t2) ->
type_decl tl cl loc (Some (ctyp t1)) pflag t2
- | TyPrv (_, t) -> type_decl tl cl loc m true t
- | TyRec (_, t) ->
+ | Ast.TyPrv (_, t) -> type_decl tl cl loc m true t
+ | Ast.TyRec (_, t) ->
mktype loc tl cl
(Ptype_record (List.map mktrecord (list_of_ctyp t []),
mkprivate' pflag))
m
- | TySum (_, t) ->
+ | Ast.TySum (_, t) ->
mktype loc tl cl
(Ptype_variant (List.map mkvariant (list_of_ctyp t []),
mkprivate' pflag))
else
(let m =
match t with
- | TyQuo (_, s) ->
- if List.mem_assoc s tl
- then Some (ctyp t)
- else None
+ | Ast.TyNil _ -> None
| _ -> Some (ctyp t) in
let k = if pflag then Ptype_private else Ptype_abstract
in mktype loc tl cl k m)
let type_decl tl cl t =
type_decl tl cl (loc_of_ctyp t) None false t
- let mkvalue_desc t p = { pval_type = ctyp t; pval_prim = p; }
+ let mkvalue_desc t p = { pval_type = ctyp t; pval_prim = p; }
let rec list_of_meta_list =
function
| Ast.LNil -> []
(id,
(Pwith_type
{
-
ptype_params = params;
ptype_cstrs = [];
ptype_kind = kind;
error loc
"Integer literal exceeds the range of representable integers of type nativeint")
in mkpat loc (Ppat_constant (Const_nativeint nati))
- | PaFlo (loc, s) -> mkpat loc (Ppat_constant (Const_float s))
+ | PaFlo (loc, s) ->
+ mkpat loc
+ (Ppat_constant (Const_float (remove_underscores s)))
| PaLab (loc, _, _) ->
error loc "labeled pattern not allowed here"
| PaOlb (loc, _, _) | PaOlbi (loc, _, _, _) ->
as p) -> error (loc_of_patt p) "invalid pattern"
and mklabpat =
function
- | Ast.PaEq (_, (Ast.PaId (_, i)), p) ->
+ | Ast.PaEq (_, i, p) ->
((ident ~conv_lid: conv_lab i), (patt p))
| p -> error (loc_of_patt p) "invalid pattern"
let rec expr_fa al =
let t1 =
(match t1 with | Ast.TyNil _ -> None | t -> Some (ctyp t))
in mkexp loc (Pexp_constraint (expr e, t1, Some (ctyp t2)))
- | ExFlo (loc, s) -> mkexp loc (Pexp_constant (Const_float s))
+ | ExFlo (loc, s) ->
+ mkexp loc
+ (Pexp_constant (Const_float (remove_underscores s)))
| ExFor (loc, i, e1, e2, df, el) ->
let e3 = ExSeq (loc, el) in
let df = if mb2b df then Upto else Downto
mkexp loc (Pexp_override (mkideexp iel []))
| ExRec (loc, lel, eo) ->
(match lel with
- | Ast.BiNil _ -> error loc "empty record"
+ | Ast.RbNil _ -> error loc "empty record"
| _ ->
let eo =
(match eo with
| e -> ("", (expr e))
and binding x acc =
match x with
- | Ast.BiAnd (_, x, y) | Ast.BiSem (_, x, y) ->
- binding x (binding y acc)
+ | Ast.BiAnd (_, x, y) -> binding x (binding y acc)
| Ast.BiEq (_, p, e) -> ((patt p), (expr e)) :: acc
| Ast.BiNil _ -> acc
| _ -> assert false
| w -> mkexp (loc_of_expr w) (Pexp_when (expr w, expr e))
and mklabexp x acc =
match x with
- | Ast.BiAnd (_, x, y) | Ast.BiSem (_, x, y) ->
- mklabexp x (mklabexp y acc)
- | Ast.BiEq (_, (Ast.PaId (_, i)), e) ->
+ | Ast.RbSem (_, x, y) -> mklabexp x (mklabexp y acc)
+ | Ast.RbEq (_, i, e) ->
((ident ~conv_lid: conv_lab i), (expr e)) :: acc
| _ -> assert false
and mkideexp x acc =
match x with
- | Ast.BiAnd (_, x, y) | Ast.BiSem (_, x, y) ->
- mkideexp x (mkideexp y acc)
- | Ast.BiEq (_, (Ast.PaId (_, (Ast.IdLid (_, s)))), e) ->
- (s, (expr e)) :: acc
+ | Ast.RbSem (_, x, y) -> mkideexp x (mkideexp y acc)
+ | Ast.RbEq (_, (Ast.IdLid (_, s)), e) -> (s, (expr e)) :: acc
| _ -> assert false
and mktype_decl x acc =
match x with
| _ -> assert false
and module_type =
function
- | MtId (loc, i) -> mkmty loc (Pmty_ident (long_uident i))
- | MtFun (loc, n, nt, mt) ->
+ | Ast.MtNil loc ->
+ error loc "abstract/nil module type not allowed here"
+ | Ast.MtId (loc, i) -> mkmty loc (Pmty_ident (long_uident i))
+ | Ast.MtFun (loc, n, nt, mt) ->
mkmty loc
(Pmty_functor (n, module_type nt, module_type mt))
- | MtQuo (loc, _) ->
- error loc "abstract module type not allowed here"
- | MtSig (loc, sl) ->
+ | Ast.MtQuo (loc, _) ->
+ error loc "module type variable not allowed here"
+ | Ast.MtSig (loc, sl) ->
mkmty loc (Pmty_signature (sig_item sl []))
- | MtWit (loc, mt, wc) ->
+ | Ast.MtWit (loc, mt, wc) ->
mkmty loc (Pmty_with (module_type mt, mkwithc wc []))
| Ast.MtAnt (_, _) -> assert false
and sig_item s l =
| _ -> assert false
and module_expr =
function
- | MeId (loc, i) -> mkmod loc (Pmod_ident (long_uident i))
- | MeApp (loc, me1, me2) ->
+ | Ast.MeNil loc -> error loc "nil module expression"
+ | Ast.MeId (loc, i) -> mkmod loc (Pmod_ident (long_uident i))
+ | Ast.MeApp (loc, me1, me2) ->
mkmod loc (Pmod_apply (module_expr me1, module_expr me2))
- | MeFun (loc, n, mt, me) ->
+ | Ast.MeFun (loc, n, mt, me) ->
mkmod loc
(Pmod_functor (n, module_type mt, module_expr me))
- | MeStr (loc, sl) ->
+ | Ast.MeStr (loc, sl) ->
mkmod loc (Pmod_structure (str_item sl []))
- | MeTyc (loc, me, mt) ->
+ | Ast.MeTyc (loc, me, mt) ->
mkmod loc
(Pmod_constraint (module_expr me, module_type mt))
| Ast.MeAnt (loc, _) ->
(List.split (class_parameters t []))))
in
{
-
pci_virt = if mb2b vir then Virtual else Concrete;
pci_params = (params, (mkloc loc_params));
pci_name = name;
(List.split (class_parameters t []))))
in
{
-
pci_virt = if mb2b vir then Virtual else Concrete;
pci_params = (params, (mkloc loc_params));
pci_name = name;
method expr =
function
| Ast.ExLet (_, _, (Ast.BiNil _), e) |
- Ast.ExRec (_, (Ast.BiNil _), e) |
+ Ast.ExRec (_, (Ast.RbNil _), e) |
Ast.ExCom (_, (Ast.ExNil _), e) |
Ast.ExCom (_, e, (Ast.ExNil _)) |
Ast.ExSem (_, (Ast.ExNil _), e) |
method binding =
function
| Ast.BiAnd (_, (Ast.BiNil _), bi) |
- Ast.BiAnd (_, bi, (Ast.BiNil _)) |
- Ast.BiSem (_, (Ast.BiNil _), bi) |
- Ast.BiSem (_, bi, (Ast.BiNil _)) -> self#binding bi
+ Ast.BiAnd (_, bi, (Ast.BiNil _)) -> self#binding bi
| bi -> super#binding bi
+ method rec_binding =
+ function
+ | Ast.RbSem (_, (Ast.RbNil _), bi) |
+ Ast.RbSem (_, bi, (Ast.RbNil _)) -> self#rec_binding bi
+ | bi -> super#rec_binding bi
method module_binding =
function
| Ast.MbAnd (_, (Ast.MbNil _), mb) |
let to_string _ = assert false
end
module EmptyPrinter :
- sig module Make (Ast : Sig.Ast) : Sig.Printer with module Ast = Ast end =
+ sig module Make (Ast : Sig.Ast) : Sig.Printer(Ast).S end =
struct
module Make (Ast : Sig.Ast) =
struct
- module Ast = Ast
let print_interf ?input_file:(_) ?output_file:(_) _ =
failwith "No interface printer"
let print_implem ?input_file:(_) ?output_file:(_) _ =
module S = Set.Make(String)
let rec fold_binding_vars f bi acc =
match bi with
- | Ast.BiAnd (_, bi1, bi2) | Ast.BiSem (_, bi1, bi2) ->
+ | Ast.BiAnd (_, bi1, bi2) ->
fold_binding_vars f bi1 (fold_binding_vars f bi2 acc)
| Ast.BiEq (_, (Ast.PaId (_, (Ast.IdLid (_, i)))), _) ->
f i acc
| _ -> assert false
class ['accu] c_fold_pattern_vars f init =
- object (o)
- inherit Ast.fold as super
+ object inherit Ast.fold as super
val acc = init
method acc : 'accu = acc
method patt =
function
| Ast.PaId (_, (Ast.IdLid (_, s))) |
Ast.PaLab (_, s, (Ast.PaNil _)) |
- Ast.PaOlb (_, s, (Ast.PaNil _)) ->
- {< acc = f s acc; >}
- | Ast.PaEq (_, (Ast.PaId (_, (Ast.IdLid (_, _)))), p) ->
- o#patt p
+ Ast.PaOlb (_, s, (Ast.PaNil _)) -> {< acc = f s acc; >}
| p -> super#patt p
end
let fold_pattern_vars f p init =
val free = (free_init : 'accu)
val env = (env_init : S.t)
method free = free
- method set_env = fun env -> {< env = env; >}
- method add_atom = fun s -> {< env = S.add s env; >}
+ method set_env = fun env -> {< env = env; >}
+ method add_atom = fun s -> {< env = S.add s env; >}
method add_patt =
- fun p -> {< env = fold_pattern_vars S.add p env; >}
+ fun p -> {< env = fold_pattern_vars S.add p env; >}
method add_binding =
- fun bi -> {< env = fold_binding_vars S.add bi env; >}
+ fun bi -> {< env = fold_binding_vars S.add bi env; >}
method expr =
function
| Ast.ExId (_, (Ast.IdLid (_, s))) |
Ast.ExLab (_, s, (Ast.ExNil _)) |
Ast.ExOlb (_, s, (Ast.ExNil _)) ->
- if S.mem s env then o else {< free = f s free; >}
+ if S.mem s env then o else {< free = f s free; >}
| Ast.ExLet (_, Ast.BFalse, bi, e) ->
(((o#add_binding bi)#expr e)#set_env env)#binding bi
| Ast.ExLet (_, Ast.BTrue, bi, e) ->
| None -> ()
let mk strm =
match Stream.peek strm with
- | Some ((_, loc)) -> { strm = strm; loc = loc; }
- | None -> { strm = strm; loc = Loc.ghost; }
+ | Some ((_, loc)) -> { strm = strm; loc = loc; }
+ | None -> { strm = strm; loc = Loc.ghost; }
let stream c = c.strm
let peek_nth c n =
let list = Stream.npeek n c.strm in
| Some t ->
Some
(Node
- {
-
- node = Sself;
- son = t;
- brother = DeadEnd;
+ { node = Sself; son = t; brother = DeadEnd;
})
| None -> search_tree level.lprefix)
and search_tree t =
Some
(Node
{
-
node = symb;
son = n.son;
brother = DeadEnd;
Some
(Node
{
-
node = n.node;
son = t;
brother = DeadEnd;
txt ^ (" (in [" ^ (entry.ename ^ "])")))
let symb_failed entry prev_symb_result prev_symb symb =
let tree =
- Node { node = symb; brother = DeadEnd; son = DeadEnd; }
+ Node { node = symb; brother = DeadEnd; son = DeadEnd; }
in tree_failed entry prev_symb_result prev_symb tree
let symb_failed_txt e s1 s2 = symb_failed e 0 s1 s2
end
function
| Node { node = s; brother = bro; son = son } ->
Node
- { node = top_symb entry s; brother = bro; son = son;
+ { node = top_symb entry s; brother = bro; son = son;
}
| LocAct (_, _) | DeadEnd -> raise Stream.Failure
let entry_of_symb entry =
let assoc = match assoc with | Some a -> a | None -> LeftA
in
{
-
assoc = assoc;
lname = lname;
lsuffix = DeadEnd;
else ()
| None -> ());
{
-
assoc = a;
lname = lev.lname;
lsuffix = lev.lsuffix;
| Node { node = s; son = son; brother = bro } ->
Node
{
-
node = s;
son = son;
brother = insert [] bro;
| None ->
Node
{
-
node = s;
son = insert sl DeadEnd;
brother = tree;
(let t =
Node
{
-
node = s1;
son = insert sl son;
brother = bro;
| None ->
Node
{
-
node = s;
son = insert sl DeadEnd;
brother = bro;
} in
let t =
- Node { node = s1; son = son; brother = bro; }
+ Node { node = s1; son = son; brother = bro; }
in Some t)
else
(match try_insert s sl bro with
| Some bro ->
let t =
Node
- { node = s1; son = son; brother = bro;
- }
+ { node = s1; son = son; brother = bro; }
in Some t
| None -> None)
| LocAct (_, _) | DeadEnd -> None
function
| s :: sl ->
Node
- {
-
- node = s;
- son = insert_new sl;
- brother = DeadEnd;
+ { node = s; son = insert_new sl; brother = DeadEnd;
}
| [] -> LocAct (action, [])
in insert gsymbols tree
match e1 with
| true ->
{
-
assoc = slev.assoc;
lname = slev.lname;
lsuffix =
}
| false ->
{
-
assoc = slev.assoc;
lname = slev.lname;
lsuffix = slev.lsuffix;
((dsl,
(Node
{
-
node = n.node;
son = n.son;
brother = t;
((dsl,
(Node
{
-
node = n.node;
son = n.son;
brother = t;
| Some ((Some dsl, t)) ->
let t =
Node
- { node = n.node; son = t; brother = n.brother; }
+ { node = n.node; son = t; brother = n.brother; }
in Some (((Some (n.node :: dsl)), t))
| Some ((None, t)) ->
let t =
Node
- { node = n.node; son = t; brother = n.brother; }
+ { node = n.node; son = t; brother = n.brother; }
in Some ((None, t))
| None -> None
in delete_in_tree
| _ ->
let lev =
{
-
assoc = lev.assoc;
lname = lev.lname;
lsuffix = t;
| _ ->
let lev =
{
-
assoc = lev.assoc;
lname = lev.lname;
lsuffix = lev.lsuffix;
let dump ppf e = fprintf ppf "%a@\n" Dump.entry e
let mk g n =
{
-
egram = g;
ename = n;
estart = Tools.empty_entry n;
let of_parser g n (p : (Token.t * Loc.t) Stream.t -> 'a) :
'a t =
{
-
egram = g;
ename = n;
estart = (fun _ _ ts -> Action.mk (p ts));
let gkeywords = Hashtbl.create 301
in
{
-
gkeywords = gkeywords;
gfilter = Token.Filter.mk (Hashtbl.mem gkeywords);
glexer = Lexer.mk ();
let gkeywords = Hashtbl.create 301
in
{
-
gkeywords = gkeywords;
gfilter = Token.Filter.mk (Hashtbl.mem gkeywords);
glexer = Lexer.mk ();
module DumpCamlp4Ast :
sig
module Id : Sig.Id
- module Make (Syntax : Sig.Syntax) :
- Sig.Printer with module Ast = Syntax.Ast
+ module Make (Syntax : Sig.Syntax) : Sig.Printer(Syntax.Ast).S
end =
struct
module Id =
struct
let name = "Camlp4Printers.DumpCamlp4Ast"
let version =
- "$Id: Camlp4.ml,v 1.3 2007/02/26 16:43:01 ertai Exp $"
+ "$Id: DumpCamlp4Ast.ml,v 1.5.4.1 2007/03/30 15:50:12 pouillar Exp $"
end
- module Make (Syntax : Sig.Syntax) :
- Sig.Printer with module Ast = Syntax.Ast =
+ module Make (Syntax : Sig.Syntax) : Sig.Printer(Syntax.Ast).S =
struct
include Syntax
let with_open_out_file x f =
module DumpOCamlAst :
sig
module Id : Sig.Id
- module Make (Syntax : Sig.Camlp4Syntax) :
- Sig.Printer with module Ast = Syntax.Ast
+ module Make (Syntax : Sig.Camlp4Syntax) : Sig.Printer(Syntax.Ast).S
end =
struct
module Id : Sig.Id =
struct
let name = "Camlp4Printers.DumpOCamlAst"
let version =
- "$Id: Camlp4.ml,v 1.3 2007/02/26 16:43:01 ertai Exp $"
+ "$Id: DumpOCamlAst.ml,v 1.5.4.1 2007/03/30 15:50:12 pouillar Exp $"
end
- module Make (Syntax : Sig.Camlp4Syntax) :
- Sig.Printer with module Ast = Syntax.Ast =
+ module Make (Syntax : Sig.Camlp4Syntax) : Sig.Printer(Syntax.Ast).S =
struct
include Syntax
module Ast2pt = Struct.Camlp4Ast2OCamlAst.Make(Ast)
module Null :
sig
module Id : Sig.Id
- module Make (Syntax : Sig.Syntax) :
- Sig.Printer with module Ast = Syntax.Ast
+ module Make (Syntax : Sig.Syntax) : Sig.Printer(Syntax.Ast).S
end =
struct
module Id =
struct
let name = "Camlp4.Printers.Null"
let version =
- "$Id: Camlp4.ml,v 1.3 2007/02/26 16:43:01 ertai Exp $"
+ "$Id: Null.ml,v 1.2 2007/02/07 10:09:21 ertai Exp $"
end
module Make (Syntax : Sig.Syntax) =
struct
sig
open Format
include Sig.Camlp4Syntax with module Loc = Syntax.Loc
- and module Warning = Syntax.Warning
and module Token = Syntax.Token and module Ast = Syntax.Ast
and module Gram = Syntax.Gram
val list' :
method ctyp1 : formatter -> Ast.ctyp -> unit
method constructor_type : formatter -> Ast.ctyp -> unit
method dot_expr : formatter -> Ast.expr -> unit
+ method apply_expr : formatter -> Ast.expr -> unit
method expr : formatter -> Ast.expr -> unit
method expr_list : formatter -> Ast.expr list -> unit
method expr_list_cons :
method intlike : formatter -> string -> unit
method binding : formatter -> Ast.binding -> unit
method record_binding :
- formatter -> Ast.binding -> unit
+ formatter -> Ast.rec_binding -> unit
method match_case : formatter -> Ast.match_case -> unit
method match_case_aux :
formatter -> Ast.match_case -> unit
val print :
string option ->
(printer -> formatter -> 'a -> unit) -> 'a -> unit
- val print_interf :
- ?input_file: string ->
- ?output_file: string -> Ast.sig_item -> unit
- val print_implem :
- ?input_file: string ->
- ?output_file: string -> Ast.str_item -> unit
end
- module MakeMore (Syntax : Sig.Camlp4Syntax) :
- Sig.Printer with module Ast = Syntax.Ast
+ module MakeMore (Syntax : Sig.Camlp4Syntax) : Sig.Printer(Syntax.
+ Ast).S
end =
struct
open Format
struct
let name = "Camlp4.Printers.OCaml"
let version =
- "$Id: Camlp4.ml,v 1.3 2007/02/26 16:43:01 ertai Exp $"
+ "$Id: OCaml.ml,v 1.21.2.7 2007/05/10 13:31:20 pouillar Exp $"
end
module Make (Syntax : Sig.Camlp4Syntax) =
struct
object (o)
val pipe = false
val semi = false
- method under_pipe = {< pipe = true; >}
- method under_semi = {< semi = true; >}
- method reset_semi = {< semi = false; >}
- method reset = {< pipe = false; semi = false; >}
+ method under_pipe = {< pipe = true; >}
+ method under_semi = {< semi = true; >}
+ method reset_semi = {< semi = false; >}
+ method reset = {< pipe = false; semi = false; >}
val semisep = ";;"
val andsep =
("@]@ @[<2>and@ " : (unit, formatter, unit) format)
val curry_constr = init_curry_constr
val var_conversion = false
method semisep = semisep
- method set_semisep = fun s -> {< semisep = s; >}
+ method set_semisep = fun s -> {< semisep = s; >}
method set_comments =
fun b ->
- {< mode = if b then `comments else `no_comments; >}
- method set_loc_and_comments =
- {< mode = `loc_and_comments; >}
- method set_curry_constr = fun b -> {< curry_constr = b; >}
+ {< mode = if b then `comments else `no_comments; >}
+ method set_loc_and_comments = {< mode = `loc_and_comments; >}
+ method set_curry_constr = fun b -> {< curry_constr = b; >}
method print_comments_before =
fun loc f ->
match mode with
| _ ->
pp f "%a @[<0>%a=@]@ %a" o#simple_patt p
(list' o#simple_patt "" "@ ") pl o#expr e)
- | Ast.BiSem (_, _, _) -> assert false
| Ast.BiAnt (_, s) -> o#anti f s
method record_binding =
fun f bi ->
- let () = o#node f bi Ast.loc_of_binding
+ let () = o#node f bi Ast.loc_of_rec_binding
in
match bi with
- | Ast.BiNil _ -> ()
- | Ast.BiEq (_, p, e) ->
- pp f "@ @[<2>%a =@ %a@];" o#simple_patt p o#expr e
- | Ast.BiSem (_, b1, b2) ->
+ | Ast.RbNil _ -> ()
+ | Ast.RbEq (_, i, e) ->
+ pp f "@ @[<2>%a =@ %a@];" o#var_ident i o#expr e
+ | Ast.RbSem (_, b1, b2) ->
(o#under_semi#record_binding f b1;
o#under_semi#record_binding f b2)
- | Ast.BiAnd (_, _, _) -> assert false
- | Ast.BiAnt (_, s) -> o#anti f s
+ | Ast.RbAnt (_, s) -> o#anti f s
method object_dup =
fun f ->
list
pp f "%a@,(%a)" o#ident i1 o#ident i2
| Ast.IdAnt (_, s) -> o#anti f s
| Ast.IdLid (_, s) | Ast.IdUid (_, s) -> o#var f s
- method private var_ident =
- {< var_conversion = true; >}#ident
+ method private var_ident = {< var_conversion = true; >}#ident
method expr =
fun f e ->
let () = o#node f e Ast.loc_of_expr
(Ast.ExApp (_, (Ast.ExId (_, (Ast.IdLid (_, n)))),
x)),
y) when is_infix n ->
- pp f "@[<2>%a@ %s@ %a@]" o#dot_expr x n o#dot_expr
- y
+ pp f "@[<2>%a@ %s@ %a@]" o#apply_expr x n
+ o#apply_expr y
| Ast.ExApp (_, x, y) ->
let (a, al) = get_expr_args x [ y ]
in
then
(match al with
| [ Ast.ExTup (_, _) ] ->
- pp f "@[<2>%a@ (%a)@]" o#dot_expr x
+ pp f "@[<2>%a@ (%a)@]" o#apply_expr x
o#expr y
| [ _ ] ->
- pp f "@[<2>%a@ %a@]" o#dot_expr x
- o#dot_expr y
+ pp f "@[<2>%a@ %a@]" o#apply_expr x
+ o#apply_expr y
| al ->
- pp f "@[<2>%a@ (%a)@]" o#dot_expr a
+ pp f "@[<2>%a@ (%a)@]" o#apply_expr a
(list o#under_pipe#expr ",@ ") al)
else
- pp f "@[<2>%a@]" (list o#dot_expr "@ ")
+ pp f "@[<2>%a@]" (list o#apply_expr "@ ")
(a :: al)
| Ast.ExAss (_,
(Ast.ExAcc (_, e1,
pp f "@[<0>@[<hv2>try@ %a@]@ @[<0>with%a@]@]"
o#expr e o#match_case a
| Ast.ExAsf _ -> pp f "@[<2>assert@ false@]"
- | Ast.ExAsr (_, e) -> pp f "@[<2>assert@ %a@]" o#expr e
+ | Ast.ExAsr (_, e) ->
+ pp f "@[<2>assert@ %a@]" o#dot_expr e
| Ast.ExLmd (_, s, me, e) ->
pp f "@[<2>let module %a =@ %a@]@ @[<2>in@ %a@]"
o#var s o#module_expr me o#expr e
+ | e -> o#apply_expr f e
+ method apply_expr =
+ fun f e ->
+ let () = o#node f e Ast.loc_of_expr
+ in
+ match e with
+ | Ast.ExNew (_, i) -> pp f "@[<2>new@ %a@]" o#ident i
| e -> o#dot_expr f e
method dot_expr =
fun f e ->
| Ast.ExChr (_, s) -> pp f "'%s'" (ocaml_char s)
| Ast.ExId (_, i) -> o#var_ident f i
| Ast.ExRec (_, b, (Ast.ExNil _)) ->
- pp f "@[<hv0>@[<hv2>{@ %a@]@ }@]" o#record_binding
- b
+ pp f "@[<hv0>@[<hv2>{%a@]@ }@]" o#record_binding b
| Ast.ExRec (_, b, e) ->
- pp f "@[<hv0>@[<hv2>{@ (%a)@ with@ %a@]@ }@]"
+ pp f "@[<hv0>@[<hv2>{@ (%a)@ with%a@]@ }@]"
o#expr e o#record_binding b
| Ast.ExStr (_, s) -> pp f "\"%s\"" s
| Ast.ExWhi (_, e1, e2) ->
pp f "@[<2>?%s:@ %a@]" s o#dot_expr e
| Ast.ExVrn (_, s) -> pp f "`%a" o#var s
| Ast.ExOvr (_, b) ->
- pp f "@[<hv0>@[<hv2>{<@ %a@]@ >}@]"
- o#record_binding b
+ pp f "@[<hv0>@[<hv2>{<%a@]@ >}@]" o#record_binding
+ b
| Ast.ExObj (_, (Ast.PaNil _), cst) ->
pp f "@[<hv0>@[<hv2>object@ %a@]@ end@]"
o#class_str_item cst
pp f
"@[<hv0>@[<hv2>object @[<2>(%a)@]@ %a@]@ end@]"
o#patt p o#class_str_item cst
- | Ast.ExNew (_, i) -> pp f "@[<2>new@ %a@]" o#ident i
| Ast.ExCom (_, e1, e2) ->
pp f "%a,@ %a" o#simple_expr e1 o#simple_expr e2
| Ast.ExSem (_, e1, e2) ->
Ast.ExFun (_, _) | Ast.ExMat (_, _, _) |
Ast.ExTry (_, _, _) | Ast.ExIfe (_, _, _, _) |
Ast.ExLet (_, _, _, _) | Ast.ExLmd (_, _, _, _) |
- Ast.ExAsr (_, _) | Ast.ExAsf _ | Ast.ExLaz (_, _)
- -> pp f "(%a)" o#reset#expr e
+ Ast.ExAsr (_, _) | Ast.ExAsf _ | Ast.ExLaz (_, _) |
+ Ast.ExNew (_, _) -> pp f "(%a)" o#reset#expr e
method direction_flag =
fun f b ->
match b with
match p with
| Ast.PaAli (_, p1, p2) ->
pp f "@[<1>(%a@ as@ %a)@]" o#patt p1 o#patt p2
- | Ast.PaEq (_, p1, p2) ->
- pp f "@[<2>%a =@ %a@]" o#patt p1 o#patt p2
+ | Ast.PaEq (_, i, p) ->
+ pp f "@[<2>%a =@ %a@]" o#var_ident i o#patt p
| Ast.PaSem (_, p1, p2) ->
pp f "%a;@ %a" o#patt p1 o#patt p2
| p -> o#patt1 f p
| Ast.TyObj (_, (Ast.TyNil _), Ast.BTrue) ->
pp f "< .. >"
| Ast.TyObj (_, t, Ast.BTrue) ->
- pp f "@[<0>@[<2><@ %a@ ..@]@ >@]" o#ctyp t
+ pp f "@[<0>@[<2><@ %a;@ ..@]@ >@]" o#ctyp t
| Ast.TyObj (_, t, Ast.BFalse) ->
pp f "@[<0>@[<2><@ %a@]@ >@]" o#ctyp t
| Ast.TyQuo (_, s) -> pp f "'%a" o#var s
| Ast.TyDcl (_, tn, tp, te, cl) ->
(pp f "@[<2>%a%a@]" o#type_params tp o#var tn;
(match te with
- | Ast.TyQuo (_, s) when
- not
- (List.exists
- (function
- | Ast.TyQuo (_, s') -> s = s'
- | _ -> false)
- tp)
- -> ()
+ | Ast.TyNil _ -> ()
| _ -> pp f " =@ %a" o#ctyp te);
if cl <> []
then pp f "@ %a" (list o#constrain "@ ") cl
| Ast.SgMod (_, s, mt) ->
pp f "@[<2>module %a :@ %a%s@]" o#var s
o#module_type mt semisep
+ | Ast.SgMty (_, s, (Ast.MtNil _)) ->
+ pp f "@[<2>module type %a%s@]" o#var s semisep
| Ast.SgMty (_, s, mt) ->
pp f "@[<2>module type %a =@ %a%s@]" o#var s
o#module_type mt semisep
let () = o#node f mt Ast.loc_of_module_type
in
match mt with
+ | Ast.MtNil _ -> assert false
| Ast.MtId (_, i) -> o#ident f i
| Ast.MtAnt (_, s) -> o#anti f s
| Ast.MtFun (_, s, mt1, mt2) ->
let () = o#node f me Ast.loc_of_module_expr
in
match me with
+ | Ast.MeNil _ -> assert false
| Ast.MeId (_, i) -> o#ident f i
| Ast.MeAnt (_, s) -> o#anti f s
| Ast.MeApp (_, me1, me2) ->
| Ast.CeCon (_, Ast.BFalse, i, t) ->
pp f "@[<2>@[<1>[%a]@]@ %a@]" o#class_params t
o#ident i
- | Ast.CeCon (_, Ast.BTrue, i, (Ast.TyNil _)) ->
- pp f "@[<2>virtual@ %a@]" o#ident i
- | Ast.CeCon (_, Ast.BTrue, i, t) ->
+ | Ast.CeCon (_, Ast.BTrue, (Ast.IdLid (_, i)),
+ (Ast.TyNil _)) -> pp f "@[<2>virtual@ %a@]" o#var i
+ | Ast.CeCon (_, Ast.BTrue, (Ast.IdLid (_, i)), t) ->
pp f "@[<2>virtual@ @[<1>[%a]@]@ %a@]"
- o#class_params t o#ident i
+ o#class_params t o#var i
| Ast.CeFun (_, p, ce) ->
pp f "@[<2>fun@ %a@ ->@ %a@]" o#patt p o#class_expr
ce
| Ast.CtCon (_, Ast.BFalse, i, t) ->
pp f "@[<2>[@,%a@]@,]@ %a" o#class_params t
o#ident i
- | Ast.CtCon (_, Ast.BTrue, i, (Ast.TyNil _)) ->
- pp f "@[<2>virtual@ %a@]" o#ident i
- | Ast.CtCon (_, Ast.BTrue, i, t) ->
+ | Ast.CtCon (_, Ast.BTrue, (Ast.IdLid (_, i)),
+ (Ast.TyNil _)) -> pp f "@[<2>virtual@ %a@]" o#var i
+ | Ast.CtCon (_, Ast.BTrue, (Ast.IdLid (_, i)), t) ->
pp f "@[<2>virtual@ [@,%a@]@,]@ %a" o#class_params
- t o#ident i
+ t o#var i
| Ast.CtFun (_, t, ct) ->
pp f "@[<2>%a@ ->@ %a@]" o#simple_ctyp t
o#class_type ct
let print_implem ?input_file:(_) ?output_file st =
print output_file (fun o -> o#implem) st
end
- module MakeMore (Syntax : Sig.Camlp4Syntax) :
- Sig.Printer with module Ast = Syntax.Ast =
+ module MakeMore (Syntax : Sig.Camlp4Syntax) : Sig.Printer(Syntax.
+ Ast).S =
struct
include Make(Syntax)
let semisep = ref false
sig
open Format
include Sig.Camlp4Syntax with module Loc = Syntax.Loc
- and module Warning = Syntax.Warning
and module Token = Syntax.Token and module Ast = Syntax.Ast
and module Gram = Syntax.Gram
class printer :
val print :
string option ->
(printer -> formatter -> 'a -> unit) -> 'a -> unit
- val print_interf :
- ?input_file: string ->
- ?output_file: string -> Ast.sig_item -> unit
- val print_implem :
- ?input_file: string ->
- ?output_file: string -> Ast.str_item -> unit
end
- module MakeMore (Syntax : Sig.Camlp4Syntax) :
- Sig.Printer with module Ast = Syntax.Ast
+ module MakeMore (Syntax : Sig.Camlp4Syntax) : Sig.Printer(Syntax.
+ Ast).S
end =
struct
open Format
struct
let name = "Camlp4.Printers.OCamlr"
let version =
- "$Id: Camlp4.ml,v 1.3 2007/02/26 16:43:01 ertai Exp $"
+ "$Id: OCamlr.ml,v 1.17.4.3 2007/05/10 13:31:20 pouillar Exp $"
end
module Make (Syntax : Sig.Camlp4Syntax) =
struct
module PP_o = OCaml.Make(Syntax)
open PP_o
let pp = fprintf
+ let is_keyword =
+ let keywords = [ "where" ]
+ and not_keywords = [ "false"; "function"; "true"; "val" ]
+ in
+ fun s ->
+ (not (List.mem s not_keywords)) &&
+ ((is_keyword s) || (List.mem s keywords))
class printer ?curry_constr:(init_curry_constr = true)
?(comments = true) () =
object (o)
method reset_semi = o
method reset = o
method private unset_first_match_case =
- {< first_match_case = false; >}
+ {< first_match_case = false; >}
method private set_first_match_case =
- {< first_match_case = true; >}
+ {< first_match_case = true; >}
method seq =
fun f e ->
let rec self right f e =
| v ->
(match lex_string v with
| LIDENT s | UIDENT s | ESCAPED_IDENT s when
- is_keyword s -> pp f "\\%s" s
- | SYMBOL s -> pp f "\\%s" s
+ is_keyword s -> pp f "%s__" s
+ | SYMBOL s -> pp f "( %s )" s
| LIDENT s | UIDENT s | ESCAPED_IDENT s ->
pp_print_string f s
| tok ->
(Ast.ExId (_, (Ast.IdLid (_, "val"))))) ->
pp f "@[<2>%a.@,val@]" o#simple_expr e
| e -> super#dot_expr f e
- method simple_expr =
- fun f e ->
- let () = o#node f e Ast.loc_of_expr
- in
- match e with
- | Ast.ExFor (_, s, e1, e2, Ast.BTrue, e3) ->
- pp f
- "@[<hv0>@[<hv2>@[<2>for %a@ =@ %a@ to@ %a@ do {@]@ %a@]@ }@]"
- o#var s o#expr e1 o#expr e2 o#seq e3
- | Ast.ExFor (_, s, e1, e2, Ast.BFalse, e3) ->
- pp f
- "@[<hv0>@[<hv2>@[<2>for %a@ =@ %a@ downto@ %a@ do {@]@ %a@]@ }@]"
- o#var s o#expr e1 o#expr e2 o#seq e3
- | Ast.ExWhi (_, e1, e2) ->
- pp f "@[<2>while@ %a@ do {@ %a@ }@]" o#expr e1
- o#seq e2
- | Ast.ExSeq (_, e) ->
- pp f "@[<hv0>@[<hv2>do {@ %a@]@ }@]" o#seq e
- | e -> super#simple_expr f e
method ctyp =
fun f t ->
let () = o#node f t Ast.loc_of_ctyp
| Ast.TyDcl (_, tn, tp, te, cl) ->
(pp f "@[<2>%a%a@]" o#var tn o#type_params tp;
(match te with
- | Ast.TyQuo (_, s) when
- not
- (List.exists
- (function
- | Ast.TyQuo (_, s') -> s = s'
- | _ -> false)
- tp)
- -> ()
+ | Ast.TyNil _ -> ()
| _ -> pp f " =@ %a" o#ctyp te);
if cl <> []
then pp f "@ %a" (list o#constrain "@ ") cl
| Ast.CtCon (_, Ast.BFalse, i, t) ->
pp f "@[<2>%a [@,%a@]@,]" o#ident i o#class_params
t
- | Ast.CtCon (_, Ast.BTrue, i, (Ast.TyNil _)) ->
- pp f "@[<2>virtual@ %a@]" o#ident i
- | Ast.CtCon (_, Ast.BTrue, i, t) ->
- pp f "@[<2>virtual@ %a@ [@,%a@]@,]" o#ident i
+ | Ast.CtCon (_, Ast.BTrue, (Ast.IdLid (_, i)),
+ (Ast.TyNil _)) -> pp f "@[<2>virtual@ %a@]" o#var i
+ | Ast.CtCon (_, Ast.BTrue, (Ast.IdLid (_, i)), t) ->
+ pp f "@[<2>virtual@ %a@ [@,%a@]@,]" o#var i
o#class_params t
| ct -> super#class_type f ct
method class_expr =
| Ast.CeCon (_, Ast.BFalse, i, t) ->
pp f "@[<2>%a@ @[<1>[%a]@]@]" o#ident i
o#class_params t
- | Ast.CeCon (_, Ast.BTrue, i, (Ast.TyNil _)) ->
- pp f "@[<2>virtual@ %a@]" o#ident i
- | Ast.CeCon (_, Ast.BTrue, i, t) ->
- pp f "@[<2>virtual@ %a@ @[<1>[%a]@]@]" o#ident i
+ | Ast.CeCon (_, Ast.BTrue, (Ast.IdLid (_, i)),
+ (Ast.TyNil _)) -> pp f "@[<2>virtual@ %a@]" o#var i
+ | Ast.CeCon (_, Ast.BTrue, (Ast.IdLid (_, i)), t) ->
+ pp f "@[<2>virtual@ %a@ @[<1>[%a]@]@]" o#var i
o#ctyp t
| ce -> super#class_expr f ce
end
let print_interf = print_interf
let print_implem = print_implem
end
- module MakeMore (Syntax : Sig.Camlp4Syntax) :
- Sig.Printer with module Ast = Syntax.Ast =
+ module MakeMore (Syntax : Sig.Camlp4Syntax) : Sig.Printer(Syntax.
+ Ast).S =
struct
include Make(Syntax)
let margin = ref 78
module OCamlInitSyntax =
struct
module Make
- (Warning : Sig.Warning)
- (Ast : Sig.Camlp4Ast with module Loc = Warning.Loc)
+ (Ast : Sig.Camlp4Ast)
(Gram :
- Sig.Grammar.Static with module Loc = Warning.Loc with
+ Sig.Grammar.Static with module Loc = Ast.Loc with
type Token.t = Sig.camlp4_token)
(Quotation : Sig.Quotation with module Ast = Sig.Camlp4AstToAst(Ast)) :
Sig.Camlp4Syntax with module Loc = Ast.Loc and module Ast = Ast
and module AntiquotSyntax.Ast = Sig.Camlp4AstToAst(Ast)
and module Quotation = Quotation =
struct
- module Warning = Warning
module Loc = Ast.Loc
module Ast = Ast
module Gram = Gram
module Token = Gram.Token
open Sig
+ type warning = Loc.t -> string -> unit
+ let default_warning loc txt =
+ Format.eprintf "<W> %a: %s@." Loc.print loc txt
+ let current_warning = ref default_warning
+ let print_warning loc txt = !current_warning loc txt
let a_CHAR = Gram.Entry.mk "a_CHAR"
let a_FLOAT = Gram.Entry.mk "a_FLOAT"
let a_INT = Gram.Entry.mk "a_INT"
let a_INT64 = Gram.Entry.mk "a_INT64"
let a_LABEL = Gram.Entry.mk "a_LABEL"
let a_LIDENT = Gram.Entry.mk "a_LIDENT"
- let a_LIDENT_or_operator = Gram.Entry.mk "a_LIDENT_or_operator"
let a_NATIVEINT = Gram.Entry.mk "a_NATIVEINT"
let a_OPTLABEL = Gram.Entry.mk "a_OPTLABEL"
let a_STRING = Gram.Entry.mk "a_STRING"
let eq_expr = Gram.Entry.mk "eq_expr"
let expr = Gram.Entry.mk "expr"
let expr_eoi = Gram.Entry.mk "expr_eoi"
- let field = Gram.Entry.mk "field"
let field_expr = Gram.Entry.mk "field_expr"
let fun_binding = Gram.Entry.mk "fun_binding"
let fun_def = Gram.Entry.mk "fun_def"
let patt_eoi = Gram.Entry.mk "patt_eoi"
let patt_tcon = Gram.Entry.mk "patt_tcon"
let phrase = Gram.Entry.mk "phrase"
- let pipe_ctyp = Gram.Entry.mk "pipe_ctyp"
let poly_type = Gram.Entry.mk "poly_type"
let row_field = Gram.Entry.mk "row_field"
- let sem_ctyp = Gram.Entry.mk "sem_ctyp"
let sem_expr = Gram.Entry.mk "sem_expr"
let sem_expr_for_list = Gram.Entry.mk "sem_expr_for_list"
let sem_patt = Gram.Entry.mk "sem_patt"
let sem_patt_for_list = Gram.Entry.mk "sem_patt_for_list"
let semi = Gram.Entry.mk "semi"
let sequence = Gram.Entry.mk "sequence"
+ let do_sequence = Gram.Entry.mk "do_sequence"
let sig_item = Gram.Entry.mk "sig_item"
let sig_items = Gram.Entry.mk "sig_items"
let star_ctyp = Gram.Entry.mk "star_ctyp"
let class_expr_quot = Gram.Entry.mk "quotation of class expression"
let with_constr_quot = Gram.Entry.mk "quotation of with constraint"
let binding_quot = Gram.Entry.mk "quotation of binding"
+ let rec_binding_quot = Gram.Entry.mk "quotation of record binding"
let match_case_quot =
Gram.Entry.mk "quotation of match_case (try/match/function case)"
let module_binding_quot =
Gram.Entry.mk "quotation of module rec binding"
let ident_quot = Gram.Entry.mk "quotation of identifier"
+ let prefixop =
+ Gram.Entry.mk "prefix operator (start with '!', '?', '~')"
+ let infixop0 =
+ Gram.Entry.mk
+ "infix operator (level 0) (comparison operators, and some others)"
+ let infixop1 =
+ Gram.Entry.mk "infix operator (level 1) (start with '^', '@')"
+ let infixop2 =
+ Gram.Entry.mk "infix operator (level 2) (start with '+', '-')"
+ let infixop3 =
+ Gram.Entry.mk "infix operator (level 3) (start with '*', '/', '%')"
+ let infixop4 =
+ Gram.Entry.mk
+ "infix operator (level 4) (start with \"**\") (right assoc)"
let _ =
Gram.extend (top_phrase : 'top_phrase Gram.Entry.t)
((fun () ->
let parse_patt loc str = Gram.parse_string antiquot_patt loc str
end
module Quotation = Quotation
- module Parser =
- struct
- module Ast = Ast
- let wrap directive_handler pa init_loc cs =
- let rec loop loc =
- let (pl, stopped_at_directive) = pa loc cs
- in
- match stopped_at_directive with
- | Some new_loc ->
- let pl =
- (match List.rev pl with
- | [] -> assert false
- | x :: xs ->
- (match directive_handler x with
- | None -> xs
- | Some x -> x :: xs))
- in (List.rev pl) @ (loop new_loc)
- | None -> pl
- in loop init_loc
- let parse_implem ?(directive_handler = fun _ -> None) _loc cs =
- let l = wrap directive_handler (Gram.parse implem) _loc cs
- in Ast.stSem_of_list l
- let parse_interf ?(directive_handler = fun _ -> None) _loc cs =
- let l = wrap directive_handler (Gram.parse interf) _loc cs
- in Ast.sgSem_of_list l
- end
- module Printer = Struct.EmptyPrinter.Make(Ast)
+ let wrap directive_handler pa init_loc cs =
+ let rec loop loc =
+ let (pl, stopped_at_directive) = pa loc cs
+ in
+ match stopped_at_directive with
+ | Some new_loc ->
+ let pl =
+ (match List.rev pl with
+ | [] -> assert false
+ | x :: xs ->
+ (match directive_handler x with
+ | None -> xs
+ | Some x -> x :: xs))
+ in (List.rev pl) @ (loop new_loc)
+ | None -> pl
+ in loop init_loc
+ let parse_implem ?(directive_handler = fun _ -> None) _loc cs =
+ let l = wrap directive_handler (Gram.parse implem) _loc cs
+ in Ast.stSem_of_list l
+ let parse_interf ?(directive_handler = fun _ -> None) _loc cs =
+ let l = wrap directive_handler (Gram.parse interf) _loc cs
+ in Ast.sgSem_of_list l
+ let print_interf ?input_file:(_) ?output_file:(_) _ =
+ failwith "No interface printer"
+ let print_implem ?input_file:(_) ?output_file:(_) _ =
+ failwith "No implementation printer"
end
end
module PreCast :
| NEWLINE | LINE_DIRECTIVE of int * string option | EOI
module Id : Sig.Id
module Loc : Sig.Loc
- module Warning : Sig.Warning with module Loc = Loc
module Ast : Sig.Camlp4Ast with module Loc = Loc
module Token : Sig.Token with module Loc = Loc and type t = camlp4_token
module Lexer : Sig.Lexer with module Loc = Loc and module Token = Token
module DynLoader : Sig.DynLoader
module AstFilters : Sig.AstFilters with module Ast = Ast
module Syntax : Sig.Camlp4Syntax with module Loc = Loc
- and module Warning = Warning and module Token = Token
- and module Ast = Ast and module Gram = Gram
+ and module Token = Token and module Ast = Ast and module Gram = Gram
and module Quotation = Quotation
module Printers :
sig
- module OCaml : Sig.Printer with module Ast = Sig.Camlp4AstToAst(Ast)
- module OCamlr : Sig.Printer with module Ast = Sig.Camlp4AstToAst(Ast)
- module DumpOCamlAst :
- Sig.Printer with module Ast = Sig.Camlp4AstToAst(Ast)
- module DumpCamlp4Ast :
- Sig.Printer with module Ast = Sig.Camlp4AstToAst(Ast)
- module Null : Sig.Printer with module Ast = Sig.Camlp4AstToAst(Ast)
+ module OCaml : Sig.Printer(Ast).S
+ module OCamlr : Sig.Printer(Ast).S
+ module DumpOCamlAst : Sig.Printer(Ast).S
+ module DumpCamlp4Ast : Sig.Printer(Ast).S
+ module Null : Sig.Printer(Ast).S
end
module MakeGram (Lexer : Sig.Lexer with module Loc = Loc) :
Sig.Grammar.Static with module Loc = Loc and module Token = Lexer.Token
module Id =
struct
let name = "Camlp4.PreCast"
- let version = "$Id: Camlp4.ml,v 1.3 2007/02/26 16:43:01 ertai Exp $"
+ let version =
+ "$Id: PreCast.ml,v 1.4.4.1 2007/03/30 15:50:12 pouillar Exp $"
end
type camlp4_token =
Sig.camlp4_token =
| ANTIQUOT of string * string | COMMENT of string | BLANKS of string
| NEWLINE | LINE_DIRECTIVE of int * string option | EOI
module Loc = Struct.Loc
- module Warning = Struct.Warning.Make(Loc)
module Ast = Struct.Camlp4Ast.Make(Loc)
module Token = Struct.Token.Make(Loc)
module Lexer = Struct.Lexer.Make(Token)
module DynLoader = Struct.DynLoader
module Quotation = Struct.Quotation.Make(Ast)
module MakeSyntax (U : sig end) =
- OCamlInitSyntax.Make(Warning)(Ast)(Gram)(Quotation)
+ OCamlInitSyntax.Make(Ast)(Gram)(Quotation)
module Syntax = MakeSyntax(struct end)
module AstFilters = Struct.AstFilters.Make(Ast)
module MakeGram = Struct.Grammar.Static.Make
PreCast.Ast.str_item parser_fun ->
PreCast.Ast.sig_item parser_fun -> unit
module Parser
- (Id : Sig.Id)
- (Maker : functor (Ast : Sig.Ast) -> Sig.Parser with module Ast = Ast) :
+ (Id : Sig.Id) (Maker : functor (Ast : Sig.Ast) -> Sig.Parser(Ast).S) :
sig end
module OCamlParser
(Id : Sig.Id)
- (Maker :
- functor (Ast : Sig.Camlp4Ast) -> Sig.Parser with module Ast = Ast) :
+ (Maker : functor (Ast : Sig.Camlp4Ast) -> Sig.Parser(Ast).S) :
sig end
module OCamlPreCastParser
- (Id : Sig.Id) (Parser : Sig.Parser with module Ast = PreCast.Ast) :
- sig end
+ (Id : Sig.Id) (Parser : Sig.Parser(PreCast.Ast).S) : sig end
type 'a printer_fun =
?input_file: string -> ?output_file: string -> 'a -> unit
val register_str_item_printer : PreCast.Ast.str_item printer_fun -> unit
PreCast.Ast.sig_item printer_fun -> unit
module Printer
(Id : Sig.Id)
- (Maker :
- functor (Syn : Sig.Syntax) -> Sig.Printer with module Ast = Syn.Ast) :
+ (Maker : functor (Syn : Sig.Syntax) -> Sig.Printer(Syn.Ast).S) :
sig end
module OCamlPrinter
(Id : Sig.Id)
- (Maker :
- functor (Syn : Sig.Camlp4Syntax) ->
- Sig.Printer with module Ast = Syn.Ast) :
+ (Maker : functor (Syn : Sig.Camlp4Syntax) -> Sig.Printer(Syn.Ast).S) :
sig end
module OCamlPreCastPrinter
- (Id : Sig.Id) (Printer : Sig.Printer with module Ast = PreCast.Ast) :
- sig end
+ (Id : Sig.Id) (Printer : Sig.Printer(PreCast.Ast).S) : sig end
module AstFilter
(Id : Sig.Id) (Maker : functor (F : Sig.AstFilters) -> sig end) :
sig end
val declare_dyn_module : string -> (unit -> unit) -> unit
val iter_and_take_callbacks : ((string * (unit -> unit)) -> unit) -> unit
- module CurrentParser : Sig.Parser with module Ast = PreCast.Ast
- module CurrentPrinter : Sig.Printer with module Ast = PreCast.Ast
+ val loaded_modules : (string list) ref
+ module CurrentParser : Sig.Parser(PreCast.Ast).S
+ module CurrentPrinter : Sig.Printer(PreCast.Ast).S
val enable_ocaml_printer : unit -> unit
val enable_ocamlr_printer : unit -> unit
val enable_null_printer : unit -> unit
(fun ?input_file:(_) ?output_file:(_) _ ->
failwith "No implementation printer")
let callbacks = Queue.create ()
+ let loaded_modules = ref []
let iter_and_take_callbacks f =
let rec loop () = loop (f (Queue.take callbacks))
in try loop () with | Queue.Empty -> ()
- let declare_dyn_module m f = Queue.add (m, f) callbacks
+ let declare_dyn_module m f =
+ (loaded_modules := m :: !loaded_modules; Queue.add (m, f) callbacks)
let register_str_item_parser f = str_item_parser := f
let register_sig_item_parser f = sig_item_parser := f
let register_parser f g = (str_item_parser := f; sig_item_parser := g)
end
module Printer
(Id : Sig.Id)
- (Maker :
- functor (Syn : Sig.Syntax) -> Sig.Printer with module Ast = Syn.Ast) =
+ (Maker : functor (Syn : Sig.Syntax) -> Sig.Printer(Syn.Ast).S) =
struct
let _ =
declare_dyn_module Id.name
end
module OCamlPrinter
(Id : Sig.Id)
- (Maker :
- functor (Syn : Sig.Camlp4Syntax) ->
- Sig.Printer with module Ast = Syn.Ast) =
+ (Maker : functor (Syn : Sig.Camlp4Syntax) -> Sig.Printer(Syn.Ast).S) =
struct
let _ =
declare_dyn_module Id.name
in register_printer M.print_implem M.print_interf)
end
module OCamlPreCastPrinter
- (Id : Sig.Id) (P : Sig.Printer with module Ast = PreCast.Ast) =
+ (Id : Sig.Id) (P : Sig.Printer(PreCast.Ast).S) =
struct
let _ =
declare_dyn_module Id.name
(fun _ -> register_printer P.print_implem P.print_interf)
end
module Parser
- (Id : Sig.Id)
- (Maker : functor (Ast : Sig.Ast) -> Sig.Parser with module Ast = Ast) =
+ (Id : Sig.Id) (Maker : functor (Ast : Sig.Ast) -> Sig.Parser(Ast).S) =
struct
let _ =
declare_dyn_module Id.name
end
module OCamlParser
(Id : Sig.Id)
- (Maker :
- functor (Ast : Sig.Camlp4Ast) -> Sig.Parser with module Ast = Ast) =
+ (Maker : functor (Ast : Sig.Camlp4Ast) -> Sig.Parser(Ast).S) =
struct
let _ =
declare_dyn_module Id.name
(fun _ -> let module M = Maker(PreCast.Ast)
in register_parser M.parse_implem M.parse_interf)
end
- module OCamlPreCastParser
- (Id : Sig.Id) (P : Sig.Parser with module Ast = PreCast.Ast) =
+ module OCamlPreCastParser (Id : Sig.Id) (P : Sig.Parser(PreCast.Ast).S) =
struct
let _ =
declare_dyn_module Id.name
declare_dyn_module Id.name
(fun _ -> let module M = Maker(AstFilters) in ())
end
- let _ = let module M = Syntax.Parser
- in
- (sig_item_parser := M.parse_interf;
- str_item_parser := M.parse_implem)
+ let _ = sig_item_parser := Syntax.parse_interf
+ let _ = str_item_parser := Syntax.parse_implem
module CurrentParser =
struct
module Ast = Ast
external loc_of_class_str_item : class_str_item -> Loc.t = "%field0";
external loc_of_with_constr : with_constr -> Loc.t = "%field0";
external loc_of_binding : binding -> Loc.t = "%field0";
+ external loc_of_rec_binding : rec_binding -> Loc.t = "%field0";
external loc_of_module_binding : module_binding -> Loc.t = "%field0";
external loc_of_match_case : match_case -> Loc.t = "%field0";
external loc_of_ident : ident -> Loc.t = "%field0";
- module Meta =
- struct
- module type META_LOC =
- sig
- (** The first location is where to put the returned pattern.
- Generally it's _loc to match with <:patt< ... >> quotations.
- The second location is the one to treat. *)
- value meta_loc_patt : Loc.t -> Loc.t -> Ast.patt;
- (** The first location is where to put the returned expression.
- Generally it's _loc to match with <:expr< ... >> quotations.
- The second location is the one to treat. *)
- value meta_loc_expr : Loc.t -> Loc.t -> Ast.expr;
- end;
- module MetaLoc =
- struct
- value meta_loc_patt _loc location =
- let (a, b, c, d, e, f, g, h) = Loc.to_tuple location
- in
- Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Loc")
- (Ast.IdLid _loc "of_tuple")))
- (Ast.PaTup _loc
- (Ast.PaCom _loc
- (Ast.PaStr _loc (Ast.safe_string_escaped a))
- (Ast.PaCom _loc
- (Ast.PaCom _loc
- (Ast.PaCom _loc
- (Ast.PaCom _loc
- (Ast.PaCom _loc
- (Ast.PaCom _loc
- (Ast.PaInt _loc (string_of_int b))
- (Ast.PaInt _loc (string_of_int c)))
- (Ast.PaInt _loc (string_of_int d)))
- (Ast.PaInt _loc (string_of_int e)))
- (Ast.PaInt _loc (string_of_int f)))
- (Ast.PaInt _loc (string_of_int g)))
- (if h
- then Ast.PaId _loc (Ast.IdUid _loc "True")
- else Ast.PaId _loc (Ast.IdUid _loc "False")))));
- value meta_loc_expr _loc location =
- let (a, b, c, d, e, f, g, h) = Loc.to_tuple location
- in
- Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Loc")
- (Ast.IdLid _loc "of_tuple")))
- (Ast.ExTup _loc
- (Ast.ExCom _loc
- (Ast.ExStr _loc (Ast.safe_string_escaped a))
- (Ast.ExCom _loc
- (Ast.ExCom _loc
- (Ast.ExCom _loc
- (Ast.ExCom _loc
- (Ast.ExCom _loc
- (Ast.ExCom _loc
- (Ast.ExInt _loc (string_of_int b))
- (Ast.ExInt _loc (string_of_int c)))
- (Ast.ExInt _loc (string_of_int d)))
- (Ast.ExInt _loc (string_of_int e)))
- (Ast.ExInt _loc (string_of_int f)))
- (Ast.ExInt _loc (string_of_int g)))
- (if h
- then Ast.ExId _loc (Ast.IdUid _loc "True")
- else Ast.ExId _loc (Ast.IdUid _loc "False")))));
- end;
- module MetaGhostLoc =
- struct
- value meta_loc_patt _loc _ =
- Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Loc")
- (Ast.IdLid _loc "ghost"));
- value meta_loc_expr _loc _ =
- Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Loc")
- (Ast.IdLid _loc "ghost"));
- end;
- module MetaLocVar =
- struct
- value meta_loc_patt _loc _ =
- Ast.PaId _loc (Ast.IdLid _loc Loc.name.val);
- value meta_loc_expr _loc _ =
- Ast.ExId _loc (Ast.IdLid _loc Loc.name.val);
- end;
- module Make (MetaLoc : META_LOC) =
- struct
- open MetaLoc;
- value meta_acc_Loc_t = meta_loc_expr;
- module Expr =
- struct
- value meta_string _loc s = Ast.ExStr _loc s;
- value meta_int _loc s = Ast.ExInt _loc s;
- value meta_float _loc s = Ast.ExFlo _loc s;
- value meta_char _loc s = Ast.ExChr _loc s;
- value meta_bool _loc =
- fun
- [ False -> Ast.ExId _loc (Ast.IdUid _loc "False")
- | True -> Ast.ExId _loc (Ast.IdUid _loc "True") ];
- value rec meta_list mf_a _loc =
- fun
- [ [] -> Ast.ExId _loc (Ast.IdUid _loc "[]")
- | [ x :: xs ] ->
- Ast.ExApp _loc
- (Ast.ExApp _loc (Ast.ExId _loc (Ast.IdUid _loc "::"))
- (mf_a _loc x))
- (meta_list mf_a _loc xs) ];
- value rec meta_binding _loc =
- fun
- [ Ast.BiAnt x0 x1 -> Ast.ExAnt x0 x1
- | Ast.BiEq x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "BiEq")))
- (meta_acc_Loc_t _loc x0))
- (meta_patt _loc x1))
- (meta_expr _loc x2)
- | Ast.BiSem x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "BiSem")))
- (meta_acc_Loc_t _loc x0))
- (meta_binding _loc x1))
- (meta_binding _loc x2)
- | Ast.BiAnd x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "BiAnd")))
- (meta_acc_Loc_t _loc x0))
- (meta_binding _loc x1))
- (meta_binding _loc x2)
- | Ast.BiNil x0 ->
- Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "BiNil")))
- (meta_acc_Loc_t _loc x0) ]
- and meta_class_expr _loc =
- fun
- [ Ast.CeAnt x0 x1 -> Ast.ExAnt x0 x1
- | Ast.CeEq x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CeEq")))
- (meta_acc_Loc_t _loc x0))
- (meta_class_expr _loc x1))
- (meta_class_expr _loc x2)
- | Ast.CeAnd x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CeAnd")))
- (meta_acc_Loc_t _loc x0))
- (meta_class_expr _loc x1))
- (meta_class_expr _loc x2)
- | Ast.CeTyc x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CeTyc")))
- (meta_acc_Loc_t _loc x0))
- (meta_class_expr _loc x1))
- (meta_class_type _loc x2)
- | Ast.CeStr x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CeStr")))
- (meta_acc_Loc_t _loc x0))
- (meta_patt _loc x1))
- (meta_class_str_item _loc x2)
- | Ast.CeLet x0 x1 x2 x3 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CeLet")))
- (meta_acc_Loc_t _loc x0))
- (meta_meta_bool _loc x1))
- (meta_binding _loc x2))
- (meta_class_expr _loc x3)
- | Ast.CeFun x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CeFun")))
- (meta_acc_Loc_t _loc x0))
- (meta_patt _loc x1))
- (meta_class_expr _loc x2)
- | Ast.CeCon x0 x1 x2 x3 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CeCon")))
- (meta_acc_Loc_t _loc x0))
- (meta_meta_bool _loc x1))
- (meta_ident _loc x2))
- (meta_ctyp _loc x3)
- | Ast.CeApp x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CeApp")))
- (meta_acc_Loc_t _loc x0))
- (meta_class_expr _loc x1))
- (meta_expr _loc x2)
- | Ast.CeNil x0 ->
- Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CeNil")))
- (meta_acc_Loc_t _loc x0) ]
- and meta_class_sig_item _loc =
- fun
- [ Ast.CgAnt x0 x1 -> Ast.ExAnt x0 x1
- | Ast.CgVir x0 x1 x2 x3 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CgVir")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_meta_bool _loc x2))
- (meta_ctyp _loc x3)
- | Ast.CgVal x0 x1 x2 x3 x4 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CgVal")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_meta_bool _loc x2))
- (meta_meta_bool _loc x3))
- (meta_ctyp _loc x4)
- | Ast.CgMth x0 x1 x2 x3 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CgMth")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_meta_bool _loc x2))
- (meta_ctyp _loc x3)
- | Ast.CgInh x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CgInh")))
- (meta_acc_Loc_t _loc x0))
- (meta_class_type _loc x1)
- | Ast.CgSem x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CgSem")))
- (meta_acc_Loc_t _loc x0))
- (meta_class_sig_item _loc x1))
- (meta_class_sig_item _loc x2)
- | Ast.CgCtr x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CgCtr")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1))
- (meta_ctyp _loc x2)
- | Ast.CgNil x0 ->
- Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CgNil")))
- (meta_acc_Loc_t _loc x0) ]
- and meta_class_str_item _loc =
- fun
- [ Ast.CrAnt x0 x1 -> Ast.ExAnt x0 x1
- | Ast.CrVvr x0 x1 x2 x3 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CrVvr")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_meta_bool _loc x2))
- (meta_ctyp _loc x3)
- | Ast.CrVir x0 x1 x2 x3 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CrVir")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_meta_bool _loc x2))
- (meta_ctyp _loc x3)
- | Ast.CrVal x0 x1 x2 x3 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CrVal")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_meta_bool _loc x2))
- (meta_expr _loc x3)
- | Ast.CrMth x0 x1 x2 x3 x4 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CrMth")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_meta_bool _loc x2))
- (meta_expr _loc x3))
- (meta_ctyp _loc x4)
- | Ast.CrIni x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CrIni")))
- (meta_acc_Loc_t _loc x0))
- (meta_expr _loc x1)
- | Ast.CrInh x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CrInh")))
- (meta_acc_Loc_t _loc x0))
- (meta_class_expr _loc x1))
- (meta_string _loc x2)
- | Ast.CrCtr x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CrCtr")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1))
- (meta_ctyp _loc x2)
- | Ast.CrSem x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CrSem")))
- (meta_acc_Loc_t _loc x0))
- (meta_class_str_item _loc x1))
- (meta_class_str_item _loc x2)
- | Ast.CrNil x0 ->
- Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CrNil")))
- (meta_acc_Loc_t _loc x0) ]
- and meta_class_type _loc =
- fun
- [ Ast.CtAnt x0 x1 -> Ast.ExAnt x0 x1
- | Ast.CtEq x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CtEq")))
- (meta_acc_Loc_t _loc x0))
- (meta_class_type _loc x1))
- (meta_class_type _loc x2)
- | Ast.CtCol x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CtCol")))
- (meta_acc_Loc_t _loc x0))
- (meta_class_type _loc x1))
- (meta_class_type _loc x2)
- | Ast.CtAnd x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CtAnd")))
- (meta_acc_Loc_t _loc x0))
- (meta_class_type _loc x1))
- (meta_class_type _loc x2)
- | Ast.CtSig x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CtSig")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1))
- (meta_class_sig_item _loc x2)
- | Ast.CtFun x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CtFun")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1))
- (meta_class_type _loc x2)
- | Ast.CtCon x0 x1 x2 x3 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CtCon")))
- (meta_acc_Loc_t _loc x0))
- (meta_meta_bool _loc x1))
- (meta_ident _loc x2))
- (meta_ctyp _loc x3)
- | Ast.CtNil x0 ->
- Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CtNil")))
- (meta_acc_Loc_t _loc x0) ]
- and meta_ctyp _loc =
- fun
- [ Ast.TyAnt x0 x1 -> Ast.ExAnt x0 x1
- | Ast.TyOfAmp x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyOfAmp")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1))
- (meta_ctyp _loc x2)
- | Ast.TyAmp x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyAmp")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1))
- (meta_ctyp _loc x2)
- | Ast.TyVrnInfSup x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyVrnInfSup")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1))
- (meta_ctyp _loc x2)
- | Ast.TyVrnInf x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyVrnInf")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1)
- | Ast.TyVrnSup x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyVrnSup")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1)
- | Ast.TyVrnEq x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyVrnEq")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1)
- | Ast.TySta x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TySta")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1))
- (meta_ctyp _loc x2)
- | Ast.TyTup x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyTup")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1)
- | Ast.TyMut x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyMut")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1)
- | Ast.TyPrv x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyPrv")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1)
- | Ast.TyOr x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyOr")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1))
- (meta_ctyp _loc x2)
- | Ast.TyAnd x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyAnd")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1))
- (meta_ctyp _loc x2)
- | Ast.TyOf x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyOf")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1))
- (meta_ctyp _loc x2)
- | Ast.TySum x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TySum")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1)
- | Ast.TyCom x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyCom")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1))
- (meta_ctyp _loc x2)
- | Ast.TySem x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TySem")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1))
- (meta_ctyp _loc x2)
- | Ast.TyCol x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyCol")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1))
- (meta_ctyp _loc x2)
- | Ast.TyRec x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyRec")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1)
- | Ast.TyVrn x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyVrn")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.TyQuM x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyQuM")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.TyQuP x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyQuP")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.TyQuo x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyQuo")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.TyPol x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyPol")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1))
- (meta_ctyp _loc x2)
- | Ast.TyOlb x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyOlb")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_ctyp _loc x2)
- | Ast.TyObj x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyObj")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1))
- (meta_meta_bool _loc x2)
- | Ast.TyDcl x0 x1 x2 x3 x4 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyDcl")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_list meta_ctyp _loc x2))
- (meta_ctyp _loc x3))
- (meta_list
- (fun _loc (x1, x2) ->
- Ast.ExTup _loc
- (Ast.ExCom _loc (meta_ctyp _loc x1)
- (meta_ctyp _loc x2)))
- _loc x4)
- | Ast.TyMan x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyMan")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1))
- (meta_ctyp _loc x2)
- | Ast.TyId x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyId")))
- (meta_acc_Loc_t _loc x0))
- (meta_ident _loc x1)
- | Ast.TyLab x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyLab")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_ctyp _loc x2)
- | Ast.TyCls x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyCls")))
- (meta_acc_Loc_t _loc x0))
- (meta_ident _loc x1)
- | Ast.TyArr x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyArr")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1))
- (meta_ctyp _loc x2)
- | Ast.TyApp x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyApp")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1))
- (meta_ctyp _loc x2)
- | Ast.TyAny x0 ->
- Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyAny")))
- (meta_acc_Loc_t _loc x0)
- | Ast.TyAli x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyAli")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1))
- (meta_ctyp _loc x2)
- | Ast.TyNil x0 ->
- Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyNil")))
- (meta_acc_Loc_t _loc x0) ]
- and meta_expr _loc =
- fun
- [ Ast.ExWhi x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExWhi")))
- (meta_acc_Loc_t _loc x0))
- (meta_expr _loc x1))
- (meta_expr _loc x2)
- | Ast.ExVrn x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExVrn")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.ExTyc x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExTyc")))
- (meta_acc_Loc_t _loc x0))
- (meta_expr _loc x1))
- (meta_ctyp _loc x2)
- | Ast.ExCom x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExCom")))
- (meta_acc_Loc_t _loc x0))
- (meta_expr _loc x1))
- (meta_expr _loc x2)
- | Ast.ExTup x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExTup")))
- (meta_acc_Loc_t _loc x0))
- (meta_expr _loc x1)
- | Ast.ExTry x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExTry")))
- (meta_acc_Loc_t _loc x0))
- (meta_expr _loc x1))
- (meta_match_case _loc x2)
- | Ast.ExStr x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExStr")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.ExSte x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExSte")))
- (meta_acc_Loc_t _loc x0))
- (meta_expr _loc x1))
- (meta_expr _loc x2)
- | Ast.ExSnd x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExSnd")))
- (meta_acc_Loc_t _loc x0))
- (meta_expr _loc x1))
- (meta_string _loc x2)
- | Ast.ExSeq x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExSeq")))
- (meta_acc_Loc_t _loc x0))
- (meta_expr _loc x1)
- | Ast.ExRec x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExRec")))
- (meta_acc_Loc_t _loc x0))
- (meta_binding _loc x1))
- (meta_expr _loc x2)
- | Ast.ExOvr x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExOvr")))
- (meta_acc_Loc_t _loc x0))
- (meta_binding _loc x1)
- | Ast.ExOlb x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExOlb")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_expr _loc x2)
- | Ast.ExObj x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExObj")))
- (meta_acc_Loc_t _loc x0))
- (meta_patt _loc x1))
- (meta_class_str_item _loc x2)
- | Ast.ExNew x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExNew")))
- (meta_acc_Loc_t _loc x0))
- (meta_ident _loc x1)
- | Ast.ExMat x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExMat")))
- (meta_acc_Loc_t _loc x0))
- (meta_expr _loc x1))
- (meta_match_case _loc x2)
- | Ast.ExLmd x0 x1 x2 x3 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExLmd")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_module_expr _loc x2))
- (meta_expr _loc x3)
- | Ast.ExLet x0 x1 x2 x3 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExLet")))
- (meta_acc_Loc_t _loc x0))
- (meta_meta_bool _loc x1))
- (meta_binding _loc x2))
- (meta_expr _loc x3)
- | Ast.ExLaz x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExLaz")))
- (meta_acc_Loc_t _loc x0))
- (meta_expr _loc x1)
- | Ast.ExLab x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExLab")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_expr _loc x2)
- | Ast.ExNativeInt x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExNativeInt")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.ExInt64 x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExInt64")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.ExInt32 x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExInt32")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.ExInt x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExInt")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.ExIfe x0 x1 x2 x3 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExIfe")))
- (meta_acc_Loc_t _loc x0))
- (meta_expr _loc x1))
- (meta_expr _loc x2))
- (meta_expr _loc x3)
- | Ast.ExFun x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExFun")))
- (meta_acc_Loc_t _loc x0))
- (meta_match_case _loc x1)
- | Ast.ExFor x0 x1 x2 x3 x4 x5 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc
- (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExFor")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_expr _loc x2))
- (meta_expr _loc x3))
- (meta_meta_bool _loc x4))
- (meta_expr _loc x5)
- | Ast.ExFlo x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExFlo")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.ExCoe x0 x1 x2 x3 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExCoe")))
- (meta_acc_Loc_t _loc x0))
- (meta_expr _loc x1))
- (meta_ctyp _loc x2))
- (meta_ctyp _loc x3)
- | Ast.ExChr x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExChr")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.ExAss x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExAss")))
- (meta_acc_Loc_t _loc x0))
- (meta_expr _loc x1))
- (meta_expr _loc x2)
- | Ast.ExAsr x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExAsr")))
- (meta_acc_Loc_t _loc x0))
- (meta_expr _loc x1)
- | Ast.ExAsf x0 ->
- Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExAsf")))
- (meta_acc_Loc_t _loc x0)
- | Ast.ExSem x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExSem")))
- (meta_acc_Loc_t _loc x0))
- (meta_expr _loc x1))
- (meta_expr _loc x2)
- | Ast.ExArr x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExArr")))
- (meta_acc_Loc_t _loc x0))
- (meta_expr _loc x1)
- | Ast.ExAre x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExAre")))
- (meta_acc_Loc_t _loc x0))
- (meta_expr _loc x1))
- (meta_expr _loc x2)
- | Ast.ExApp x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExApp")))
- (meta_acc_Loc_t _loc x0))
- (meta_expr _loc x1))
- (meta_expr _loc x2)
- | Ast.ExAnt x0 x1 -> Ast.ExAnt x0 x1
- | Ast.ExAcc x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExAcc")))
- (meta_acc_Loc_t _loc x0))
- (meta_expr _loc x1))
- (meta_expr _loc x2)
- | Ast.ExId x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExId")))
- (meta_acc_Loc_t _loc x0))
- (meta_ident _loc x1)
- | Ast.ExNil x0 ->
- Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExNil")))
- (meta_acc_Loc_t _loc x0) ]
- and meta_ident _loc =
- fun
- [ Ast.IdAnt x0 x1 -> Ast.ExAnt x0 x1
- | Ast.IdUid x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "IdUid")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.IdLid x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "IdLid")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.IdApp x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "IdApp")))
- (meta_acc_Loc_t _loc x0))
- (meta_ident _loc x1))
- (meta_ident _loc x2)
- | Ast.IdAcc x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "IdAcc")))
- (meta_acc_Loc_t _loc x0))
- (meta_ident _loc x1))
- (meta_ident _loc x2) ]
- and meta_match_case _loc =
- fun
- [ Ast.McAnt x0 x1 -> Ast.ExAnt x0 x1
- | Ast.McArr x0 x1 x2 x3 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "McArr")))
- (meta_acc_Loc_t _loc x0))
- (meta_patt _loc x1))
- (meta_expr _loc x2))
- (meta_expr _loc x3)
- | Ast.McOr x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "McOr")))
- (meta_acc_Loc_t _loc x0))
- (meta_match_case _loc x1))
- (meta_match_case _loc x2)
- | Ast.McNil x0 ->
- Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "McNil")))
- (meta_acc_Loc_t _loc x0) ]
- and meta_meta_bool _loc =
- fun
- [ Ast.BAnt x0 -> Ast.ExAnt _loc x0
- | Ast.BFalse ->
- Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "BFalse"))
- | Ast.BTrue ->
- Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "BTrue")) ]
- and meta_meta_list mf_a _loc =
- fun
- [ Ast.LAnt x0 -> Ast.ExAnt _loc x0
- | Ast.LCons x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "LCons")))
- (mf_a _loc x0))
- (meta_meta_list mf_a _loc x1)
- | Ast.LNil ->
- Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "LNil")) ]
- and meta_meta_option mf_a _loc =
- fun
- [ Ast.OAnt x0 -> Ast.ExAnt _loc x0
- | Ast.OSome x0 ->
- Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "OSome")))
- (mf_a _loc x0)
- | Ast.ONone ->
- Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ONone")) ]
- and meta_module_binding _loc =
- fun
- [ Ast.MbAnt x0 x1 -> Ast.ExAnt x0 x1
- | Ast.MbCol x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "MbCol")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_module_type _loc x2)
- | Ast.MbColEq x0 x1 x2 x3 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "MbColEq")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_module_type _loc x2))
- (meta_module_expr _loc x3)
- | Ast.MbAnd x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "MbAnd")))
- (meta_acc_Loc_t _loc x0))
- (meta_module_binding _loc x1))
- (meta_module_binding _loc x2)
- | Ast.MbNil x0 ->
- Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "MbNil")))
- (meta_acc_Loc_t _loc x0) ]
- and meta_module_expr _loc =
- fun
- [ Ast.MeAnt x0 x1 -> Ast.ExAnt x0 x1
- | Ast.MeTyc x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "MeTyc")))
- (meta_acc_Loc_t _loc x0))
- (meta_module_expr _loc x1))
- (meta_module_type _loc x2)
- | Ast.MeStr x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "MeStr")))
- (meta_acc_Loc_t _loc x0))
- (meta_str_item _loc x1)
- | Ast.MeFun x0 x1 x2 x3 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "MeFun")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_module_type _loc x2))
- (meta_module_expr _loc x3)
- | Ast.MeApp x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "MeApp")))
- (meta_acc_Loc_t _loc x0))
- (meta_module_expr _loc x1))
- (meta_module_expr _loc x2)
- | Ast.MeId x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "MeId")))
- (meta_acc_Loc_t _loc x0))
- (meta_ident _loc x1) ]
- and meta_module_type _loc =
- fun
- [ Ast.MtAnt x0 x1 -> Ast.ExAnt x0 x1
- | Ast.MtWit x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "MtWit")))
- (meta_acc_Loc_t _loc x0))
- (meta_module_type _loc x1))
- (meta_with_constr _loc x2)
- | Ast.MtSig x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "MtSig")))
- (meta_acc_Loc_t _loc x0))
- (meta_sig_item _loc x1)
- | Ast.MtQuo x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "MtQuo")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.MtFun x0 x1 x2 x3 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "MtFun")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_module_type _loc x2))
- (meta_module_type _loc x3)
- | Ast.MtId x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "MtId")))
- (meta_acc_Loc_t _loc x0))
- (meta_ident _loc x1) ]
- and meta_patt _loc =
- fun
- [ Ast.PaVrn x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaVrn")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.PaTyp x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaTyp")))
- (meta_acc_Loc_t _loc x0))
- (meta_ident _loc x1)
- | Ast.PaTyc x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaTyc")))
- (meta_acc_Loc_t _loc x0))
- (meta_patt _loc x1))
- (meta_ctyp _loc x2)
- | Ast.PaTup x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaTup")))
- (meta_acc_Loc_t _loc x0))
- (meta_patt _loc x1)
- | Ast.PaStr x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaStr")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.PaEq x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaEq")))
- (meta_acc_Loc_t _loc x0))
- (meta_patt _loc x1))
- (meta_patt _loc x2)
- | Ast.PaRec x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaRec")))
- (meta_acc_Loc_t _loc x0))
- (meta_patt _loc x1)
- | Ast.PaRng x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaRng")))
- (meta_acc_Loc_t _loc x0))
- (meta_patt _loc x1))
- (meta_patt _loc x2)
- | Ast.PaOrp x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaOrp")))
- (meta_acc_Loc_t _loc x0))
- (meta_patt _loc x1))
- (meta_patt _loc x2)
- | Ast.PaOlbi x0 x1 x2 x3 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaOlbi")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_patt _loc x2))
- (meta_expr _loc x3)
- | Ast.PaOlb x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaOlb")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_patt _loc x2)
- | Ast.PaLab x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaLab")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_patt _loc x2)
- | Ast.PaFlo x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaFlo")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.PaNativeInt x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaNativeInt")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.PaInt64 x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaInt64")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.PaInt32 x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaInt32")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.PaInt x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaInt")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.PaChr x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaChr")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.PaSem x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaSem")))
- (meta_acc_Loc_t _loc x0))
- (meta_patt _loc x1))
- (meta_patt _loc x2)
- | Ast.PaCom x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaCom")))
- (meta_acc_Loc_t _loc x0))
- (meta_patt _loc x1))
- (meta_patt _loc x2)
- | Ast.PaArr x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaArr")))
- (meta_acc_Loc_t _loc x0))
- (meta_patt _loc x1)
- | Ast.PaApp x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaApp")))
- (meta_acc_Loc_t _loc x0))
- (meta_patt _loc x1))
- (meta_patt _loc x2)
- | Ast.PaAny x0 ->
- Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaAny")))
- (meta_acc_Loc_t _loc x0)
- | Ast.PaAnt x0 x1 -> Ast.ExAnt x0 x1
- | Ast.PaAli x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaAli")))
- (meta_acc_Loc_t _loc x0))
- (meta_patt _loc x1))
- (meta_patt _loc x2)
- | Ast.PaId x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaId")))
- (meta_acc_Loc_t _loc x0))
- (meta_ident _loc x1)
- | Ast.PaNil x0 ->
- Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaNil")))
- (meta_acc_Loc_t _loc x0) ]
- and meta_sig_item _loc =
- fun
- [ Ast.SgAnt x0 x1 -> Ast.ExAnt x0 x1
- | Ast.SgVal x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "SgVal")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_ctyp _loc x2)
- | Ast.SgTyp x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "SgTyp")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1)
- | Ast.SgOpn x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "SgOpn")))
- (meta_acc_Loc_t _loc x0))
- (meta_ident _loc x1)
- | Ast.SgMty x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "SgMty")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_module_type _loc x2)
- | Ast.SgRecMod x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "SgRecMod")))
- (meta_acc_Loc_t _loc x0))
- (meta_module_binding _loc x1)
- | Ast.SgMod x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "SgMod")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_module_type _loc x2)
- | Ast.SgInc x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "SgInc")))
- (meta_acc_Loc_t _loc x0))
- (meta_module_type _loc x1)
- | Ast.SgExt x0 x1 x2 x3 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "SgExt")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_ctyp _loc x2))
- (meta_meta_list meta_string _loc x3)
- | Ast.SgExc x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "SgExc")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1)
- | Ast.SgDir x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "SgDir")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_expr _loc x2)
- | Ast.SgSem x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "SgSem")))
- (meta_acc_Loc_t _loc x0))
- (meta_sig_item _loc x1))
- (meta_sig_item _loc x2)
- | Ast.SgClt x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "SgClt")))
- (meta_acc_Loc_t _loc x0))
- (meta_class_type _loc x1)
- | Ast.SgCls x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "SgCls")))
- (meta_acc_Loc_t _loc x0))
- (meta_class_type _loc x1)
- | Ast.SgNil x0 ->
- Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "SgNil")))
- (meta_acc_Loc_t _loc x0) ]
- and meta_str_item _loc =
- fun
- [ Ast.StAnt x0 x1 -> Ast.ExAnt x0 x1
- | Ast.StVal x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "StVal")))
- (meta_acc_Loc_t _loc x0))
- (meta_meta_bool _loc x1))
- (meta_binding _loc x2)
- | Ast.StTyp x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "StTyp")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1)
- | Ast.StOpn x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "StOpn")))
- (meta_acc_Loc_t _loc x0))
- (meta_ident _loc x1)
- | Ast.StMty x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "StMty")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_module_type _loc x2)
- | Ast.StRecMod x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "StRecMod")))
- (meta_acc_Loc_t _loc x0))
- (meta_module_binding _loc x1)
- | Ast.StMod x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "StMod")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_module_expr _loc x2)
- | Ast.StInc x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "StInc")))
- (meta_acc_Loc_t _loc x0))
- (meta_module_expr _loc x1)
- | Ast.StExt x0 x1 x2 x3 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "StExt")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_ctyp _loc x2))
- (meta_meta_list meta_string _loc x3)
- | Ast.StExp x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "StExp")))
- (meta_acc_Loc_t _loc x0))
- (meta_expr _loc x1)
- | Ast.StExc x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "StExc")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1))
- (meta_meta_option meta_ident _loc x2)
- | Ast.StDir x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "StDir")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_expr _loc x2)
- | Ast.StSem x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "StSem")))
- (meta_acc_Loc_t _loc x0))
- (meta_str_item _loc x1))
- (meta_str_item _loc x2)
- | Ast.StClt x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "StClt")))
- (meta_acc_Loc_t _loc x0))
- (meta_class_type _loc x1)
- | Ast.StCls x0 x1 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "StCls")))
- (meta_acc_Loc_t _loc x0))
- (meta_class_expr _loc x1)
- | Ast.StNil x0 ->
- Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "StNil")))
- (meta_acc_Loc_t _loc x0) ]
- and meta_with_constr _loc =
- fun
- [ Ast.WcAnt x0 x1 -> Ast.ExAnt x0 x1
- | Ast.WcAnd x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "WcAnd")))
- (meta_acc_Loc_t _loc x0))
- (meta_with_constr _loc x1))
- (meta_with_constr _loc x2)
- | Ast.WcMod x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "WcMod")))
- (meta_acc_Loc_t _loc x0))
- (meta_ident _loc x1))
- (meta_ident _loc x2)
- | Ast.WcTyp x0 x1 x2 ->
- Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "WcTyp")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1))
- (meta_ctyp _loc x2)
- | Ast.WcNil x0 ->
- Ast.ExApp _loc
- (Ast.ExId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "WcNil")))
- (meta_acc_Loc_t _loc x0) ];
- end;
- value meta_acc_Loc_t = meta_loc_patt;
- module Patt =
- struct
- value meta_string _loc s = Ast.PaStr _loc s;
- value meta_int _loc s = Ast.PaInt _loc s;
- value meta_float _loc s = Ast.PaFlo _loc s;
- value meta_char _loc s = Ast.PaChr _loc s;
- value meta_bool _loc =
- fun
- [ False -> Ast.PaId _loc (Ast.IdUid _loc "False")
- | True -> Ast.PaId _loc (Ast.IdUid _loc "True") ];
- value rec meta_list mf_a _loc =
- fun
- [ [] -> Ast.PaId _loc (Ast.IdUid _loc "[]")
- | [ x :: xs ] ->
- Ast.PaApp _loc
- (Ast.PaApp _loc (Ast.PaId _loc (Ast.IdUid _loc "::"))
- (mf_a _loc x))
- (meta_list mf_a _loc xs) ];
- value rec meta_binding _loc =
- fun
- [ Ast.BiAnt x0 x1 -> Ast.PaAnt x0 x1
- | Ast.BiEq x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "BiEq")))
- (meta_acc_Loc_t _loc x0))
- (meta_patt _loc x1))
- (meta_expr _loc x2)
- | Ast.BiSem x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "BiSem")))
- (meta_acc_Loc_t _loc x0))
- (meta_binding _loc x1))
- (meta_binding _loc x2)
- | Ast.BiAnd x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "BiAnd")))
- (meta_acc_Loc_t _loc x0))
- (meta_binding _loc x1))
- (meta_binding _loc x2)
- | Ast.BiNil x0 ->
- Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "BiNil")))
- (meta_acc_Loc_t _loc x0) ]
- and meta_class_expr _loc =
- fun
- [ Ast.CeAnt x0 x1 -> Ast.PaAnt x0 x1
- | Ast.CeEq x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CeEq")))
- (meta_acc_Loc_t _loc x0))
- (meta_class_expr _loc x1))
- (meta_class_expr _loc x2)
- | Ast.CeAnd x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CeAnd")))
- (meta_acc_Loc_t _loc x0))
- (meta_class_expr _loc x1))
- (meta_class_expr _loc x2)
- | Ast.CeTyc x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CeTyc")))
- (meta_acc_Loc_t _loc x0))
- (meta_class_expr _loc x1))
- (meta_class_type _loc x2)
- | Ast.CeStr x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CeStr")))
- (meta_acc_Loc_t _loc x0))
- (meta_patt _loc x1))
- (meta_class_str_item _loc x2)
- | Ast.CeLet x0 x1 x2 x3 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CeLet")))
- (meta_acc_Loc_t _loc x0))
- (meta_meta_bool _loc x1))
- (meta_binding _loc x2))
- (meta_class_expr _loc x3)
- | Ast.CeFun x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CeFun")))
- (meta_acc_Loc_t _loc x0))
- (meta_patt _loc x1))
- (meta_class_expr _loc x2)
- | Ast.CeCon x0 x1 x2 x3 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CeCon")))
- (meta_acc_Loc_t _loc x0))
- (meta_meta_bool _loc x1))
- (meta_ident _loc x2))
- (meta_ctyp _loc x3)
- | Ast.CeApp x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CeApp")))
- (meta_acc_Loc_t _loc x0))
- (meta_class_expr _loc x1))
- (meta_expr _loc x2)
- | Ast.CeNil x0 ->
- Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CeNil")))
- (meta_acc_Loc_t _loc x0) ]
- and meta_class_sig_item _loc =
- fun
- [ Ast.CgAnt x0 x1 -> Ast.PaAnt x0 x1
- | Ast.CgVir x0 x1 x2 x3 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CgVir")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_meta_bool _loc x2))
- (meta_ctyp _loc x3)
- | Ast.CgVal x0 x1 x2 x3 x4 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CgVal")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_meta_bool _loc x2))
- (meta_meta_bool _loc x3))
- (meta_ctyp _loc x4)
- | Ast.CgMth x0 x1 x2 x3 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CgMth")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_meta_bool _loc x2))
- (meta_ctyp _loc x3)
- | Ast.CgInh x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CgInh")))
- (meta_acc_Loc_t _loc x0))
- (meta_class_type _loc x1)
- | Ast.CgSem x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CgSem")))
- (meta_acc_Loc_t _loc x0))
- (meta_class_sig_item _loc x1))
- (meta_class_sig_item _loc x2)
- | Ast.CgCtr x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CgCtr")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1))
- (meta_ctyp _loc x2)
- | Ast.CgNil x0 ->
- Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CgNil")))
- (meta_acc_Loc_t _loc x0) ]
- and meta_class_str_item _loc =
- fun
- [ Ast.CrAnt x0 x1 -> Ast.PaAnt x0 x1
- | Ast.CrVvr x0 x1 x2 x3 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CrVvr")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_meta_bool _loc x2))
- (meta_ctyp _loc x3)
- | Ast.CrVir x0 x1 x2 x3 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CrVir")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_meta_bool _loc x2))
- (meta_ctyp _loc x3)
- | Ast.CrVal x0 x1 x2 x3 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CrVal")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_meta_bool _loc x2))
- (meta_expr _loc x3)
- | Ast.CrMth x0 x1 x2 x3 x4 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CrMth")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_meta_bool _loc x2))
- (meta_expr _loc x3))
- (meta_ctyp _loc x4)
- | Ast.CrIni x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CrIni")))
- (meta_acc_Loc_t _loc x0))
- (meta_expr _loc x1)
- | Ast.CrInh x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CrInh")))
- (meta_acc_Loc_t _loc x0))
- (meta_class_expr _loc x1))
- (meta_string _loc x2)
- | Ast.CrCtr x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CrCtr")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1))
- (meta_ctyp _loc x2)
- | Ast.CrSem x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CrSem")))
- (meta_acc_Loc_t _loc x0))
- (meta_class_str_item _loc x1))
- (meta_class_str_item _loc x2)
- | Ast.CrNil x0 ->
- Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CrNil")))
- (meta_acc_Loc_t _loc x0) ]
- and meta_class_type _loc =
- fun
- [ Ast.CtAnt x0 x1 -> Ast.PaAnt x0 x1
- | Ast.CtEq x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CtEq")))
- (meta_acc_Loc_t _loc x0))
- (meta_class_type _loc x1))
- (meta_class_type _loc x2)
- | Ast.CtCol x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CtCol")))
- (meta_acc_Loc_t _loc x0))
- (meta_class_type _loc x1))
- (meta_class_type _loc x2)
- | Ast.CtAnd x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CtAnd")))
- (meta_acc_Loc_t _loc x0))
- (meta_class_type _loc x1))
- (meta_class_type _loc x2)
- | Ast.CtSig x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CtSig")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1))
- (meta_class_sig_item _loc x2)
- | Ast.CtFun x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CtFun")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1))
- (meta_class_type _loc x2)
- | Ast.CtCon x0 x1 x2 x3 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CtCon")))
- (meta_acc_Loc_t _loc x0))
- (meta_meta_bool _loc x1))
- (meta_ident _loc x2))
- (meta_ctyp _loc x3)
- | Ast.CtNil x0 ->
- Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "CtNil")))
- (meta_acc_Loc_t _loc x0) ]
- and meta_ctyp _loc =
- fun
- [ Ast.TyAnt x0 x1 -> Ast.PaAnt x0 x1
- | Ast.TyOfAmp x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyOfAmp")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1))
- (meta_ctyp _loc x2)
- | Ast.TyAmp x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyAmp")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1))
- (meta_ctyp _loc x2)
- | Ast.TyVrnInfSup x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyVrnInfSup")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1))
- (meta_ctyp _loc x2)
- | Ast.TyVrnInf x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyVrnInf")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1)
- | Ast.TyVrnSup x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyVrnSup")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1)
- | Ast.TyVrnEq x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyVrnEq")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1)
- | Ast.TySta x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TySta")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1))
- (meta_ctyp _loc x2)
- | Ast.TyTup x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyTup")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1)
- | Ast.TyMut x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyMut")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1)
- | Ast.TyPrv x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyPrv")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1)
- | Ast.TyOr x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyOr")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1))
- (meta_ctyp _loc x2)
- | Ast.TyAnd x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyAnd")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1))
- (meta_ctyp _loc x2)
- | Ast.TyOf x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyOf")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1))
- (meta_ctyp _loc x2)
- | Ast.TySum x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TySum")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1)
- | Ast.TyCom x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyCom")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1))
- (meta_ctyp _loc x2)
- | Ast.TySem x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TySem")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1))
- (meta_ctyp _loc x2)
- | Ast.TyCol x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyCol")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1))
- (meta_ctyp _loc x2)
- | Ast.TyRec x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyRec")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1)
- | Ast.TyVrn x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyVrn")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.TyQuM x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyQuM")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.TyQuP x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyQuP")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.TyQuo x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyQuo")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.TyPol x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyPol")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1))
- (meta_ctyp _loc x2)
- | Ast.TyOlb x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyOlb")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_ctyp _loc x2)
- | Ast.TyObj x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyObj")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1))
- (meta_meta_bool _loc x2)
- | Ast.TyDcl x0 x1 x2 x3 x4 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyDcl")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_list meta_ctyp _loc x2))
- (meta_ctyp _loc x3))
- (meta_list
- (fun _loc (x1, x2) ->
- Ast.PaTup _loc
- (Ast.PaCom _loc (meta_ctyp _loc x1)
- (meta_ctyp _loc x2)))
- _loc x4)
- | Ast.TyMan x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyMan")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1))
- (meta_ctyp _loc x2)
- | Ast.TyId x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyId")))
- (meta_acc_Loc_t _loc x0))
- (meta_ident _loc x1)
- | Ast.TyLab x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyLab")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_ctyp _loc x2)
- | Ast.TyCls x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyCls")))
- (meta_acc_Loc_t _loc x0))
- (meta_ident _loc x1)
- | Ast.TyArr x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyArr")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1))
- (meta_ctyp _loc x2)
- | Ast.TyApp x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyApp")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1))
- (meta_ctyp _loc x2)
- | Ast.TyAny x0 ->
- Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyAny")))
- (meta_acc_Loc_t _loc x0)
- | Ast.TyAli x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyAli")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1))
- (meta_ctyp _loc x2)
- | Ast.TyNil x0 ->
- Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "TyNil")))
- (meta_acc_Loc_t _loc x0) ]
- and meta_expr _loc =
- fun
- [ Ast.ExWhi x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExWhi")))
- (meta_acc_Loc_t _loc x0))
- (meta_expr _loc x1))
- (meta_expr _loc x2)
- | Ast.ExVrn x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExVrn")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.ExTyc x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExTyc")))
- (meta_acc_Loc_t _loc x0))
- (meta_expr _loc x1))
- (meta_ctyp _loc x2)
- | Ast.ExCom x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExCom")))
- (meta_acc_Loc_t _loc x0))
- (meta_expr _loc x1))
- (meta_expr _loc x2)
- | Ast.ExTup x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExTup")))
- (meta_acc_Loc_t _loc x0))
- (meta_expr _loc x1)
- | Ast.ExTry x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExTry")))
- (meta_acc_Loc_t _loc x0))
- (meta_expr _loc x1))
- (meta_match_case _loc x2)
- | Ast.ExStr x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExStr")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.ExSte x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExSte")))
- (meta_acc_Loc_t _loc x0))
- (meta_expr _loc x1))
- (meta_expr _loc x2)
- | Ast.ExSnd x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExSnd")))
- (meta_acc_Loc_t _loc x0))
- (meta_expr _loc x1))
- (meta_string _loc x2)
- | Ast.ExSeq x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExSeq")))
- (meta_acc_Loc_t _loc x0))
- (meta_expr _loc x1)
- | Ast.ExRec x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExRec")))
- (meta_acc_Loc_t _loc x0))
- (meta_binding _loc x1))
- (meta_expr _loc x2)
- | Ast.ExOvr x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExOvr")))
- (meta_acc_Loc_t _loc x0))
- (meta_binding _loc x1)
- | Ast.ExOlb x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExOlb")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_expr _loc x2)
- | Ast.ExObj x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExObj")))
- (meta_acc_Loc_t _loc x0))
- (meta_patt _loc x1))
- (meta_class_str_item _loc x2)
- | Ast.ExNew x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExNew")))
- (meta_acc_Loc_t _loc x0))
- (meta_ident _loc x1)
- | Ast.ExMat x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExMat")))
- (meta_acc_Loc_t _loc x0))
- (meta_expr _loc x1))
- (meta_match_case _loc x2)
- | Ast.ExLmd x0 x1 x2 x3 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExLmd")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_module_expr _loc x2))
- (meta_expr _loc x3)
- | Ast.ExLet x0 x1 x2 x3 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExLet")))
- (meta_acc_Loc_t _loc x0))
- (meta_meta_bool _loc x1))
- (meta_binding _loc x2))
- (meta_expr _loc x3)
- | Ast.ExLaz x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExLaz")))
- (meta_acc_Loc_t _loc x0))
- (meta_expr _loc x1)
- | Ast.ExLab x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExLab")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_expr _loc x2)
- | Ast.ExNativeInt x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExNativeInt")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.ExInt64 x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExInt64")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.ExInt32 x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExInt32")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.ExInt x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExInt")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.ExIfe x0 x1 x2 x3 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExIfe")))
- (meta_acc_Loc_t _loc x0))
- (meta_expr _loc x1))
- (meta_expr _loc x2))
- (meta_expr _loc x3)
- | Ast.ExFun x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExFun")))
- (meta_acc_Loc_t _loc x0))
- (meta_match_case _loc x1)
- | Ast.ExFor x0 x1 x2 x3 x4 x5 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc
- (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExFor")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_expr _loc x2))
- (meta_expr _loc x3))
- (meta_meta_bool _loc x4))
- (meta_expr _loc x5)
- | Ast.ExFlo x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExFlo")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.ExCoe x0 x1 x2 x3 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExCoe")))
- (meta_acc_Loc_t _loc x0))
- (meta_expr _loc x1))
- (meta_ctyp _loc x2))
- (meta_ctyp _loc x3)
- | Ast.ExChr x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExChr")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.ExAss x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExAss")))
- (meta_acc_Loc_t _loc x0))
- (meta_expr _loc x1))
- (meta_expr _loc x2)
- | Ast.ExAsr x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExAsr")))
- (meta_acc_Loc_t _loc x0))
- (meta_expr _loc x1)
- | Ast.ExAsf x0 ->
- Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExAsf")))
- (meta_acc_Loc_t _loc x0)
- | Ast.ExSem x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExSem")))
- (meta_acc_Loc_t _loc x0))
- (meta_expr _loc x1))
- (meta_expr _loc x2)
- | Ast.ExArr x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExArr")))
- (meta_acc_Loc_t _loc x0))
- (meta_expr _loc x1)
- | Ast.ExAre x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExAre")))
- (meta_acc_Loc_t _loc x0))
- (meta_expr _loc x1))
- (meta_expr _loc x2)
- | Ast.ExApp x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExApp")))
- (meta_acc_Loc_t _loc x0))
- (meta_expr _loc x1))
- (meta_expr _loc x2)
- | Ast.ExAnt x0 x1 -> Ast.PaAnt x0 x1
- | Ast.ExAcc x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExAcc")))
- (meta_acc_Loc_t _loc x0))
- (meta_expr _loc x1))
- (meta_expr _loc x2)
- | Ast.ExId x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExId")))
- (meta_acc_Loc_t _loc x0))
- (meta_ident _loc x1)
- | Ast.ExNil x0 ->
- Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ExNil")))
- (meta_acc_Loc_t _loc x0) ]
- and meta_ident _loc =
- fun
- [ Ast.IdAnt x0 x1 -> Ast.PaAnt x0 x1
- | Ast.IdUid x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "IdUid")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.IdLid x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "IdLid")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.IdApp x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "IdApp")))
- (meta_acc_Loc_t _loc x0))
- (meta_ident _loc x1))
- (meta_ident _loc x2)
- | Ast.IdAcc x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "IdAcc")))
- (meta_acc_Loc_t _loc x0))
- (meta_ident _loc x1))
- (meta_ident _loc x2) ]
- and meta_match_case _loc =
- fun
- [ Ast.McAnt x0 x1 -> Ast.PaAnt x0 x1
- | Ast.McArr x0 x1 x2 x3 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "McArr")))
- (meta_acc_Loc_t _loc x0))
- (meta_patt _loc x1))
- (meta_expr _loc x2))
- (meta_expr _loc x3)
- | Ast.McOr x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "McOr")))
- (meta_acc_Loc_t _loc x0))
- (meta_match_case _loc x1))
- (meta_match_case _loc x2)
- | Ast.McNil x0 ->
- Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "McNil")))
- (meta_acc_Loc_t _loc x0) ]
- and meta_meta_bool _loc =
- fun
- [ Ast.BAnt x0 -> Ast.PaAnt _loc x0
- | Ast.BFalse ->
- Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "BFalse"))
- | Ast.BTrue ->
- Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "BTrue")) ]
- and meta_meta_list mf_a _loc =
- fun
- [ Ast.LAnt x0 -> Ast.PaAnt _loc x0
- | Ast.LCons x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "LCons")))
- (mf_a _loc x0))
- (meta_meta_list mf_a _loc x1)
- | Ast.LNil ->
- Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "LNil")) ]
- and meta_meta_option mf_a _loc =
- fun
- [ Ast.OAnt x0 -> Ast.PaAnt _loc x0
- | Ast.OSome x0 ->
- Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "OSome")))
- (mf_a _loc x0)
- | Ast.ONone ->
- Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "ONone")) ]
- and meta_module_binding _loc =
- fun
- [ Ast.MbAnt x0 x1 -> Ast.PaAnt x0 x1
- | Ast.MbCol x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "MbCol")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_module_type _loc x2)
- | Ast.MbColEq x0 x1 x2 x3 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "MbColEq")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_module_type _loc x2))
- (meta_module_expr _loc x3)
- | Ast.MbAnd x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "MbAnd")))
- (meta_acc_Loc_t _loc x0))
- (meta_module_binding _loc x1))
- (meta_module_binding _loc x2)
- | Ast.MbNil x0 ->
- Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "MbNil")))
- (meta_acc_Loc_t _loc x0) ]
- and meta_module_expr _loc =
- fun
- [ Ast.MeAnt x0 x1 -> Ast.PaAnt x0 x1
- | Ast.MeTyc x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "MeTyc")))
- (meta_acc_Loc_t _loc x0))
- (meta_module_expr _loc x1))
- (meta_module_type _loc x2)
- | Ast.MeStr x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "MeStr")))
- (meta_acc_Loc_t _loc x0))
- (meta_str_item _loc x1)
- | Ast.MeFun x0 x1 x2 x3 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "MeFun")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_module_type _loc x2))
- (meta_module_expr _loc x3)
- | Ast.MeApp x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "MeApp")))
- (meta_acc_Loc_t _loc x0))
- (meta_module_expr _loc x1))
- (meta_module_expr _loc x2)
- | Ast.MeId x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "MeId")))
- (meta_acc_Loc_t _loc x0))
- (meta_ident _loc x1) ]
- and meta_module_type _loc =
- fun
- [ Ast.MtAnt x0 x1 -> Ast.PaAnt x0 x1
- | Ast.MtWit x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "MtWit")))
- (meta_acc_Loc_t _loc x0))
- (meta_module_type _loc x1))
- (meta_with_constr _loc x2)
- | Ast.MtSig x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "MtSig")))
- (meta_acc_Loc_t _loc x0))
- (meta_sig_item _loc x1)
- | Ast.MtQuo x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "MtQuo")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.MtFun x0 x1 x2 x3 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "MtFun")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_module_type _loc x2))
- (meta_module_type _loc x3)
- | Ast.MtId x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "MtId")))
- (meta_acc_Loc_t _loc x0))
- (meta_ident _loc x1) ]
- and meta_patt _loc =
- fun
- [ Ast.PaVrn x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaVrn")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.PaTyp x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaTyp")))
- (meta_acc_Loc_t _loc x0))
- (meta_ident _loc x1)
- | Ast.PaTyc x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaTyc")))
- (meta_acc_Loc_t _loc x0))
- (meta_patt _loc x1))
- (meta_ctyp _loc x2)
- | Ast.PaTup x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaTup")))
- (meta_acc_Loc_t _loc x0))
- (meta_patt _loc x1)
- | Ast.PaStr x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaStr")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.PaEq x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaEq")))
- (meta_acc_Loc_t _loc x0))
- (meta_patt _loc x1))
- (meta_patt _loc x2)
- | Ast.PaRec x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaRec")))
- (meta_acc_Loc_t _loc x0))
- (meta_patt _loc x1)
- | Ast.PaRng x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaRng")))
- (meta_acc_Loc_t _loc x0))
- (meta_patt _loc x1))
- (meta_patt _loc x2)
- | Ast.PaOrp x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaOrp")))
- (meta_acc_Loc_t _loc x0))
- (meta_patt _loc x1))
- (meta_patt _loc x2)
- | Ast.PaOlbi x0 x1 x2 x3 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaOlbi")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_patt _loc x2))
- (meta_expr _loc x3)
- | Ast.PaOlb x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaOlb")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_patt _loc x2)
- | Ast.PaLab x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaLab")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_patt _loc x2)
- | Ast.PaFlo x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaFlo")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.PaNativeInt x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaNativeInt")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.PaInt64 x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaInt64")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.PaInt32 x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaInt32")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.PaInt x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaInt")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.PaChr x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaChr")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1)
- | Ast.PaSem x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaSem")))
- (meta_acc_Loc_t _loc x0))
- (meta_patt _loc x1))
- (meta_patt _loc x2)
- | Ast.PaCom x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaCom")))
- (meta_acc_Loc_t _loc x0))
- (meta_patt _loc x1))
- (meta_patt _loc x2)
- | Ast.PaArr x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaArr")))
- (meta_acc_Loc_t _loc x0))
- (meta_patt _loc x1)
- | Ast.PaApp x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaApp")))
- (meta_acc_Loc_t _loc x0))
- (meta_patt _loc x1))
- (meta_patt _loc x2)
- | Ast.PaAny x0 ->
- Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaAny")))
- (meta_acc_Loc_t _loc x0)
- | Ast.PaAnt x0 x1 -> Ast.PaAnt x0 x1
- | Ast.PaAli x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaAli")))
- (meta_acc_Loc_t _loc x0))
- (meta_patt _loc x1))
- (meta_patt _loc x2)
- | Ast.PaId x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaId")))
- (meta_acc_Loc_t _loc x0))
- (meta_ident _loc x1)
- | Ast.PaNil x0 ->
- Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "PaNil")))
- (meta_acc_Loc_t _loc x0) ]
- and meta_sig_item _loc =
- fun
- [ Ast.SgAnt x0 x1 -> Ast.PaAnt x0 x1
- | Ast.SgVal x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "SgVal")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_ctyp _loc x2)
- | Ast.SgTyp x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "SgTyp")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1)
- | Ast.SgOpn x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "SgOpn")))
- (meta_acc_Loc_t _loc x0))
- (meta_ident _loc x1)
- | Ast.SgMty x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "SgMty")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_module_type _loc x2)
- | Ast.SgRecMod x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "SgRecMod")))
- (meta_acc_Loc_t _loc x0))
- (meta_module_binding _loc x1)
- | Ast.SgMod x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "SgMod")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_module_type _loc x2)
- | Ast.SgInc x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "SgInc")))
- (meta_acc_Loc_t _loc x0))
- (meta_module_type _loc x1)
- | Ast.SgExt x0 x1 x2 x3 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "SgExt")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_ctyp _loc x2))
- (meta_meta_list meta_string _loc x3)
- | Ast.SgExc x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "SgExc")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1)
- | Ast.SgDir x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "SgDir")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_expr _loc x2)
- | Ast.SgSem x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "SgSem")))
- (meta_acc_Loc_t _loc x0))
- (meta_sig_item _loc x1))
- (meta_sig_item _loc x2)
- | Ast.SgClt x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "SgClt")))
- (meta_acc_Loc_t _loc x0))
- (meta_class_type _loc x1)
- | Ast.SgCls x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "SgCls")))
- (meta_acc_Loc_t _loc x0))
- (meta_class_type _loc x1)
- | Ast.SgNil x0 ->
- Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "SgNil")))
- (meta_acc_Loc_t _loc x0) ]
- and meta_str_item _loc =
- fun
- [ Ast.StAnt x0 x1 -> Ast.PaAnt x0 x1
- | Ast.StVal x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "StVal")))
- (meta_acc_Loc_t _loc x0))
- (meta_meta_bool _loc x1))
- (meta_binding _loc x2)
- | Ast.StTyp x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "StTyp")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1)
- | Ast.StOpn x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "StOpn")))
- (meta_acc_Loc_t _loc x0))
- (meta_ident _loc x1)
- | Ast.StMty x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "StMty")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_module_type _loc x2)
- | Ast.StRecMod x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "StRecMod")))
- (meta_acc_Loc_t _loc x0))
- (meta_module_binding _loc x1)
- | Ast.StMod x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "StMod")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_module_expr _loc x2)
- | Ast.StInc x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "StInc")))
- (meta_acc_Loc_t _loc x0))
- (meta_module_expr _loc x1)
- | Ast.StExt x0 x1 x2 x3 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "StExt")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_ctyp _loc x2))
- (meta_meta_list meta_string _loc x3)
- | Ast.StExp x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "StExp")))
- (meta_acc_Loc_t _loc x0))
- (meta_expr _loc x1)
- | Ast.StExc x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "StExc")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1))
- (meta_meta_option meta_ident _loc x2)
- | Ast.StDir x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "StDir")))
- (meta_acc_Loc_t _loc x0))
- (meta_string _loc x1))
- (meta_expr _loc x2)
- | Ast.StSem x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "StSem")))
- (meta_acc_Loc_t _loc x0))
- (meta_str_item _loc x1))
- (meta_str_item _loc x2)
- | Ast.StClt x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "StClt")))
- (meta_acc_Loc_t _loc x0))
- (meta_class_type _loc x1)
- | Ast.StCls x0 x1 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "StCls")))
- (meta_acc_Loc_t _loc x0))
- (meta_class_expr _loc x1)
- | Ast.StNil x0 ->
- Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "StNil")))
- (meta_acc_Loc_t _loc x0) ]
- and meta_with_constr _loc =
- fun
- [ Ast.WcAnt x0 x1 -> Ast.PaAnt x0 x1
- | Ast.WcAnd x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "WcAnd")))
- (meta_acc_Loc_t _loc x0))
- (meta_with_constr _loc x1))
- (meta_with_constr _loc x2)
- | Ast.WcMod x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "WcMod")))
- (meta_acc_Loc_t _loc x0))
- (meta_ident _loc x1))
- (meta_ident _loc x2)
- | Ast.WcTyp x0 x1 x2 ->
- Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "WcTyp")))
- (meta_acc_Loc_t _loc x0))
- (meta_ctyp _loc x1))
- (meta_ctyp _loc x2)
- | Ast.WcNil x0 ->
- Ast.PaApp _loc
- (Ast.PaId _loc
- (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
- (Ast.IdUid _loc "WcNil")))
- (meta_acc_Loc_t _loc x0) ];
- end;
- end;
- end;
- class map =
- object (o)
- method string = fun x -> (x : string);
- method int = fun x -> (x : int);
- method float = fun x -> (x : float);
- method bool = fun x -> (x : bool);
- method list : ! 'a 'b. ('a -> 'b) -> list 'a -> list 'b = List.map;
- method option : ! 'a 'b. ('a -> 'b) -> option 'a -> option 'b =
- fun f -> fun [ None -> None | Some x -> Some (f x) ];
- method array : ! 'a 'b. ('a -> 'b) -> array 'a -> array 'b = Array.
- map;
- method ref : ! 'a 'b. ('a -> 'b) -> ref 'a -> ref 'b =
- fun f { \val = x } -> { \val = f x; };
- method _Loc_t : Loc.t -> Loc.t = fun x -> x;
- method with_constr : with_constr -> with_constr =
- fun
- [ WcNil _x0 -> WcNil (o#_Loc_t _x0)
- | WcTyp _x0 _x1 _x2 ->
- WcTyp (o#_Loc_t _x0) (o#ctyp _x1) (o#ctyp _x2)
- | WcMod _x0 _x1 _x2 ->
- WcMod (o#_Loc_t _x0) (o#ident _x1) (o#ident _x2)
- | WcAnd _x0 _x1 _x2 ->
- WcAnd (o#_Loc_t _x0) (o#with_constr _x1) (o#with_constr _x2)
- | WcAnt _x0 _x1 -> WcAnt (o#_Loc_t _x0) (o#string _x1) ];
- method str_item : str_item -> str_item =
- fun
- [ StNil _x0 -> StNil (o#_Loc_t _x0)
- | StCls _x0 _x1 -> StCls (o#_Loc_t _x0) (o#class_expr _x1)
- | StClt _x0 _x1 -> StClt (o#_Loc_t _x0) (o#class_type _x1)
- | StSem _x0 _x1 _x2 ->
- StSem (o#_Loc_t _x0) (o#str_item _x1) (o#str_item _x2)
- | StDir _x0 _x1 _x2 ->
- StDir (o#_Loc_t _x0) (o#string _x1) (o#expr _x2)
- | StExc _x0 _x1 _x2 ->
- StExc (o#_Loc_t _x0) (o#ctyp _x1) (o#meta_option o#ident _x2)
- | StExp _x0 _x1 -> StExp (o#_Loc_t _x0) (o#expr _x1)
- | StExt _x0 _x1 _x2 _x3 ->
- StExt (o#_Loc_t _x0) (o#string _x1) (o#ctyp _x2)
- (o#meta_list o#string _x3)
- | StInc _x0 _x1 -> StInc (o#_Loc_t _x0) (o#module_expr _x1)
- | StMod _x0 _x1 _x2 ->
- StMod (o#_Loc_t _x0) (o#string _x1) (o#module_expr _x2)
- | StRecMod _x0 _x1 ->
- StRecMod (o#_Loc_t _x0) (o#module_binding _x1)
- | StMty _x0 _x1 _x2 ->
- StMty (o#_Loc_t _x0) (o#string _x1) (o#module_type _x2)
- | StOpn _x0 _x1 -> StOpn (o#_Loc_t _x0) (o#ident _x1)
- | StTyp _x0 _x1 -> StTyp (o#_Loc_t _x0) (o#ctyp _x1)
- | StVal _x0 _x1 _x2 ->
- StVal (o#_Loc_t _x0) (o#meta_bool _x1) (o#binding _x2)
- | StAnt _x0 _x1 -> StAnt (o#_Loc_t _x0) (o#string _x1) ];
- method sig_item : sig_item -> sig_item =
- fun
- [ SgNil _x0 -> SgNil (o#_Loc_t _x0)
- | SgCls _x0 _x1 -> SgCls (o#_Loc_t _x0) (o#class_type _x1)
- | SgClt _x0 _x1 -> SgClt (o#_Loc_t _x0) (o#class_type _x1)
- | SgSem _x0 _x1 _x2 ->
- SgSem (o#_Loc_t _x0) (o#sig_item _x1) (o#sig_item _x2)
- | SgDir _x0 _x1 _x2 ->
- SgDir (o#_Loc_t _x0) (o#string _x1) (o#expr _x2)
- | SgExc _x0 _x1 -> SgExc (o#_Loc_t _x0) (o#ctyp _x1)
- | SgExt _x0 _x1 _x2 _x3 ->
- SgExt (o#_Loc_t _x0) (o#string _x1) (o#ctyp _x2)
- (o#meta_list o#string _x3)
- | SgInc _x0 _x1 -> SgInc (o#_Loc_t _x0) (o#module_type _x1)
- | SgMod _x0 _x1 _x2 ->
- SgMod (o#_Loc_t _x0) (o#string _x1) (o#module_type _x2)
- | SgRecMod _x0 _x1 ->
- SgRecMod (o#_Loc_t _x0) (o#module_binding _x1)
- | SgMty _x0 _x1 _x2 ->
- SgMty (o#_Loc_t _x0) (o#string _x1) (o#module_type _x2)
- | SgOpn _x0 _x1 -> SgOpn (o#_Loc_t _x0) (o#ident _x1)
- | SgTyp _x0 _x1 -> SgTyp (o#_Loc_t _x0) (o#ctyp _x1)
- | SgVal _x0 _x1 _x2 ->
- SgVal (o#_Loc_t _x0) (o#string _x1) (o#ctyp _x2)
- | SgAnt _x0 _x1 -> SgAnt (o#_Loc_t _x0) (o#string _x1) ];
- method patt : patt -> patt =
- fun
- [ PaNil _x0 -> PaNil (o#_Loc_t _x0)
- | PaId _x0 _x1 -> PaId (o#_Loc_t _x0) (o#ident _x1)
- | PaAli _x0 _x1 _x2 ->
- PaAli (o#_Loc_t _x0) (o#patt _x1) (o#patt _x2)
- | PaAnt _x0 _x1 -> PaAnt (o#_Loc_t _x0) (o#string _x1)
- | PaAny _x0 -> PaAny (o#_Loc_t _x0)
- | PaApp _x0 _x1 _x2 ->
- PaApp (o#_Loc_t _x0) (o#patt _x1) (o#patt _x2)
- | PaArr _x0 _x1 -> PaArr (o#_Loc_t _x0) (o#patt _x1)
- | PaCom _x0 _x1 _x2 ->
- PaCom (o#_Loc_t _x0) (o#patt _x1) (o#patt _x2)
- | PaSem _x0 _x1 _x2 ->
- PaSem (o#_Loc_t _x0) (o#patt _x1) (o#patt _x2)
- | PaChr _x0 _x1 -> PaChr (o#_Loc_t _x0) (o#string _x1)
- | PaInt _x0 _x1 -> PaInt (o#_Loc_t _x0) (o#string _x1)
- | PaInt32 _x0 _x1 -> PaInt32 (o#_Loc_t _x0) (o#string _x1)
- | PaInt64 _x0 _x1 -> PaInt64 (o#_Loc_t _x0) (o#string _x1)
- | PaNativeInt _x0 _x1 -> PaNativeInt (o#_Loc_t _x0) (o#string _x1)
- | PaFlo _x0 _x1 -> PaFlo (o#_Loc_t _x0) (o#string _x1)
- | PaLab _x0 _x1 _x2 ->
- PaLab (o#_Loc_t _x0) (o#string _x1) (o#patt _x2)
- | PaOlb _x0 _x1 _x2 ->
- PaOlb (o#_Loc_t _x0) (o#string _x1) (o#patt _x2)
- | PaOlbi _x0 _x1 _x2 _x3 ->
- PaOlbi (o#_Loc_t _x0) (o#string _x1) (o#patt _x2) (o#expr _x3)
- | PaOrp _x0 _x1 _x2 ->
- PaOrp (o#_Loc_t _x0) (o#patt _x1) (o#patt _x2)
- | PaRng _x0 _x1 _x2 ->
- PaRng (o#_Loc_t _x0) (o#patt _x1) (o#patt _x2)
- | PaRec _x0 _x1 -> PaRec (o#_Loc_t _x0) (o#patt _x1)
- | PaEq _x0 _x1 _x2 -> PaEq (o#_Loc_t _x0) (o#patt _x1) (o#patt _x2)
- | PaStr _x0 _x1 -> PaStr (o#_Loc_t _x0) (o#string _x1)
- | PaTup _x0 _x1 -> PaTup (o#_Loc_t _x0) (o#patt _x1)
- | PaTyc _x0 _x1 _x2 ->
- PaTyc (o#_Loc_t _x0) (o#patt _x1) (o#ctyp _x2)
- | PaTyp _x0 _x1 -> PaTyp (o#_Loc_t _x0) (o#ident _x1)
- | PaVrn _x0 _x1 -> PaVrn (o#_Loc_t _x0) (o#string _x1) ];
- method module_type : module_type -> module_type =
- fun
- [ MtId _x0 _x1 -> MtId (o#_Loc_t _x0) (o#ident _x1)
- | MtFun _x0 _x1 _x2 _x3 ->
- MtFun (o#_Loc_t _x0) (o#string _x1) (o#module_type _x2)
- (o#module_type _x3)
- | MtQuo _x0 _x1 -> MtQuo (o#_Loc_t _x0) (o#string _x1)
- | MtSig _x0 _x1 -> MtSig (o#_Loc_t _x0) (o#sig_item _x1)
- | MtWit _x0 _x1 _x2 ->
- MtWit (o#_Loc_t _x0) (o#module_type _x1) (o#with_constr _x2)
- | MtAnt _x0 _x1 -> MtAnt (o#_Loc_t _x0) (o#string _x1) ];
- method module_expr : module_expr -> module_expr =
- fun
- [ MeId _x0 _x1 -> MeId (o#_Loc_t _x0) (o#ident _x1)
- | MeApp _x0 _x1 _x2 ->
- MeApp (o#_Loc_t _x0) (o#module_expr _x1) (o#module_expr _x2)
- | MeFun _x0 _x1 _x2 _x3 ->
- MeFun (o#_Loc_t _x0) (o#string _x1) (o#module_type _x2)
- (o#module_expr _x3)
- | MeStr _x0 _x1 -> MeStr (o#_Loc_t _x0) (o#str_item _x1)
- | MeTyc _x0 _x1 _x2 ->
- MeTyc (o#_Loc_t _x0) (o#module_expr _x1) (o#module_type _x2)
- | MeAnt _x0 _x1 -> MeAnt (o#_Loc_t _x0) (o#string _x1) ];
- method module_binding : module_binding -> module_binding =
- fun
- [ MbNil _x0 -> MbNil (o#_Loc_t _x0)
- | MbAnd _x0 _x1 _x2 ->
- MbAnd (o#_Loc_t _x0) (o#module_binding _x1)
- (o#module_binding _x2)
- | MbColEq _x0 _x1 _x2 _x3 ->
- MbColEq (o#_Loc_t _x0) (o#string _x1) (o#module_type _x2)
- (o#module_expr _x3)
- | MbCol _x0 _x1 _x2 ->
- MbCol (o#_Loc_t _x0) (o#string _x1) (o#module_type _x2)
- | MbAnt _x0 _x1 -> MbAnt (o#_Loc_t _x0) (o#string _x1) ];
- method meta_option :
- ! 'a 'b. ('a -> 'b) -> meta_option 'a -> meta_option 'b =
- fun _f_a ->
- fun
- [ ONone -> ONone
- | OSome _x0 -> OSome (_f_a _x0)
- | OAnt _x0 -> OAnt (o#string _x0) ];
- method meta_list :
- ! 'a 'b. ('a -> 'b) -> meta_list 'a -> meta_list 'b =
- fun _f_a ->
- fun
- [ LNil -> LNil
- | LCons _x0 _x1 -> LCons (_f_a _x0) (o#meta_list _f_a _x1)
- | LAnt _x0 -> LAnt (o#string _x0) ];
- method meta_bool : meta_bool -> meta_bool =
- fun
- [ BTrue -> BTrue
- | BFalse -> BFalse
- | BAnt _x0 -> BAnt (o#string _x0) ];
- method match_case : match_case -> match_case =
- fun
- [ McNil _x0 -> McNil (o#_Loc_t _x0)
- | McOr _x0 _x1 _x2 ->
- McOr (o#_Loc_t _x0) (o#match_case _x1) (o#match_case _x2)
- | McArr _x0 _x1 _x2 _x3 ->
- McArr (o#_Loc_t _x0) (o#patt _x1) (o#expr _x2) (o#expr _x3)
- | McAnt _x0 _x1 -> McAnt (o#_Loc_t _x0) (o#string _x1) ];
- method ident : ident -> ident =
- fun
- [ IdAcc _x0 _x1 _x2 ->
- IdAcc (o#_Loc_t _x0) (o#ident _x1) (o#ident _x2)
- | IdApp _x0 _x1 _x2 ->
- IdApp (o#_Loc_t _x0) (o#ident _x1) (o#ident _x2)
- | IdLid _x0 _x1 -> IdLid (o#_Loc_t _x0) (o#string _x1)
- | IdUid _x0 _x1 -> IdUid (o#_Loc_t _x0) (o#string _x1)
- | IdAnt _x0 _x1 -> IdAnt (o#_Loc_t _x0) (o#string _x1) ];
- method expr : expr -> expr =
- fun
- [ ExNil _x0 -> ExNil (o#_Loc_t _x0)
- | ExId _x0 _x1 -> ExId (o#_Loc_t _x0) (o#ident _x1)
- | ExAcc _x0 _x1 _x2 ->
- ExAcc (o#_Loc_t _x0) (o#expr _x1) (o#expr _x2)
- | ExAnt _x0 _x1 -> ExAnt (o#_Loc_t _x0) (o#string _x1)
- | ExApp _x0 _x1 _x2 ->
- ExApp (o#_Loc_t _x0) (o#expr _x1) (o#expr _x2)
- | ExAre _x0 _x1 _x2 ->
- ExAre (o#_Loc_t _x0) (o#expr _x1) (o#expr _x2)
- | ExArr _x0 _x1 -> ExArr (o#_Loc_t _x0) (o#expr _x1)
- | ExSem _x0 _x1 _x2 ->
- ExSem (o#_Loc_t _x0) (o#expr _x1) (o#expr _x2)
- | ExAsf _x0 -> ExAsf (o#_Loc_t _x0)
- | ExAsr _x0 _x1 -> ExAsr (o#_Loc_t _x0) (o#expr _x1)
- | ExAss _x0 _x1 _x2 ->
- ExAss (o#_Loc_t _x0) (o#expr _x1) (o#expr _x2)
- | ExChr _x0 _x1 -> ExChr (o#_Loc_t _x0) (o#string _x1)
- | ExCoe _x0 _x1 _x2 _x3 ->
- ExCoe (o#_Loc_t _x0) (o#expr _x1) (o#ctyp _x2) (o#ctyp _x3)
- | ExFlo _x0 _x1 -> ExFlo (o#_Loc_t _x0) (o#string _x1)
- | ExFor _x0 _x1 _x2 _x3 _x4 _x5 ->
- ExFor (o#_Loc_t _x0) (o#string _x1) (o#expr _x2) (o#expr _x3)
- (o#meta_bool _x4) (o#expr _x5)
- | ExFun _x0 _x1 -> ExFun (o#_Loc_t _x0) (o#match_case _x1)
- | ExIfe _x0 _x1 _x2 _x3 ->
- ExIfe (o#_Loc_t _x0) (o#expr _x1) (o#expr _x2) (o#expr _x3)
- | ExInt _x0 _x1 -> ExInt (o#_Loc_t _x0) (o#string _x1)
- | ExInt32 _x0 _x1 -> ExInt32 (o#_Loc_t _x0) (o#string _x1)
- | ExInt64 _x0 _x1 -> ExInt64 (o#_Loc_t _x0) (o#string _x1)
- | ExNativeInt _x0 _x1 -> ExNativeInt (o#_Loc_t _x0) (o#string _x1)
- | ExLab _x0 _x1 _x2 ->
- ExLab (o#_Loc_t _x0) (o#string _x1) (o#expr _x2)
- | ExLaz _x0 _x1 -> ExLaz (o#_Loc_t _x0) (o#expr _x1)
- | ExLet _x0 _x1 _x2 _x3 ->
- ExLet (o#_Loc_t _x0) (o#meta_bool _x1) (o#binding _x2)
- (o#expr _x3)
- | ExLmd _x0 _x1 _x2 _x3 ->
- ExLmd (o#_Loc_t _x0) (o#string _x1) (o#module_expr _x2)
- (o#expr _x3)
- | ExMat _x0 _x1 _x2 ->
- ExMat (o#_Loc_t _x0) (o#expr _x1) (o#match_case _x2)
- | ExNew _x0 _x1 -> ExNew (o#_Loc_t _x0) (o#ident _x1)
- | ExObj _x0 _x1 _x2 ->
- ExObj (o#_Loc_t _x0) (o#patt _x1) (o#class_str_item _x2)
- | ExOlb _x0 _x1 _x2 ->
- ExOlb (o#_Loc_t _x0) (o#string _x1) (o#expr _x2)
- | ExOvr _x0 _x1 -> ExOvr (o#_Loc_t _x0) (o#binding _x1)
- | ExRec _x0 _x1 _x2 ->
- ExRec (o#_Loc_t _x0) (o#binding _x1) (o#expr _x2)
- | ExSeq _x0 _x1 -> ExSeq (o#_Loc_t _x0) (o#expr _x1)
- | ExSnd _x0 _x1 _x2 ->
- ExSnd (o#_Loc_t _x0) (o#expr _x1) (o#string _x2)
- | ExSte _x0 _x1 _x2 ->
- ExSte (o#_Loc_t _x0) (o#expr _x1) (o#expr _x2)
- | ExStr _x0 _x1 -> ExStr (o#_Loc_t _x0) (o#string _x1)
- | ExTry _x0 _x1 _x2 ->
- ExTry (o#_Loc_t _x0) (o#expr _x1) (o#match_case _x2)
- | ExTup _x0 _x1 -> ExTup (o#_Loc_t _x0) (o#expr _x1)
- | ExCom _x0 _x1 _x2 ->
- ExCom (o#_Loc_t _x0) (o#expr _x1) (o#expr _x2)
- | ExTyc _x0 _x1 _x2 ->
- ExTyc (o#_Loc_t _x0) (o#expr _x1) (o#ctyp _x2)
- | ExVrn _x0 _x1 -> ExVrn (o#_Loc_t _x0) (o#string _x1)
- | ExWhi _x0 _x1 _x2 ->
- ExWhi (o#_Loc_t _x0) (o#expr _x1) (o#expr _x2) ];
- method ctyp : ctyp -> ctyp =
- fun
- [ TyNil _x0 -> TyNil (o#_Loc_t _x0)
- | TyAli _x0 _x1 _x2 ->
- TyAli (o#_Loc_t _x0) (o#ctyp _x1) (o#ctyp _x2)
- | TyAny _x0 -> TyAny (o#_Loc_t _x0)
- | TyApp _x0 _x1 _x2 ->
- TyApp (o#_Loc_t _x0) (o#ctyp _x1) (o#ctyp _x2)
- | TyArr _x0 _x1 _x2 ->
- TyArr (o#_Loc_t _x0) (o#ctyp _x1) (o#ctyp _x2)
- | TyCls _x0 _x1 -> TyCls (o#_Loc_t _x0) (o#ident _x1)
- | TyLab _x0 _x1 _x2 ->
- TyLab (o#_Loc_t _x0) (o#string _x1) (o#ctyp _x2)
- | TyId _x0 _x1 -> TyId (o#_Loc_t _x0) (o#ident _x1)
- | TyMan _x0 _x1 _x2 ->
- TyMan (o#_Loc_t _x0) (o#ctyp _x1) (o#ctyp _x2)
- | TyDcl _x0 _x1 _x2 _x3 _x4 ->
- TyDcl (o#_Loc_t _x0) (o#string _x1) (o#list o#ctyp _x2)
- (o#ctyp _x3)
- (o#list (fun (_x0, _x1) -> ((o#ctyp _x0), (o#ctyp _x1))) _x4)
- | TyObj _x0 _x1 _x2 ->
- TyObj (o#_Loc_t _x0) (o#ctyp _x1) (o#meta_bool _x2)
- | TyOlb _x0 _x1 _x2 ->
- TyOlb (o#_Loc_t _x0) (o#string _x1) (o#ctyp _x2)
- | TyPol _x0 _x1 _x2 ->
- TyPol (o#_Loc_t _x0) (o#ctyp _x1) (o#ctyp _x2)
- | TyQuo _x0 _x1 -> TyQuo (o#_Loc_t _x0) (o#string _x1)
- | TyQuP _x0 _x1 -> TyQuP (o#_Loc_t _x0) (o#string _x1)
- | TyQuM _x0 _x1 -> TyQuM (o#_Loc_t _x0) (o#string _x1)
- | TyVrn _x0 _x1 -> TyVrn (o#_Loc_t _x0) (o#string _x1)
- | TyRec _x0 _x1 -> TyRec (o#_Loc_t _x0) (o#ctyp _x1)
- | TyCol _x0 _x1 _x2 ->
- TyCol (o#_Loc_t _x0) (o#ctyp _x1) (o#ctyp _x2)
- | TySem _x0 _x1 _x2 ->
- TySem (o#_Loc_t _x0) (o#ctyp _x1) (o#ctyp _x2)
- | TyCom _x0 _x1 _x2 ->
- TyCom (o#_Loc_t _x0) (o#ctyp _x1) (o#ctyp _x2)
- | TySum _x0 _x1 -> TySum (o#_Loc_t _x0) (o#ctyp _x1)
- | TyOf _x0 _x1 _x2 -> TyOf (o#_Loc_t _x0) (o#ctyp _x1) (o#ctyp _x2)
- | TyAnd _x0 _x1 _x2 ->
- TyAnd (o#_Loc_t _x0) (o#ctyp _x1) (o#ctyp _x2)
- | TyOr _x0 _x1 _x2 -> TyOr (o#_Loc_t _x0) (o#ctyp _x1) (o#ctyp _x2)
- | TyPrv _x0 _x1 -> TyPrv (o#_Loc_t _x0) (o#ctyp _x1)
- | TyMut _x0 _x1 -> TyMut (o#_Loc_t _x0) (o#ctyp _x1)
- | TyTup _x0 _x1 -> TyTup (o#_Loc_t _x0) (o#ctyp _x1)
- | TySta _x0 _x1 _x2 ->
- TySta (o#_Loc_t _x0) (o#ctyp _x1) (o#ctyp _x2)
- | TyVrnEq _x0 _x1 -> TyVrnEq (o#_Loc_t _x0) (o#ctyp _x1)
- | TyVrnSup _x0 _x1 -> TyVrnSup (o#_Loc_t _x0) (o#ctyp _x1)
- | TyVrnInf _x0 _x1 -> TyVrnInf (o#_Loc_t _x0) (o#ctyp _x1)
- | TyVrnInfSup _x0 _x1 _x2 ->
- TyVrnInfSup (o#_Loc_t _x0) (o#ctyp _x1) (o#ctyp _x2)
- | TyAmp _x0 _x1 _x2 ->
- TyAmp (o#_Loc_t _x0) (o#ctyp _x1) (o#ctyp _x2)
- | TyOfAmp _x0 _x1 _x2 ->
- TyOfAmp (o#_Loc_t _x0) (o#ctyp _x1) (o#ctyp _x2)
- | TyAnt _x0 _x1 -> TyAnt (o#_Loc_t _x0) (o#string _x1) ];
- method class_type : class_type -> class_type =
- fun
- [ CtNil _x0 -> CtNil (o#_Loc_t _x0)
- | CtCon _x0 _x1 _x2 _x3 ->
- CtCon (o#_Loc_t _x0) (o#meta_bool _x1) (o#ident _x2)
- (o#ctyp _x3)
- | CtFun _x0 _x1 _x2 ->
- CtFun (o#_Loc_t _x0) (o#ctyp _x1) (o#class_type _x2)
- | CtSig _x0 _x1 _x2 ->
- CtSig (o#_Loc_t _x0) (o#ctyp _x1) (o#class_sig_item _x2)
- | CtAnd _x0 _x1 _x2 ->
- CtAnd (o#_Loc_t _x0) (o#class_type _x1) (o#class_type _x2)
- | CtCol _x0 _x1 _x2 ->
- CtCol (o#_Loc_t _x0) (o#class_type _x1) (o#class_type _x2)
- | CtEq _x0 _x1 _x2 ->
- CtEq (o#_Loc_t _x0) (o#class_type _x1) (o#class_type _x2)
- | CtAnt _x0 _x1 -> CtAnt (o#_Loc_t _x0) (o#string _x1) ];
- method class_str_item : class_str_item -> class_str_item =
- fun
- [ CrNil _x0 -> CrNil (o#_Loc_t _x0)
- | CrSem _x0 _x1 _x2 ->
- CrSem (o#_Loc_t _x0) (o#class_str_item _x1)
- (o#class_str_item _x2)
- | CrCtr _x0 _x1 _x2 ->
- CrCtr (o#_Loc_t _x0) (o#ctyp _x1) (o#ctyp _x2)
- | CrInh _x0 _x1 _x2 ->
- CrInh (o#_Loc_t _x0) (o#class_expr _x1) (o#string _x2)
- | CrIni _x0 _x1 -> CrIni (o#_Loc_t _x0) (o#expr _x1)
- | CrMth _x0 _x1 _x2 _x3 _x4 ->
- CrMth (o#_Loc_t _x0) (o#string _x1) (o#meta_bool _x2)
- (o#expr _x3) (o#ctyp _x4)
- | CrVal _x0 _x1 _x2 _x3 ->
- CrVal (o#_Loc_t _x0) (o#string _x1) (o#meta_bool _x2)
- (o#expr _x3)
- | CrVir _x0 _x1 _x2 _x3 ->
- CrVir (o#_Loc_t _x0) (o#string _x1) (o#meta_bool _x2)
- (o#ctyp _x3)
- | CrVvr _x0 _x1 _x2 _x3 ->
- CrVvr (o#_Loc_t _x0) (o#string _x1) (o#meta_bool _x2)
- (o#ctyp _x3)
- | CrAnt _x0 _x1 -> CrAnt (o#_Loc_t _x0) (o#string _x1) ];
- method class_sig_item : class_sig_item -> class_sig_item =
- fun
- [ CgNil _x0 -> CgNil (o#_Loc_t _x0)
- | CgCtr _x0 _x1 _x2 ->
- CgCtr (o#_Loc_t _x0) (o#ctyp _x1) (o#ctyp _x2)
- | CgSem _x0 _x1 _x2 ->
- CgSem (o#_Loc_t _x0) (o#class_sig_item _x1)
- (o#class_sig_item _x2)
- | CgInh _x0 _x1 -> CgInh (o#_Loc_t _x0) (o#class_type _x1)
- | CgMth _x0 _x1 _x2 _x3 ->
- CgMth (o#_Loc_t _x0) (o#string _x1) (o#meta_bool _x2)
- (o#ctyp _x3)
- | CgVal _x0 _x1 _x2 _x3 _x4 ->
- CgVal (o#_Loc_t _x0) (o#string _x1) (o#meta_bool _x2)
- (o#meta_bool _x3) (o#ctyp _x4)
- | CgVir _x0 _x1 _x2 _x3 ->
- CgVir (o#_Loc_t _x0) (o#string _x1) (o#meta_bool _x2)
- (o#ctyp _x3)
- | CgAnt _x0 _x1 -> CgAnt (o#_Loc_t _x0) (o#string _x1) ];
- method class_expr : class_expr -> class_expr =
- fun
- [ CeNil _x0 -> CeNil (o#_Loc_t _x0)
- | CeApp _x0 _x1 _x2 ->
- CeApp (o#_Loc_t _x0) (o#class_expr _x1) (o#expr _x2)
- | CeCon _x0 _x1 _x2 _x3 ->
- CeCon (o#_Loc_t _x0) (o#meta_bool _x1) (o#ident _x2)
- (o#ctyp _x3)
- | CeFun _x0 _x1 _x2 ->
- CeFun (o#_Loc_t _x0) (o#patt _x1) (o#class_expr _x2)
- | CeLet _x0 _x1 _x2 _x3 ->
- CeLet (o#_Loc_t _x0) (o#meta_bool _x1) (o#binding _x2)
- (o#class_expr _x3)
- | CeStr _x0 _x1 _x2 ->
- CeStr (o#_Loc_t _x0) (o#patt _x1) (o#class_str_item _x2)
- | CeTyc _x0 _x1 _x2 ->
- CeTyc (o#_Loc_t _x0) (o#class_expr _x1) (o#class_type _x2)
- | CeAnd _x0 _x1 _x2 ->
- CeAnd (o#_Loc_t _x0) (o#class_expr _x1) (o#class_expr _x2)
- | CeEq _x0 _x1 _x2 ->
- CeEq (o#_Loc_t _x0) (o#class_expr _x1) (o#class_expr _x2)
- | CeAnt _x0 _x1 -> CeAnt (o#_Loc_t _x0) (o#string _x1) ];
- method binding : binding -> binding =
- fun
- [ BiNil _x0 -> BiNil (o#_Loc_t _x0)
- | BiAnd _x0 _x1 _x2 ->
- BiAnd (o#_Loc_t _x0) (o#binding _x1) (o#binding _x2)
- | BiSem _x0 _x1 _x2 ->
- BiSem (o#_Loc_t _x0) (o#binding _x1) (o#binding _x2)
- | BiEq _x0 _x1 _x2 -> BiEq (o#_Loc_t _x0) (o#patt _x1) (o#expr _x2)
- | BiAnt _x0 _x1 -> BiAnt (o#_Loc_t _x0) (o#string _x1) ];
- end;
- class fold =
- object ((o : 'self_type))
- method string = fun (_ : string) -> (o : 'self_type);
- method int = fun (_ : int) -> (o : 'self_type);
- method float = fun (_ : float) -> (o : 'self_type);
- method bool = fun (_ : bool) -> (o : 'self_type);
- method list :
- ! 'a. ('self_type -> 'a -> 'self_type) -> list 'a -> 'self_type =
- fun f -> List.fold_left f o;
- method option :
- ! 'a. ('self_type -> 'a -> 'self_type) -> option 'a -> 'self_type =
- fun f -> fun [ None -> o | Some x -> f o x ];
- method array :
- ! 'a. ('self_type -> 'a -> 'self_type) -> array 'a -> 'self_type =
- fun f -> Array.fold_left f o;
- method ref :
- ! 'a. ('self_type -> 'a -> 'self_type) -> ref 'a -> 'self_type =
- fun f { \val = x } -> f o x;
- method _Loc_t : Loc.t -> 'self_type = fun _ -> o;
- method with_constr : with_constr -> 'self_type =
- fun
- [ WcNil _x0 -> o#_Loc_t _x0
- | WcTyp _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
- | WcMod _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ident _x1)#ident _x2
- | WcAnd _x0 _x1 _x2 ->
- ((o#_Loc_t _x0)#with_constr _x1)#with_constr _x2
- | WcAnt _x0 _x1 -> (o#_Loc_t _x0)#string _x1 ];
- method str_item : str_item -> 'self_type =
- fun
- [ StNil _x0 -> o#_Loc_t _x0
- | StCls _x0 _x1 -> (o#_Loc_t _x0)#class_expr _x1
- | StClt _x0 _x1 -> (o#_Loc_t _x0)#class_type _x1
- | StSem _x0 _x1 _x2 -> ((o#_Loc_t _x0)#str_item _x1)#str_item _x2
- | StDir _x0 _x1 _x2 -> ((o#_Loc_t _x0)#string _x1)#expr _x2
- | StExc _x0 _x1 _x2 ->
- ((o#_Loc_t _x0)#ctyp _x1)#meta_option (fun o -> o#ident) _x2
- | StExp _x0 _x1 -> (o#_Loc_t _x0)#expr _x1
- | StExt _x0 _x1 _x2 _x3 ->
- (((o#_Loc_t _x0)#string _x1)#ctyp _x2)#meta_list
- (fun o -> o#string) _x3
- | StInc _x0 _x1 -> (o#_Loc_t _x0)#module_expr _x1
- | StMod _x0 _x1 _x2 -> ((o#_Loc_t _x0)#string _x1)#module_expr _x2
- | StRecMod _x0 _x1 -> (o#_Loc_t _x0)#module_binding _x1
- | StMty _x0 _x1 _x2 -> ((o#_Loc_t _x0)#string _x1)#module_type _x2
- | StOpn _x0 _x1 -> (o#_Loc_t _x0)#ident _x1
- | StTyp _x0 _x1 -> (o#_Loc_t _x0)#ctyp _x1
- | StVal _x0 _x1 _x2 -> ((o#_Loc_t _x0)#meta_bool _x1)#binding _x2
- | StAnt _x0 _x1 -> (o#_Loc_t _x0)#string _x1 ];
- method sig_item : sig_item -> 'self_type =
- fun
- [ SgNil _x0 -> o#_Loc_t _x0
- | SgCls _x0 _x1 -> (o#_Loc_t _x0)#class_type _x1
- | SgClt _x0 _x1 -> (o#_Loc_t _x0)#class_type _x1
- | SgSem _x0 _x1 _x2 -> ((o#_Loc_t _x0)#sig_item _x1)#sig_item _x2
- | SgDir _x0 _x1 _x2 -> ((o#_Loc_t _x0)#string _x1)#expr _x2
- | SgExc _x0 _x1 -> (o#_Loc_t _x0)#ctyp _x1
- | SgExt _x0 _x1 _x2 _x3 ->
- (((o#_Loc_t _x0)#string _x1)#ctyp _x2)#meta_list
- (fun o -> o#string) _x3
- | SgInc _x0 _x1 -> (o#_Loc_t _x0)#module_type _x1
- | SgMod _x0 _x1 _x2 -> ((o#_Loc_t _x0)#string _x1)#module_type _x2
- | SgRecMod _x0 _x1 -> (o#_Loc_t _x0)#module_binding _x1
- | SgMty _x0 _x1 _x2 -> ((o#_Loc_t _x0)#string _x1)#module_type _x2
- | SgOpn _x0 _x1 -> (o#_Loc_t _x0)#ident _x1
- | SgTyp _x0 _x1 -> (o#_Loc_t _x0)#ctyp _x1
- | SgVal _x0 _x1 _x2 -> ((o#_Loc_t _x0)#string _x1)#ctyp _x2
- | SgAnt _x0 _x1 -> (o#_Loc_t _x0)#string _x1 ];
- method patt : patt -> 'self_type =
- fun
- [ PaNil _x0 -> o#_Loc_t _x0
- | PaId _x0 _x1 -> (o#_Loc_t _x0)#ident _x1
- | PaAli _x0 _x1 _x2 -> ((o#_Loc_t _x0)#patt _x1)#patt _x2
- | PaAnt _x0 _x1 -> (o#_Loc_t _x0)#string _x1
- | PaAny _x0 -> o#_Loc_t _x0
- | PaApp _x0 _x1 _x2 -> ((o#_Loc_t _x0)#patt _x1)#patt _x2
- | PaArr _x0 _x1 -> (o#_Loc_t _x0)#patt _x1
- | PaCom _x0 _x1 _x2 -> ((o#_Loc_t _x0)#patt _x1)#patt _x2
- | PaSem _x0 _x1 _x2 -> ((o#_Loc_t _x0)#patt _x1)#patt _x2
- | PaChr _x0 _x1 -> (o#_Loc_t _x0)#string _x1
- | PaInt _x0 _x1 -> (o#_Loc_t _x0)#string _x1
- | PaInt32 _x0 _x1 -> (o#_Loc_t _x0)#string _x1
- | PaInt64 _x0 _x1 -> (o#_Loc_t _x0)#string _x1
- | PaNativeInt _x0 _x1 -> (o#_Loc_t _x0)#string _x1
- | PaFlo _x0 _x1 -> (o#_Loc_t _x0)#string _x1
- | PaLab _x0 _x1 _x2 -> ((o#_Loc_t _x0)#string _x1)#patt _x2
- | PaOlb _x0 _x1 _x2 -> ((o#_Loc_t _x0)#string _x1)#patt _x2
- | PaOlbi _x0 _x1 _x2 _x3 ->
- (((o#_Loc_t _x0)#string _x1)#patt _x2)#expr _x3
- | PaOrp _x0 _x1 _x2 -> ((o#_Loc_t _x0)#patt _x1)#patt _x2
- | PaRng _x0 _x1 _x2 -> ((o#_Loc_t _x0)#patt _x1)#patt _x2
- | PaRec _x0 _x1 -> (o#_Loc_t _x0)#patt _x1
- | PaEq _x0 _x1 _x2 -> ((o#_Loc_t _x0)#patt _x1)#patt _x2
- | PaStr _x0 _x1 -> (o#_Loc_t _x0)#string _x1
- | PaTup _x0 _x1 -> (o#_Loc_t _x0)#patt _x1
- | PaTyc _x0 _x1 _x2 -> ((o#_Loc_t _x0)#patt _x1)#ctyp _x2
- | PaTyp _x0 _x1 -> (o#_Loc_t _x0)#ident _x1
- | PaVrn _x0 _x1 -> (o#_Loc_t _x0)#string _x1 ];
- method module_type : module_type -> 'self_type =
- fun
- [ MtId _x0 _x1 -> (o#_Loc_t _x0)#ident _x1
- | MtFun _x0 _x1 _x2 _x3 ->
- (((o#_Loc_t _x0)#string _x1)#module_type _x2)#module_type _x3
- | MtQuo _x0 _x1 -> (o#_Loc_t _x0)#string _x1
- | MtSig _x0 _x1 -> (o#_Loc_t _x0)#sig_item _x1
- | MtWit _x0 _x1 _x2 ->
- ((o#_Loc_t _x0)#module_type _x1)#with_constr _x2
- | MtAnt _x0 _x1 -> (o#_Loc_t _x0)#string _x1 ];
- method module_expr : module_expr -> 'self_type =
- fun
- [ MeId _x0 _x1 -> (o#_Loc_t _x0)#ident _x1
- | MeApp _x0 _x1 _x2 ->
- ((o#_Loc_t _x0)#module_expr _x1)#module_expr _x2
- | MeFun _x0 _x1 _x2 _x3 ->
- (((o#_Loc_t _x0)#string _x1)#module_type _x2)#module_expr _x3
- | MeStr _x0 _x1 -> (o#_Loc_t _x0)#str_item _x1
- | MeTyc _x0 _x1 _x2 ->
- ((o#_Loc_t _x0)#module_expr _x1)#module_type _x2
- | MeAnt _x0 _x1 -> (o#_Loc_t _x0)#string _x1 ];
- method module_binding : module_binding -> 'self_type =
- fun
- [ MbNil _x0 -> o#_Loc_t _x0
- | MbAnd _x0 _x1 _x2 ->
- ((o#_Loc_t _x0)#module_binding _x1)#module_binding _x2
- | MbColEq _x0 _x1 _x2 _x3 ->
- (((o#_Loc_t _x0)#string _x1)#module_type _x2)#module_expr _x3
- | MbCol _x0 _x1 _x2 -> ((o#_Loc_t _x0)#string _x1)#module_type _x2
- | MbAnt _x0 _x1 -> (o#_Loc_t _x0)#string _x1 ];
- method meta_option :
- ! 'a.
- ('self_type -> 'a -> 'self_type) -> meta_option 'a -> 'self_type =
- fun _f_a ->
- fun
- [ ONone -> o
- | OSome _x0 -> _f_a o _x0
- | OAnt _x0 -> o#string _x0 ];
- method meta_list :
- ! 'a.
- ('self_type -> 'a -> 'self_type) -> meta_list 'a -> 'self_type =
- fun _f_a ->
- fun
- [ LNil -> o
- | LCons _x0 _x1 -> (_f_a o _x0)#meta_list (fun o -> _f_a o) _x1
- | LAnt _x0 -> o#string _x0 ];
- method meta_bool : meta_bool -> 'self_type =
- fun [ BTrue -> o | BFalse -> o | BAnt _x0 -> o#string _x0 ];
- method match_case : match_case -> 'self_type =
- fun
- [ McNil _x0 -> o#_Loc_t _x0
- | McOr _x0 _x1 _x2 ->
- ((o#_Loc_t _x0)#match_case _x1)#match_case _x2
- | McArr _x0 _x1 _x2 _x3 ->
- (((o#_Loc_t _x0)#patt _x1)#expr _x2)#expr _x3
- | McAnt _x0 _x1 -> (o#_Loc_t _x0)#string _x1 ];
- method ident : ident -> 'self_type =
- fun
- [ IdAcc _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ident _x1)#ident _x2
- | IdApp _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ident _x1)#ident _x2
- | IdLid _x0 _x1 -> (o#_Loc_t _x0)#string _x1
- | IdUid _x0 _x1 -> (o#_Loc_t _x0)#string _x1
- | IdAnt _x0 _x1 -> (o#_Loc_t _x0)#string _x1 ];
- method expr : expr -> 'self_type =
- fun
- [ ExNil _x0 -> o#_Loc_t _x0
- | ExId _x0 _x1 -> (o#_Loc_t _x0)#ident _x1
- | ExAcc _x0 _x1 _x2 -> ((o#_Loc_t _x0)#expr _x1)#expr _x2
- | ExAnt _x0 _x1 -> (o#_Loc_t _x0)#string _x1
- | ExApp _x0 _x1 _x2 -> ((o#_Loc_t _x0)#expr _x1)#expr _x2
- | ExAre _x0 _x1 _x2 -> ((o#_Loc_t _x0)#expr _x1)#expr _x2
- | ExArr _x0 _x1 -> (o#_Loc_t _x0)#expr _x1
- | ExSem _x0 _x1 _x2 -> ((o#_Loc_t _x0)#expr _x1)#expr _x2
- | ExAsf _x0 -> o#_Loc_t _x0
- | ExAsr _x0 _x1 -> (o#_Loc_t _x0)#expr _x1
- | ExAss _x0 _x1 _x2 -> ((o#_Loc_t _x0)#expr _x1)#expr _x2
- | ExChr _x0 _x1 -> (o#_Loc_t _x0)#string _x1
- | ExCoe _x0 _x1 _x2 _x3 ->
- (((o#_Loc_t _x0)#expr _x1)#ctyp _x2)#ctyp _x3
- | ExFlo _x0 _x1 -> (o#_Loc_t _x0)#string _x1
- | ExFor _x0 _x1 _x2 _x3 _x4 _x5 ->
- (((((o#_Loc_t _x0)#string _x1)#expr _x2)#expr _x3)#meta_bool
- _x4)#
- expr _x5
- | ExFun _x0 _x1 -> (o#_Loc_t _x0)#match_case _x1
- | ExIfe _x0 _x1 _x2 _x3 ->
- (((o#_Loc_t _x0)#expr _x1)#expr _x2)#expr _x3
- | ExInt _x0 _x1 -> (o#_Loc_t _x0)#string _x1
- | ExInt32 _x0 _x1 -> (o#_Loc_t _x0)#string _x1
- | ExInt64 _x0 _x1 -> (o#_Loc_t _x0)#string _x1
- | ExNativeInt _x0 _x1 -> (o#_Loc_t _x0)#string _x1
- | ExLab _x0 _x1 _x2 -> ((o#_Loc_t _x0)#string _x1)#expr _x2
- | ExLaz _x0 _x1 -> (o#_Loc_t _x0)#expr _x1
- | ExLet _x0 _x1 _x2 _x3 ->
- (((o#_Loc_t _x0)#meta_bool _x1)#binding _x2)#expr _x3
- | ExLmd _x0 _x1 _x2 _x3 ->
- (((o#_Loc_t _x0)#string _x1)#module_expr _x2)#expr _x3
- | ExMat _x0 _x1 _x2 -> ((o#_Loc_t _x0)#expr _x1)#match_case _x2
- | ExNew _x0 _x1 -> (o#_Loc_t _x0)#ident _x1
- | ExObj _x0 _x1 _x2 -> ((o#_Loc_t _x0)#patt _x1)#class_str_item _x2
- | ExOlb _x0 _x1 _x2 -> ((o#_Loc_t _x0)#string _x1)#expr _x2
- | ExOvr _x0 _x1 -> (o#_Loc_t _x0)#binding _x1
- | ExRec _x0 _x1 _x2 -> ((o#_Loc_t _x0)#binding _x1)#expr _x2
- | ExSeq _x0 _x1 -> (o#_Loc_t _x0)#expr _x1
- | ExSnd _x0 _x1 _x2 -> ((o#_Loc_t _x0)#expr _x1)#string _x2
- | ExSte _x0 _x1 _x2 -> ((o#_Loc_t _x0)#expr _x1)#expr _x2
- | ExStr _x0 _x1 -> (o#_Loc_t _x0)#string _x1
- | ExTry _x0 _x1 _x2 -> ((o#_Loc_t _x0)#expr _x1)#match_case _x2
- | ExTup _x0 _x1 -> (o#_Loc_t _x0)#expr _x1
- | ExCom _x0 _x1 _x2 -> ((o#_Loc_t _x0)#expr _x1)#expr _x2
- | ExTyc _x0 _x1 _x2 -> ((o#_Loc_t _x0)#expr _x1)#ctyp _x2
- | ExVrn _x0 _x1 -> (o#_Loc_t _x0)#string _x1
- | ExWhi _x0 _x1 _x2 -> ((o#_Loc_t _x0)#expr _x1)#expr _x2 ];
- method ctyp : ctyp -> 'self_type =
- fun
- [ TyNil _x0 -> o#_Loc_t _x0
- | TyAli _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
- | TyAny _x0 -> o#_Loc_t _x0
- | TyApp _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
- | TyArr _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
- | TyCls _x0 _x1 -> (o#_Loc_t _x0)#ident _x1
- | TyLab _x0 _x1 _x2 -> ((o#_Loc_t _x0)#string _x1)#ctyp _x2
- | TyId _x0 _x1 -> (o#_Loc_t _x0)#ident _x1
- | TyMan _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
- | TyDcl _x0 _x1 _x2 _x3 _x4 ->
- ((((o#_Loc_t _x0)#string _x1)#list (fun o -> o#ctyp) _x2)#ctyp
- _x3)#
- list (fun o (_x0, _x1) -> (o#ctyp _x0)#ctyp _x1) _x4
- | TyObj _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ctyp _x1)#meta_bool _x2
- | TyOlb _x0 _x1 _x2 -> ((o#_Loc_t _x0)#string _x1)#ctyp _x2
- | TyPol _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
- | TyQuo _x0 _x1 -> (o#_Loc_t _x0)#string _x1
- | TyQuP _x0 _x1 -> (o#_Loc_t _x0)#string _x1
- | TyQuM _x0 _x1 -> (o#_Loc_t _x0)#string _x1
- | TyVrn _x0 _x1 -> (o#_Loc_t _x0)#string _x1
- | TyRec _x0 _x1 -> (o#_Loc_t _x0)#ctyp _x1
- | TyCol _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
- | TySem _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
- | TyCom _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
- | TySum _x0 _x1 -> (o#_Loc_t _x0)#ctyp _x1
- | TyOf _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
- | TyAnd _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
- | TyOr _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
- | TyPrv _x0 _x1 -> (o#_Loc_t _x0)#ctyp _x1
- | TyMut _x0 _x1 -> (o#_Loc_t _x0)#ctyp _x1
- | TyTup _x0 _x1 -> (o#_Loc_t _x0)#ctyp _x1
- | TySta _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
- | TyVrnEq _x0 _x1 -> (o#_Loc_t _x0)#ctyp _x1
- | TyVrnSup _x0 _x1 -> (o#_Loc_t _x0)#ctyp _x1
- | TyVrnInf _x0 _x1 -> (o#_Loc_t _x0)#ctyp _x1
- | TyVrnInfSup _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
- | TyAmp _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
- | TyOfAmp _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
- | TyAnt _x0 _x1 -> (o#_Loc_t _x0)#string _x1 ];
- method class_type : class_type -> 'self_type =
- fun
- [ CtNil _x0 -> o#_Loc_t _x0
- | CtCon _x0 _x1 _x2 _x3 ->
- (((o#_Loc_t _x0)#meta_bool _x1)#ident _x2)#ctyp _x3
- | CtFun _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ctyp _x1)#class_type _x2
- | CtSig _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ctyp _x1)#class_sig_item _x2
- | CtAnd _x0 _x1 _x2 ->
- ((o#_Loc_t _x0)#class_type _x1)#class_type _x2
- | CtCol _x0 _x1 _x2 ->
- ((o#_Loc_t _x0)#class_type _x1)#class_type _x2
- | CtEq _x0 _x1 _x2 ->
- ((o#_Loc_t _x0)#class_type _x1)#class_type _x2
- | CtAnt _x0 _x1 -> (o#_Loc_t _x0)#string _x1 ];
- method class_str_item : class_str_item -> 'self_type =
- fun
- [ CrNil _x0 -> o#_Loc_t _x0
- | CrSem _x0 _x1 _x2 ->
- ((o#_Loc_t _x0)#class_str_item _x1)#class_str_item _x2
- | CrCtr _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
- | CrInh _x0 _x1 _x2 -> ((o#_Loc_t _x0)#class_expr _x1)#string _x2
- | CrIni _x0 _x1 -> (o#_Loc_t _x0)#expr _x1
- | CrMth _x0 _x1 _x2 _x3 _x4 ->
- ((((o#_Loc_t _x0)#string _x1)#meta_bool _x2)#expr _x3)#ctyp _x4
- | CrVal _x0 _x1 _x2 _x3 ->
- (((o#_Loc_t _x0)#string _x1)#meta_bool _x2)#expr _x3
- | CrVir _x0 _x1 _x2 _x3 ->
- (((o#_Loc_t _x0)#string _x1)#meta_bool _x2)#ctyp _x3
- | CrVvr _x0 _x1 _x2 _x3 ->
- (((o#_Loc_t _x0)#string _x1)#meta_bool _x2)#ctyp _x3
- | CrAnt _x0 _x1 -> (o#_Loc_t _x0)#string _x1 ];
- method class_sig_item : class_sig_item -> 'self_type =
- fun
- [ CgNil _x0 -> o#_Loc_t _x0
- | CgCtr _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
- | CgSem _x0 _x1 _x2 ->
- ((o#_Loc_t _x0)#class_sig_item _x1)#class_sig_item _x2
- | CgInh _x0 _x1 -> (o#_Loc_t _x0)#class_type _x1
- | CgMth _x0 _x1 _x2 _x3 ->
- (((o#_Loc_t _x0)#string _x1)#meta_bool _x2)#ctyp _x3
- | CgVal _x0 _x1 _x2 _x3 _x4 ->
- ((((o#_Loc_t _x0)#string _x1)#meta_bool _x2)#meta_bool _x3)#
- ctyp _x4
- | CgVir _x0 _x1 _x2 _x3 ->
- (((o#_Loc_t _x0)#string _x1)#meta_bool _x2)#ctyp _x3
- | CgAnt _x0 _x1 -> (o#_Loc_t _x0)#string _x1 ];
- method class_expr : class_expr -> 'self_type =
- fun
- [ CeNil _x0 -> o#_Loc_t _x0
- | CeApp _x0 _x1 _x2 -> ((o#_Loc_t _x0)#class_expr _x1)#expr _x2
- | CeCon _x0 _x1 _x2 _x3 ->
- (((o#_Loc_t _x0)#meta_bool _x1)#ident _x2)#ctyp _x3
- | CeFun _x0 _x1 _x2 -> ((o#_Loc_t _x0)#patt _x1)#class_expr _x2
- | CeLet _x0 _x1 _x2 _x3 ->
- (((o#_Loc_t _x0)#meta_bool _x1)#binding _x2)#class_expr _x3
- | CeStr _x0 _x1 _x2 -> ((o#_Loc_t _x0)#patt _x1)#class_str_item _x2
- | CeTyc _x0 _x1 _x2 ->
- ((o#_Loc_t _x0)#class_expr _x1)#class_type _x2
- | CeAnd _x0 _x1 _x2 ->
- ((o#_Loc_t _x0)#class_expr _x1)#class_expr _x2
- | CeEq _x0 _x1 _x2 ->
- ((o#_Loc_t _x0)#class_expr _x1)#class_expr _x2
- | CeAnt _x0 _x1 -> (o#_Loc_t _x0)#string _x1 ];
- method binding : binding -> 'self_type =
- fun
- [ BiNil _x0 -> o#_Loc_t _x0
- | BiAnd _x0 _x1 _x2 -> ((o#_Loc_t _x0)#binding _x1)#binding _x2
- | BiSem _x0 _x1 _x2 -> ((o#_Loc_t _x0)#binding _x1)#binding _x2
- | BiEq _x0 _x1 _x2 -> ((o#_Loc_t _x0)#patt _x1)#expr _x2
- | BiAnt _x0 _x1 -> (o#_Loc_t _x0)#string _x1 ];
- end;
- class c_expr f =
- object inherit map as super; method expr = fun x -> f (super#expr x);
- end;
- class c_patt f =
- object inherit map as super; method patt = fun x -> f (super#patt x);
- end;
- class c_ctyp f =
- object inherit map as super; method ctyp = fun x -> f (super#ctyp x);
- end;
- class c_str_item f =
- object inherit map as super;
- method str_item = fun x -> f (super#str_item x);
- end;
- class c_sig_item f =
- object inherit map as super;
- method sig_item = fun x -> f (super#sig_item x);
- end;
- class c_loc f =
- object inherit map as super;
- method _Loc_t = fun x -> f (super#_Loc_t x);
- end;
- value map_patt f ast = (new c_patt f)#patt ast;
- value map_loc f ast = (new c_loc f)#_Loc_t ast;
- value map_sig_item f ast = (new c_sig_item f)#sig_item ast;
- value map_str_item f ast = (new c_str_item f)#str_item ast;
- value map_ctyp f ast = (new c_ctyp f)#ctyp ast;
- value map_expr f ast = (new c_expr f)#expr ast;
value ghost = Loc.ghost;
value rec is_module_longident =
fun
(is_module_longident i1) && (is_module_longident i2)
| Ast.IdUid _ _ -> True
| _ -> False ];
+ value ident_of_expr =
+ let error () =
+ invalid_arg "ident_of_expr: this expression is not an identifier" in
+ let rec self =
+ fun
+ [ Ast.ExApp _loc e1 e2 -> Ast.IdApp _loc (self e1) (self e2)
+ | Ast.ExAcc _loc e1 e2 -> Ast.IdAcc _loc (self e1) (self e2)
+ | Ast.ExId _ (Ast.IdLid _ _) -> error ()
+ | Ast.ExId _ i -> if is_module_longident i then i else error ()
+ | _ -> error () ]
+ in
+ fun [ Ast.ExId _ i -> i | Ast.ExApp _ _ _ -> error () | t -> self t ];
+ value ident_of_ctyp =
+ let error () =
+ invalid_arg "ident_of_ctyp: this type is not an identifier" in
+ let rec self =
+ fun
+ [ Ast.TyApp _loc t1 t2 -> Ast.IdApp _loc (self t1) (self t2)
+ | Ast.TyId _ (Ast.IdLid _ _) -> error ()
+ | Ast.TyId _ i -> if is_module_longident i then i else error ()
+ | _ -> error () ]
+ in fun [ Ast.TyId _ i -> i | t -> self t ];
+ value ident_of_patt =
+ let error () =
+ invalid_arg "ident_of_patt: this pattern is not an identifier" in
+ let rec self =
+ fun
+ [ Ast.PaApp _loc p1 p2 -> Ast.IdApp _loc (self p1) (self p2)
+ | Ast.PaId _ (Ast.IdLid _ _) -> error ()
+ | Ast.PaId _ i -> if is_module_longident i then i else error ()
+ | _ -> error () ]
+ in fun [ Ast.PaId _ i -> i | p -> self p ];
value rec is_irrefut_patt =
fun
[ Ast.PaId _ (Ast.IdLid _ _) -> True
| Ast.PaAny _ -> True
| Ast.PaAli _ x y -> (is_irrefut_patt x) && (is_irrefut_patt y)
| Ast.PaRec _ p -> is_irrefut_patt p
- | Ast.PaEq _ (Ast.PaId _ (Ast.IdLid _ _)) p -> is_irrefut_patt p
+ | Ast.PaEq _ (Ast.IdLid _ _) p -> is_irrefut_patt p
| Ast.PaSem _ p1 p2 -> (is_irrefut_patt p1) && (is_irrefut_patt p2)
| Ast.PaCom _ p1 p2 -> (is_irrefut_patt p1) && (is_irrefut_patt p2)
| Ast.PaTyc _ p _ -> is_irrefut_patt p
(is_expr_constructor e1) && (is_expr_constructor e2)
| Ast.ExVrn _ _ -> True
| _ -> False ];
- value ident_of_expr =
- let error () =
- invalid_arg "ident_of_expr: this expression is not an identifier" in
- let rec self =
- fun
- [ Ast.ExApp _loc e1 e2 -> Ast.IdApp _loc (self e1) (self e2)
- | Ast.ExAcc _loc e1 e2 -> Ast.IdAcc _loc (self e1) (self e2)
- | Ast.ExId _ (Ast.IdLid _ _) -> error ()
- | Ast.ExId _ i -> if is_module_longident i then i else error ()
- | _ -> error () ]
- in
- fun [ Ast.ExId _ i -> i | Ast.ExApp _ _ _ -> error () | t -> self t ];
- value ident_of_ctyp =
- let error () =
- invalid_arg "ident_of_ctyp: this type is not an identifier" in
- let rec self =
- fun
- [ Ast.TyApp _loc t1 t2 -> Ast.IdApp _loc (self t1) (self t2)
- | Ast.TyId _ (Ast.IdLid _ _) -> error ()
- | Ast.TyId _ i -> if is_module_longident i then i else error ()
- | _ -> error () ]
- in fun [ Ast.TyId _ i -> i | t -> self t ];
value rec tyOr_of_list =
fun
[ [] -> Ast.TyNil ghost
| [ t ] -> t
| [ t :: ts ] ->
let _loc = loc_of_ctyp t in Ast.TySem _loc t (tySem_of_list ts) ];
+ value rec tyCom_of_list =
+ fun
+ [ [] -> Ast.TyNil ghost
+ | [ t ] -> t
+ | [ t :: ts ] ->
+ let _loc = loc_of_ctyp t in Ast.TyCom _loc t (tyCom_of_list ts) ];
+ value rec tyAmp_of_list =
+ fun
+ [ [] -> Ast.TyNil ghost
+ | [ t ] -> t
+ | [ t :: ts ] ->
+ let _loc = loc_of_ctyp t in Ast.TyAmp _loc t (tyAmp_of_list ts) ];
+ value rec tySta_of_list =
+ fun
+ [ [] -> Ast.TyNil ghost
+ | [ t ] -> t
+ | [ t :: ts ] ->
+ let _loc = loc_of_ctyp t in Ast.TySta _loc t (tySta_of_list ts) ];
value rec stSem_of_list =
fun
[ [] -> Ast.StNil ghost
| [ b ] -> b
| [ b :: bs ] ->
let _loc = loc_of_binding b in Ast.BiAnd _loc b (biAnd_of_list bs) ];
+ value rec rbSem_of_list =
+ fun
+ [ [] -> Ast.RbNil ghost
+ | [ b ] -> b
+ | [ b :: bs ] ->
+ let _loc = loc_of_rec_binding b
+ in Ast.RbSem _loc b (rbSem_of_list bs) ];
value rec wcAnd_of_list =
fun
[ [] -> Ast.WcNil ghost
let _loc = loc_of_patt x in Ast.PaSem _loc x (paSem_of_list xs) ];
value rec paCom_of_list =
fun
- [ [] -> Ast.PaNil ghost
- | [ x ] -> x
- | [ x :: xs ] ->
- let _loc = loc_of_patt x in Ast.PaCom _loc x (paCom_of_list xs) ];
- value rec biSem_of_list =
- fun
- [ [] -> Ast.BiNil ghost
+ [ [] -> Ast.PaNil ghost
| [ x ] -> x
| [ x :: xs ] ->
- let _loc = loc_of_binding x in Ast.BiSem _loc x (biSem_of_list xs) ];
+ let _loc = loc_of_patt x in Ast.PaCom _loc x (paCom_of_list xs) ];
value rec exSem_of_list =
fun
[ [] -> Ast.ExNil ghost
fun
[ Ast.BiAnd _ b1 b2 -> (pel_of_binding b1) @ (pel_of_binding b2)
| Ast.BiEq _ p e -> [ (p, e) ]
- | Ast.BiSem _ b1 b2 -> (pel_of_binding b1) @ (pel_of_binding b2)
| _ -> assert False ];
value rec list_of_binding x acc =
match x with
- [ Ast.BiAnd _ b1 b2 | Ast.BiSem _ b1 b2 ->
- list_of_binding b1 (list_of_binding b2 acc)
+ [ Ast.BiAnd _ b1 b2 -> list_of_binding b1 (list_of_binding b2 acc)
+ | t -> [ t :: acc ] ];
+ value rec list_of_rec_binding x acc =
+ match x with
+ [ Ast.RbSem _ b1 b2 ->
+ list_of_rec_binding b1 (list_of_rec_binding b2 acc)
| t -> [ t :: acc ] ];
value rec list_of_with_constr x acc =
match x with
[ Ast.MbAnd _ x y ->
list_of_module_binding x (list_of_module_binding y acc)
| x -> [ x :: acc ] ];
+ module Meta =
+ struct
+ module type META_LOC =
+ sig
+ (** The first location is where to put the returned pattern.
+ Generally it's _loc to match with <:patt< ... >> quotations.
+ The second location is the one to treat. *)
+ value meta_loc_patt : Loc.t -> Loc.t -> Ast.patt;
+ (** The first location is where to put the returned expression.
+ Generally it's _loc to match with <:expr< ... >> quotations.
+ The second location is the one to treat. *)
+ value meta_loc_expr : Loc.t -> Loc.t -> Ast.expr;
+ end;
+ module MetaLoc =
+ struct
+ value meta_loc_patt _loc location =
+ let (a, b, c, d, e, f, g, h) = Loc.to_tuple location
+ in
+ Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Loc")
+ (Ast.IdLid _loc "of_tuple")))
+ (Ast.PaTup _loc
+ (Ast.PaCom _loc
+ (Ast.PaStr _loc (Ast.safe_string_escaped a))
+ (Ast.PaCom _loc
+ (Ast.PaCom _loc
+ (Ast.PaCom _loc
+ (Ast.PaCom _loc
+ (Ast.PaCom _loc
+ (Ast.PaCom _loc
+ (Ast.PaInt _loc (string_of_int b))
+ (Ast.PaInt _loc (string_of_int c)))
+ (Ast.PaInt _loc (string_of_int d)))
+ (Ast.PaInt _loc (string_of_int e)))
+ (Ast.PaInt _loc (string_of_int f)))
+ (Ast.PaInt _loc (string_of_int g)))
+ (if h
+ then Ast.PaId _loc (Ast.IdUid _loc "True")
+ else Ast.PaId _loc (Ast.IdUid _loc "False")))));
+ value meta_loc_expr _loc location =
+ let (a, b, c, d, e, f, g, h) = Loc.to_tuple location
+ in
+ Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Loc")
+ (Ast.IdLid _loc "of_tuple")))
+ (Ast.ExTup _loc
+ (Ast.ExCom _loc
+ (Ast.ExStr _loc (Ast.safe_string_escaped a))
+ (Ast.ExCom _loc
+ (Ast.ExCom _loc
+ (Ast.ExCom _loc
+ (Ast.ExCom _loc
+ (Ast.ExCom _loc
+ (Ast.ExCom _loc
+ (Ast.ExInt _loc (string_of_int b))
+ (Ast.ExInt _loc (string_of_int c)))
+ (Ast.ExInt _loc (string_of_int d)))
+ (Ast.ExInt _loc (string_of_int e)))
+ (Ast.ExInt _loc (string_of_int f)))
+ (Ast.ExInt _loc (string_of_int g)))
+ (if h
+ then Ast.ExId _loc (Ast.IdUid _loc "True")
+ else Ast.ExId _loc (Ast.IdUid _loc "False")))));
+ end;
+ module MetaGhostLoc =
+ struct
+ value meta_loc_patt _loc _ =
+ Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Loc")
+ (Ast.IdLid _loc "ghost"));
+ value meta_loc_expr _loc _ =
+ Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Loc")
+ (Ast.IdLid _loc "ghost"));
+ end;
+ module MetaLocVar =
+ struct
+ value meta_loc_patt _loc _ =
+ Ast.PaId _loc (Ast.IdLid _loc Loc.name.val);
+ value meta_loc_expr _loc _ =
+ Ast.ExId _loc (Ast.IdLid _loc Loc.name.val);
+ end;
+ module Make (MetaLoc : META_LOC) =
+ struct
+ open MetaLoc;
+ value meta_acc_Loc_t = meta_loc_expr;
+ module Expr =
+ struct
+ value meta_string _loc s = Ast.ExStr _loc s;
+ value meta_int _loc s = Ast.ExInt _loc s;
+ value meta_float _loc s = Ast.ExFlo _loc s;
+ value meta_char _loc s = Ast.ExChr _loc s;
+ value meta_bool _loc =
+ fun
+ [ False -> Ast.ExId _loc (Ast.IdUid _loc "False")
+ | True -> Ast.ExId _loc (Ast.IdUid _loc "True") ];
+ value rec meta_list mf_a _loc =
+ fun
+ [ [] -> Ast.ExId _loc (Ast.IdUid _loc "[]")
+ | [ x :: xs ] ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc (Ast.ExId _loc (Ast.IdUid _loc "::"))
+ (mf_a _loc x))
+ (meta_list mf_a _loc xs) ];
+ value rec meta_binding _loc =
+ fun
+ [ Ast.BiAnt x0 x1 -> Ast.ExAnt x0 x1
+ | Ast.BiEq x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "BiEq")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_patt _loc x1))
+ (meta_expr _loc x2)
+ | Ast.BiAnd x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "BiAnd")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_binding _loc x1))
+ (meta_binding _loc x2)
+ | Ast.BiNil x0 ->
+ Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "BiNil")))
+ (meta_acc_Loc_t _loc x0) ]
+ and meta_class_expr _loc =
+ fun
+ [ Ast.CeAnt x0 x1 -> Ast.ExAnt x0 x1
+ | Ast.CeEq x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CeEq")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_class_expr _loc x1))
+ (meta_class_expr _loc x2)
+ | Ast.CeAnd x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CeAnd")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_class_expr _loc x1))
+ (meta_class_expr _loc x2)
+ | Ast.CeTyc x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CeTyc")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_class_expr _loc x1))
+ (meta_class_type _loc x2)
+ | Ast.CeStr x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CeStr")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_patt _loc x1))
+ (meta_class_str_item _loc x2)
+ | Ast.CeLet x0 x1 x2 x3 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CeLet")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_meta_bool _loc x1))
+ (meta_binding _loc x2))
+ (meta_class_expr _loc x3)
+ | Ast.CeFun x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CeFun")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_patt _loc x1))
+ (meta_class_expr _loc x2)
+ | Ast.CeCon x0 x1 x2 x3 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CeCon")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_meta_bool _loc x1))
+ (meta_ident _loc x2))
+ (meta_ctyp _loc x3)
+ | Ast.CeApp x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CeApp")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_class_expr _loc x1))
+ (meta_expr _loc x2)
+ | Ast.CeNil x0 ->
+ Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CeNil")))
+ (meta_acc_Loc_t _loc x0) ]
+ and meta_class_sig_item _loc =
+ fun
+ [ Ast.CgAnt x0 x1 -> Ast.ExAnt x0 x1
+ | Ast.CgVir x0 x1 x2 x3 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CgVir")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_meta_bool _loc x2))
+ (meta_ctyp _loc x3)
+ | Ast.CgVal x0 x1 x2 x3 x4 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CgVal")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_meta_bool _loc x2))
+ (meta_meta_bool _loc x3))
+ (meta_ctyp _loc x4)
+ | Ast.CgMth x0 x1 x2 x3 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CgMth")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_meta_bool _loc x2))
+ (meta_ctyp _loc x3)
+ | Ast.CgInh x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CgInh")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_class_type _loc x1)
+ | Ast.CgSem x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CgSem")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_class_sig_item _loc x1))
+ (meta_class_sig_item _loc x2)
+ | Ast.CgCtr x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CgCtr")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.CgNil x0 ->
+ Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CgNil")))
+ (meta_acc_Loc_t _loc x0) ]
+ and meta_class_str_item _loc =
+ fun
+ [ Ast.CrAnt x0 x1 -> Ast.ExAnt x0 x1
+ | Ast.CrVvr x0 x1 x2 x3 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CrVvr")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_meta_bool _loc x2))
+ (meta_ctyp _loc x3)
+ | Ast.CrVir x0 x1 x2 x3 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CrVir")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_meta_bool _loc x2))
+ (meta_ctyp _loc x3)
+ | Ast.CrVal x0 x1 x2 x3 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CrVal")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_meta_bool _loc x2))
+ (meta_expr _loc x3)
+ | Ast.CrMth x0 x1 x2 x3 x4 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CrMth")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_meta_bool _loc x2))
+ (meta_expr _loc x3))
+ (meta_ctyp _loc x4)
+ | Ast.CrIni x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CrIni")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_expr _loc x1)
+ | Ast.CrInh x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CrInh")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_class_expr _loc x1))
+ (meta_string _loc x2)
+ | Ast.CrCtr x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CrCtr")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.CrSem x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CrSem")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_class_str_item _loc x1))
+ (meta_class_str_item _loc x2)
+ | Ast.CrNil x0 ->
+ Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CrNil")))
+ (meta_acc_Loc_t _loc x0) ]
+ and meta_class_type _loc =
+ fun
+ [ Ast.CtAnt x0 x1 -> Ast.ExAnt x0 x1
+ | Ast.CtEq x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CtEq")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_class_type _loc x1))
+ (meta_class_type _loc x2)
+ | Ast.CtCol x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CtCol")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_class_type _loc x1))
+ (meta_class_type _loc x2)
+ | Ast.CtAnd x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CtAnd")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_class_type _loc x1))
+ (meta_class_type _loc x2)
+ | Ast.CtSig x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CtSig")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1))
+ (meta_class_sig_item _loc x2)
+ | Ast.CtFun x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CtFun")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1))
+ (meta_class_type _loc x2)
+ | Ast.CtCon x0 x1 x2 x3 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CtCon")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_meta_bool _loc x1))
+ (meta_ident _loc x2))
+ (meta_ctyp _loc x3)
+ | Ast.CtNil x0 ->
+ Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CtNil")))
+ (meta_acc_Loc_t _loc x0) ]
+ and meta_ctyp _loc =
+ fun
+ [ Ast.TyAnt x0 x1 -> Ast.ExAnt x0 x1
+ | Ast.TyOfAmp x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyOfAmp")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.TyAmp x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyAmp")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.TyVrnInfSup x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyVrnInfSup")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.TyVrnInf x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyVrnInf")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1)
+ | Ast.TyVrnSup x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyVrnSup")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1)
+ | Ast.TyVrnEq x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyVrnEq")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1)
+ | Ast.TySta x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TySta")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.TyTup x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyTup")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1)
+ | Ast.TyMut x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyMut")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1)
+ | Ast.TyPrv x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyPrv")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1)
+ | Ast.TyOr x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyOr")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.TyAnd x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyAnd")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.TyOf x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyOf")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.TySum x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TySum")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1)
+ | Ast.TyCom x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyCom")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.TySem x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TySem")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.TyCol x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyCol")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.TyRec x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyRec")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1)
+ | Ast.TyVrn x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyVrn")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.TyQuM x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyQuM")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.TyQuP x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyQuP")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.TyQuo x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyQuo")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.TyPol x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyPol")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.TyOlb x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyOlb")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.TyObj x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyObj")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1))
+ (meta_meta_bool _loc x2)
+ | Ast.TyDcl x0 x1 x2 x3 x4 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyDcl")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_list meta_ctyp _loc x2))
+ (meta_ctyp _loc x3))
+ (meta_list
+ (fun _loc (x1, x2) ->
+ Ast.ExTup _loc
+ (Ast.ExCom _loc (meta_ctyp _loc x1)
+ (meta_ctyp _loc x2)))
+ _loc x4)
+ | Ast.TyMan x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyMan")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.TyId x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyId")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ident _loc x1)
+ | Ast.TyLab x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyLab")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.TyCls x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyCls")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ident _loc x1)
+ | Ast.TyArr x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyArr")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.TyApp x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyApp")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.TyAny x0 ->
+ Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyAny")))
+ (meta_acc_Loc_t _loc x0)
+ | Ast.TyAli x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyAli")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.TyNil x0 ->
+ Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyNil")))
+ (meta_acc_Loc_t _loc x0) ]
+ and meta_expr _loc =
+ fun
+ [ Ast.ExWhi x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExWhi")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_expr _loc x1))
+ (meta_expr _loc x2)
+ | Ast.ExVrn x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExVrn")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.ExTyc x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExTyc")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_expr _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.ExCom x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExCom")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_expr _loc x1))
+ (meta_expr _loc x2)
+ | Ast.ExTup x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExTup")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_expr _loc x1)
+ | Ast.ExTry x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExTry")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_expr _loc x1))
+ (meta_match_case _loc x2)
+ | Ast.ExStr x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExStr")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.ExSte x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExSte")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_expr _loc x1))
+ (meta_expr _loc x2)
+ | Ast.ExSnd x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExSnd")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_expr _loc x1))
+ (meta_string _loc x2)
+ | Ast.ExSeq x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExSeq")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_expr _loc x1)
+ | Ast.ExRec x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExRec")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_rec_binding _loc x1))
+ (meta_expr _loc x2)
+ | Ast.ExOvr x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExOvr")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_rec_binding _loc x1)
+ | Ast.ExOlb x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExOlb")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_expr _loc x2)
+ | Ast.ExObj x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExObj")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_patt _loc x1))
+ (meta_class_str_item _loc x2)
+ | Ast.ExNew x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExNew")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ident _loc x1)
+ | Ast.ExMat x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExMat")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_expr _loc x1))
+ (meta_match_case _loc x2)
+ | Ast.ExLmd x0 x1 x2 x3 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExLmd")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_module_expr _loc x2))
+ (meta_expr _loc x3)
+ | Ast.ExLet x0 x1 x2 x3 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExLet")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_meta_bool _loc x1))
+ (meta_binding _loc x2))
+ (meta_expr _loc x3)
+ | Ast.ExLaz x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExLaz")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_expr _loc x1)
+ | Ast.ExLab x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExLab")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_expr _loc x2)
+ | Ast.ExNativeInt x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExNativeInt")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.ExInt64 x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExInt64")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.ExInt32 x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExInt32")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.ExInt x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExInt")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.ExIfe x0 x1 x2 x3 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExIfe")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_expr _loc x1))
+ (meta_expr _loc x2))
+ (meta_expr _loc x3)
+ | Ast.ExFun x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExFun")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_match_case _loc x1)
+ | Ast.ExFor x0 x1 x2 x3 x4 x5 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc
+ (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExFor")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_expr _loc x2))
+ (meta_expr _loc x3))
+ (meta_meta_bool _loc x4))
+ (meta_expr _loc x5)
+ | Ast.ExFlo x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExFlo")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.ExCoe x0 x1 x2 x3 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExCoe")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_expr _loc x1))
+ (meta_ctyp _loc x2))
+ (meta_ctyp _loc x3)
+ | Ast.ExChr x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExChr")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.ExAss x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExAss")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_expr _loc x1))
+ (meta_expr _loc x2)
+ | Ast.ExAsr x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExAsr")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_expr _loc x1)
+ | Ast.ExAsf x0 ->
+ Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExAsf")))
+ (meta_acc_Loc_t _loc x0)
+ | Ast.ExSem x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExSem")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_expr _loc x1))
+ (meta_expr _loc x2)
+ | Ast.ExArr x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExArr")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_expr _loc x1)
+ | Ast.ExAre x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExAre")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_expr _loc x1))
+ (meta_expr _loc x2)
+ | Ast.ExApp x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExApp")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_expr _loc x1))
+ (meta_expr _loc x2)
+ | Ast.ExAnt x0 x1 -> Ast.ExAnt x0 x1
+ | Ast.ExAcc x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExAcc")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_expr _loc x1))
+ (meta_expr _loc x2)
+ | Ast.ExId x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExId")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ident _loc x1)
+ | Ast.ExNil x0 ->
+ Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExNil")))
+ (meta_acc_Loc_t _loc x0) ]
+ and meta_ident _loc =
+ fun
+ [ Ast.IdAnt x0 x1 -> Ast.ExAnt x0 x1
+ | Ast.IdUid x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "IdUid")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.IdLid x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "IdLid")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.IdApp x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "IdApp")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ident _loc x1))
+ (meta_ident _loc x2)
+ | Ast.IdAcc x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "IdAcc")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ident _loc x1))
+ (meta_ident _loc x2) ]
+ and meta_match_case _loc =
+ fun
+ [ Ast.McAnt x0 x1 -> Ast.ExAnt x0 x1
+ | Ast.McArr x0 x1 x2 x3 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "McArr")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_patt _loc x1))
+ (meta_expr _loc x2))
+ (meta_expr _loc x3)
+ | Ast.McOr x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "McOr")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_match_case _loc x1))
+ (meta_match_case _loc x2)
+ | Ast.McNil x0 ->
+ Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "McNil")))
+ (meta_acc_Loc_t _loc x0) ]
+ and meta_meta_bool _loc =
+ fun
+ [ Ast.BAnt x0 -> Ast.ExAnt _loc x0
+ | Ast.BFalse ->
+ Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "BFalse"))
+ | Ast.BTrue ->
+ Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "BTrue")) ]
+ and meta_meta_list mf_a _loc =
+ fun
+ [ Ast.LAnt x0 -> Ast.ExAnt _loc x0
+ | Ast.LCons x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "LCons")))
+ (mf_a _loc x0))
+ (meta_meta_list mf_a _loc x1)
+ | Ast.LNil ->
+ Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "LNil")) ]
+ and meta_meta_option mf_a _loc =
+ fun
+ [ Ast.OAnt x0 -> Ast.ExAnt _loc x0
+ | Ast.OSome x0 ->
+ Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "OSome")))
+ (mf_a _loc x0)
+ | Ast.ONone ->
+ Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ONone")) ]
+ and meta_module_binding _loc =
+ fun
+ [ Ast.MbAnt x0 x1 -> Ast.ExAnt x0 x1
+ | Ast.MbCol x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "MbCol")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_module_type _loc x2)
+ | Ast.MbColEq x0 x1 x2 x3 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "MbColEq")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_module_type _loc x2))
+ (meta_module_expr _loc x3)
+ | Ast.MbAnd x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "MbAnd")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_module_binding _loc x1))
+ (meta_module_binding _loc x2)
+ | Ast.MbNil x0 ->
+ Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "MbNil")))
+ (meta_acc_Loc_t _loc x0) ]
+ and meta_module_expr _loc =
+ fun
+ [ Ast.MeAnt x0 x1 -> Ast.ExAnt x0 x1
+ | Ast.MeTyc x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "MeTyc")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_module_expr _loc x1))
+ (meta_module_type _loc x2)
+ | Ast.MeStr x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "MeStr")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_str_item _loc x1)
+ | Ast.MeFun x0 x1 x2 x3 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "MeFun")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_module_type _loc x2))
+ (meta_module_expr _loc x3)
+ | Ast.MeApp x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "MeApp")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_module_expr _loc x1))
+ (meta_module_expr _loc x2)
+ | Ast.MeId x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "MeId")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ident _loc x1)
+ | Ast.MeNil x0 ->
+ Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "MeNil")))
+ (meta_acc_Loc_t _loc x0) ]
+ and meta_module_type _loc =
+ fun
+ [ Ast.MtAnt x0 x1 -> Ast.ExAnt x0 x1
+ | Ast.MtWit x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "MtWit")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_module_type _loc x1))
+ (meta_with_constr _loc x2)
+ | Ast.MtSig x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "MtSig")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_sig_item _loc x1)
+ | Ast.MtQuo x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "MtQuo")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.MtFun x0 x1 x2 x3 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "MtFun")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_module_type _loc x2))
+ (meta_module_type _loc x3)
+ | Ast.MtId x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "MtId")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ident _loc x1)
+ | Ast.MtNil x0 ->
+ Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "MtNil")))
+ (meta_acc_Loc_t _loc x0) ]
+ and meta_patt _loc =
+ fun
+ [ Ast.PaVrn x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaVrn")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.PaTyp x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaTyp")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ident _loc x1)
+ | Ast.PaTyc x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaTyc")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_patt _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.PaTup x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaTup")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_patt _loc x1)
+ | Ast.PaStr x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaStr")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.PaEq x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaEq")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ident _loc x1))
+ (meta_patt _loc x2)
+ | Ast.PaRec x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaRec")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_patt _loc x1)
+ | Ast.PaRng x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaRng")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_patt _loc x1))
+ (meta_patt _loc x2)
+ | Ast.PaOrp x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaOrp")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_patt _loc x1))
+ (meta_patt _loc x2)
+ | Ast.PaOlbi x0 x1 x2 x3 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaOlbi")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_patt _loc x2))
+ (meta_expr _loc x3)
+ | Ast.PaOlb x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaOlb")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_patt _loc x2)
+ | Ast.PaLab x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaLab")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_patt _loc x2)
+ | Ast.PaFlo x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaFlo")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.PaNativeInt x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaNativeInt")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.PaInt64 x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaInt64")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.PaInt32 x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaInt32")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.PaInt x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaInt")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.PaChr x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaChr")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.PaSem x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaSem")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_patt _loc x1))
+ (meta_patt _loc x2)
+ | Ast.PaCom x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaCom")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_patt _loc x1))
+ (meta_patt _loc x2)
+ | Ast.PaArr x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaArr")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_patt _loc x1)
+ | Ast.PaApp x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaApp")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_patt _loc x1))
+ (meta_patt _loc x2)
+ | Ast.PaAny x0 ->
+ Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaAny")))
+ (meta_acc_Loc_t _loc x0)
+ | Ast.PaAnt x0 x1 -> Ast.ExAnt x0 x1
+ | Ast.PaAli x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaAli")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_patt _loc x1))
+ (meta_patt _loc x2)
+ | Ast.PaId x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaId")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ident _loc x1)
+ | Ast.PaNil x0 ->
+ Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaNil")))
+ (meta_acc_Loc_t _loc x0) ]
+ and meta_rec_binding _loc =
+ fun
+ [ Ast.RbAnt x0 x1 -> Ast.ExAnt x0 x1
+ | Ast.RbEq x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "RbEq")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ident _loc x1))
+ (meta_expr _loc x2)
+ | Ast.RbSem x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "RbSem")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_rec_binding _loc x1))
+ (meta_rec_binding _loc x2)
+ | Ast.RbNil x0 ->
+ Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "RbNil")))
+ (meta_acc_Loc_t _loc x0) ]
+ and meta_sig_item _loc =
+ fun
+ [ Ast.SgAnt x0 x1 -> Ast.ExAnt x0 x1
+ | Ast.SgVal x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "SgVal")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.SgTyp x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "SgTyp")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1)
+ | Ast.SgOpn x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "SgOpn")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ident _loc x1)
+ | Ast.SgMty x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "SgMty")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_module_type _loc x2)
+ | Ast.SgRecMod x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "SgRecMod")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_module_binding _loc x1)
+ | Ast.SgMod x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "SgMod")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_module_type _loc x2)
+ | Ast.SgInc x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "SgInc")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_module_type _loc x1)
+ | Ast.SgExt x0 x1 x2 x3 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "SgExt")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_ctyp _loc x2))
+ (meta_meta_list meta_string _loc x3)
+ | Ast.SgExc x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "SgExc")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1)
+ | Ast.SgDir x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "SgDir")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_expr _loc x2)
+ | Ast.SgSem x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "SgSem")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_sig_item _loc x1))
+ (meta_sig_item _loc x2)
+ | Ast.SgClt x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "SgClt")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_class_type _loc x1)
+ | Ast.SgCls x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "SgCls")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_class_type _loc x1)
+ | Ast.SgNil x0 ->
+ Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "SgNil")))
+ (meta_acc_Loc_t _loc x0) ]
+ and meta_str_item _loc =
+ fun
+ [ Ast.StAnt x0 x1 -> Ast.ExAnt x0 x1
+ | Ast.StVal x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "StVal")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_meta_bool _loc x1))
+ (meta_binding _loc x2)
+ | Ast.StTyp x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "StTyp")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1)
+ | Ast.StOpn x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "StOpn")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ident _loc x1)
+ | Ast.StMty x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "StMty")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_module_type _loc x2)
+ | Ast.StRecMod x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "StRecMod")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_module_binding _loc x1)
+ | Ast.StMod x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "StMod")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_module_expr _loc x2)
+ | Ast.StInc x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "StInc")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_module_expr _loc x1)
+ | Ast.StExt x0 x1 x2 x3 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "StExt")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_ctyp _loc x2))
+ (meta_meta_list meta_string _loc x3)
+ | Ast.StExp x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "StExp")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_expr _loc x1)
+ | Ast.StExc x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "StExc")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1))
+ (meta_meta_option meta_ident _loc x2)
+ | Ast.StDir x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "StDir")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_expr _loc x2)
+ | Ast.StSem x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "StSem")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_str_item _loc x1))
+ (meta_str_item _loc x2)
+ | Ast.StClt x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "StClt")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_class_type _loc x1)
+ | Ast.StCls x0 x1 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "StCls")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_class_expr _loc x1)
+ | Ast.StNil x0 ->
+ Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "StNil")))
+ (meta_acc_Loc_t _loc x0) ]
+ and meta_with_constr _loc =
+ fun
+ [ Ast.WcAnt x0 x1 -> Ast.ExAnt x0 x1
+ | Ast.WcAnd x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "WcAnd")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_with_constr _loc x1))
+ (meta_with_constr _loc x2)
+ | Ast.WcMod x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "WcMod")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ident _loc x1))
+ (meta_ident _loc x2)
+ | Ast.WcTyp x0 x1 x2 ->
+ Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "WcTyp")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.WcNil x0 ->
+ Ast.ExApp _loc
+ (Ast.ExId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "WcNil")))
+ (meta_acc_Loc_t _loc x0) ];
+ end;
+ value meta_acc_Loc_t = meta_loc_patt;
+ module Patt =
+ struct
+ value meta_string _loc s = Ast.PaStr _loc s;
+ value meta_int _loc s = Ast.PaInt _loc s;
+ value meta_float _loc s = Ast.PaFlo _loc s;
+ value meta_char _loc s = Ast.PaChr _loc s;
+ value meta_bool _loc =
+ fun
+ [ False -> Ast.PaId _loc (Ast.IdUid _loc "False")
+ | True -> Ast.PaId _loc (Ast.IdUid _loc "True") ];
+ value rec meta_list mf_a _loc =
+ fun
+ [ [] -> Ast.PaId _loc (Ast.IdUid _loc "[]")
+ | [ x :: xs ] ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc (Ast.PaId _loc (Ast.IdUid _loc "::"))
+ (mf_a _loc x))
+ (meta_list mf_a _loc xs) ];
+ value rec meta_binding _loc =
+ fun
+ [ Ast.BiAnt x0 x1 -> Ast.PaAnt x0 x1
+ | Ast.BiEq x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "BiEq")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_patt _loc x1))
+ (meta_expr _loc x2)
+ | Ast.BiAnd x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "BiAnd")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_binding _loc x1))
+ (meta_binding _loc x2)
+ | Ast.BiNil x0 ->
+ Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "BiNil")))
+ (meta_acc_Loc_t _loc x0) ]
+ and meta_class_expr _loc =
+ fun
+ [ Ast.CeAnt x0 x1 -> Ast.PaAnt x0 x1
+ | Ast.CeEq x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CeEq")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_class_expr _loc x1))
+ (meta_class_expr _loc x2)
+ | Ast.CeAnd x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CeAnd")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_class_expr _loc x1))
+ (meta_class_expr _loc x2)
+ | Ast.CeTyc x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CeTyc")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_class_expr _loc x1))
+ (meta_class_type _loc x2)
+ | Ast.CeStr x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CeStr")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_patt _loc x1))
+ (meta_class_str_item _loc x2)
+ | Ast.CeLet x0 x1 x2 x3 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CeLet")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_meta_bool _loc x1))
+ (meta_binding _loc x2))
+ (meta_class_expr _loc x3)
+ | Ast.CeFun x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CeFun")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_patt _loc x1))
+ (meta_class_expr _loc x2)
+ | Ast.CeCon x0 x1 x2 x3 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CeCon")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_meta_bool _loc x1))
+ (meta_ident _loc x2))
+ (meta_ctyp _loc x3)
+ | Ast.CeApp x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CeApp")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_class_expr _loc x1))
+ (meta_expr _loc x2)
+ | Ast.CeNil x0 ->
+ Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CeNil")))
+ (meta_acc_Loc_t _loc x0) ]
+ and meta_class_sig_item _loc =
+ fun
+ [ Ast.CgAnt x0 x1 -> Ast.PaAnt x0 x1
+ | Ast.CgVir x0 x1 x2 x3 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CgVir")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_meta_bool _loc x2))
+ (meta_ctyp _loc x3)
+ | Ast.CgVal x0 x1 x2 x3 x4 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CgVal")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_meta_bool _loc x2))
+ (meta_meta_bool _loc x3))
+ (meta_ctyp _loc x4)
+ | Ast.CgMth x0 x1 x2 x3 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CgMth")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_meta_bool _loc x2))
+ (meta_ctyp _loc x3)
+ | Ast.CgInh x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CgInh")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_class_type _loc x1)
+ | Ast.CgSem x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CgSem")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_class_sig_item _loc x1))
+ (meta_class_sig_item _loc x2)
+ | Ast.CgCtr x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CgCtr")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.CgNil x0 ->
+ Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CgNil")))
+ (meta_acc_Loc_t _loc x0) ]
+ and meta_class_str_item _loc =
+ fun
+ [ Ast.CrAnt x0 x1 -> Ast.PaAnt x0 x1
+ | Ast.CrVvr x0 x1 x2 x3 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CrVvr")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_meta_bool _loc x2))
+ (meta_ctyp _loc x3)
+ | Ast.CrVir x0 x1 x2 x3 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CrVir")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_meta_bool _loc x2))
+ (meta_ctyp _loc x3)
+ | Ast.CrVal x0 x1 x2 x3 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CrVal")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_meta_bool _loc x2))
+ (meta_expr _loc x3)
+ | Ast.CrMth x0 x1 x2 x3 x4 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CrMth")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_meta_bool _loc x2))
+ (meta_expr _loc x3))
+ (meta_ctyp _loc x4)
+ | Ast.CrIni x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CrIni")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_expr _loc x1)
+ | Ast.CrInh x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CrInh")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_class_expr _loc x1))
+ (meta_string _loc x2)
+ | Ast.CrCtr x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CrCtr")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.CrSem x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CrSem")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_class_str_item _loc x1))
+ (meta_class_str_item _loc x2)
+ | Ast.CrNil x0 ->
+ Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CrNil")))
+ (meta_acc_Loc_t _loc x0) ]
+ and meta_class_type _loc =
+ fun
+ [ Ast.CtAnt x0 x1 -> Ast.PaAnt x0 x1
+ | Ast.CtEq x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CtEq")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_class_type _loc x1))
+ (meta_class_type _loc x2)
+ | Ast.CtCol x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CtCol")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_class_type _loc x1))
+ (meta_class_type _loc x2)
+ | Ast.CtAnd x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CtAnd")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_class_type _loc x1))
+ (meta_class_type _loc x2)
+ | Ast.CtSig x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CtSig")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1))
+ (meta_class_sig_item _loc x2)
+ | Ast.CtFun x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CtFun")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1))
+ (meta_class_type _loc x2)
+ | Ast.CtCon x0 x1 x2 x3 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CtCon")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_meta_bool _loc x1))
+ (meta_ident _loc x2))
+ (meta_ctyp _loc x3)
+ | Ast.CtNil x0 ->
+ Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "CtNil")))
+ (meta_acc_Loc_t _loc x0) ]
+ and meta_ctyp _loc =
+ fun
+ [ Ast.TyAnt x0 x1 -> Ast.PaAnt x0 x1
+ | Ast.TyOfAmp x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyOfAmp")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.TyAmp x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyAmp")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.TyVrnInfSup x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyVrnInfSup")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.TyVrnInf x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyVrnInf")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1)
+ | Ast.TyVrnSup x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyVrnSup")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1)
+ | Ast.TyVrnEq x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyVrnEq")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1)
+ | Ast.TySta x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TySta")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.TyTup x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyTup")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1)
+ | Ast.TyMut x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyMut")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1)
+ | Ast.TyPrv x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyPrv")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1)
+ | Ast.TyOr x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyOr")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.TyAnd x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyAnd")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.TyOf x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyOf")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.TySum x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TySum")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1)
+ | Ast.TyCom x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyCom")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.TySem x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TySem")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.TyCol x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyCol")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.TyRec x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyRec")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1)
+ | Ast.TyVrn x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyVrn")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.TyQuM x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyQuM")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.TyQuP x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyQuP")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.TyQuo x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyQuo")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.TyPol x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyPol")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.TyOlb x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyOlb")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.TyObj x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyObj")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1))
+ (meta_meta_bool _loc x2)
+ | Ast.TyDcl x0 x1 x2 x3 x4 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyDcl")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_list meta_ctyp _loc x2))
+ (meta_ctyp _loc x3))
+ (meta_list
+ (fun _loc (x1, x2) ->
+ Ast.PaTup _loc
+ (Ast.PaCom _loc (meta_ctyp _loc x1)
+ (meta_ctyp _loc x2)))
+ _loc x4)
+ | Ast.TyMan x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyMan")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.TyId x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyId")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ident _loc x1)
+ | Ast.TyLab x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyLab")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.TyCls x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyCls")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ident _loc x1)
+ | Ast.TyArr x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyArr")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.TyApp x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyApp")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.TyAny x0 ->
+ Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyAny")))
+ (meta_acc_Loc_t _loc x0)
+ | Ast.TyAli x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyAli")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.TyNil x0 ->
+ Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "TyNil")))
+ (meta_acc_Loc_t _loc x0) ]
+ and meta_expr _loc =
+ fun
+ [ Ast.ExWhi x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExWhi")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_expr _loc x1))
+ (meta_expr _loc x2)
+ | Ast.ExVrn x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExVrn")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.ExTyc x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExTyc")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_expr _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.ExCom x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExCom")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_expr _loc x1))
+ (meta_expr _loc x2)
+ | Ast.ExTup x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExTup")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_expr _loc x1)
+ | Ast.ExTry x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExTry")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_expr _loc x1))
+ (meta_match_case _loc x2)
+ | Ast.ExStr x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExStr")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.ExSte x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExSte")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_expr _loc x1))
+ (meta_expr _loc x2)
+ | Ast.ExSnd x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExSnd")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_expr _loc x1))
+ (meta_string _loc x2)
+ | Ast.ExSeq x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExSeq")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_expr _loc x1)
+ | Ast.ExRec x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExRec")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_rec_binding _loc x1))
+ (meta_expr _loc x2)
+ | Ast.ExOvr x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExOvr")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_rec_binding _loc x1)
+ | Ast.ExOlb x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExOlb")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_expr _loc x2)
+ | Ast.ExObj x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExObj")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_patt _loc x1))
+ (meta_class_str_item _loc x2)
+ | Ast.ExNew x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExNew")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ident _loc x1)
+ | Ast.ExMat x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExMat")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_expr _loc x1))
+ (meta_match_case _loc x2)
+ | Ast.ExLmd x0 x1 x2 x3 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExLmd")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_module_expr _loc x2))
+ (meta_expr _loc x3)
+ | Ast.ExLet x0 x1 x2 x3 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExLet")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_meta_bool _loc x1))
+ (meta_binding _loc x2))
+ (meta_expr _loc x3)
+ | Ast.ExLaz x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExLaz")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_expr _loc x1)
+ | Ast.ExLab x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExLab")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_expr _loc x2)
+ | Ast.ExNativeInt x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExNativeInt")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.ExInt64 x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExInt64")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.ExInt32 x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExInt32")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.ExInt x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExInt")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.ExIfe x0 x1 x2 x3 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExIfe")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_expr _loc x1))
+ (meta_expr _loc x2))
+ (meta_expr _loc x3)
+ | Ast.ExFun x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExFun")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_match_case _loc x1)
+ | Ast.ExFor x0 x1 x2 x3 x4 x5 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc
+ (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExFor")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_expr _loc x2))
+ (meta_expr _loc x3))
+ (meta_meta_bool _loc x4))
+ (meta_expr _loc x5)
+ | Ast.ExFlo x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExFlo")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.ExCoe x0 x1 x2 x3 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExCoe")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_expr _loc x1))
+ (meta_ctyp _loc x2))
+ (meta_ctyp _loc x3)
+ | Ast.ExChr x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExChr")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.ExAss x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExAss")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_expr _loc x1))
+ (meta_expr _loc x2)
+ | Ast.ExAsr x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExAsr")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_expr _loc x1)
+ | Ast.ExAsf x0 ->
+ Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExAsf")))
+ (meta_acc_Loc_t _loc x0)
+ | Ast.ExSem x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExSem")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_expr _loc x1))
+ (meta_expr _loc x2)
+ | Ast.ExArr x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExArr")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_expr _loc x1)
+ | Ast.ExAre x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExAre")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_expr _loc x1))
+ (meta_expr _loc x2)
+ | Ast.ExApp x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExApp")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_expr _loc x1))
+ (meta_expr _loc x2)
+ | Ast.ExAnt x0 x1 -> Ast.PaAnt x0 x1
+ | Ast.ExAcc x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExAcc")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_expr _loc x1))
+ (meta_expr _loc x2)
+ | Ast.ExId x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExId")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ident _loc x1)
+ | Ast.ExNil x0 ->
+ Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ExNil")))
+ (meta_acc_Loc_t _loc x0) ]
+ and meta_ident _loc =
+ fun
+ [ Ast.IdAnt x0 x1 -> Ast.PaAnt x0 x1
+ | Ast.IdUid x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "IdUid")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.IdLid x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "IdLid")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.IdApp x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "IdApp")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ident _loc x1))
+ (meta_ident _loc x2)
+ | Ast.IdAcc x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "IdAcc")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ident _loc x1))
+ (meta_ident _loc x2) ]
+ and meta_match_case _loc =
+ fun
+ [ Ast.McAnt x0 x1 -> Ast.PaAnt x0 x1
+ | Ast.McArr x0 x1 x2 x3 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "McArr")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_patt _loc x1))
+ (meta_expr _loc x2))
+ (meta_expr _loc x3)
+ | Ast.McOr x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "McOr")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_match_case _loc x1))
+ (meta_match_case _loc x2)
+ | Ast.McNil x0 ->
+ Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "McNil")))
+ (meta_acc_Loc_t _loc x0) ]
+ and meta_meta_bool _loc =
+ fun
+ [ Ast.BAnt x0 -> Ast.PaAnt _loc x0
+ | Ast.BFalse ->
+ Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "BFalse"))
+ | Ast.BTrue ->
+ Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "BTrue")) ]
+ and meta_meta_list mf_a _loc =
+ fun
+ [ Ast.LAnt x0 -> Ast.PaAnt _loc x0
+ | Ast.LCons x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "LCons")))
+ (mf_a _loc x0))
+ (meta_meta_list mf_a _loc x1)
+ | Ast.LNil ->
+ Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "LNil")) ]
+ and meta_meta_option mf_a _loc =
+ fun
+ [ Ast.OAnt x0 -> Ast.PaAnt _loc x0
+ | Ast.OSome x0 ->
+ Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "OSome")))
+ (mf_a _loc x0)
+ | Ast.ONone ->
+ Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "ONone")) ]
+ and meta_module_binding _loc =
+ fun
+ [ Ast.MbAnt x0 x1 -> Ast.PaAnt x0 x1
+ | Ast.MbCol x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "MbCol")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_module_type _loc x2)
+ | Ast.MbColEq x0 x1 x2 x3 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "MbColEq")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_module_type _loc x2))
+ (meta_module_expr _loc x3)
+ | Ast.MbAnd x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "MbAnd")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_module_binding _loc x1))
+ (meta_module_binding _loc x2)
+ | Ast.MbNil x0 ->
+ Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "MbNil")))
+ (meta_acc_Loc_t _loc x0) ]
+ and meta_module_expr _loc =
+ fun
+ [ Ast.MeAnt x0 x1 -> Ast.PaAnt x0 x1
+ | Ast.MeTyc x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "MeTyc")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_module_expr _loc x1))
+ (meta_module_type _loc x2)
+ | Ast.MeStr x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "MeStr")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_str_item _loc x1)
+ | Ast.MeFun x0 x1 x2 x3 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "MeFun")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_module_type _loc x2))
+ (meta_module_expr _loc x3)
+ | Ast.MeApp x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "MeApp")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_module_expr _loc x1))
+ (meta_module_expr _loc x2)
+ | Ast.MeId x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "MeId")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ident _loc x1)
+ | Ast.MeNil x0 ->
+ Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "MeNil")))
+ (meta_acc_Loc_t _loc x0) ]
+ and meta_module_type _loc =
+ fun
+ [ Ast.MtAnt x0 x1 -> Ast.PaAnt x0 x1
+ | Ast.MtWit x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "MtWit")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_module_type _loc x1))
+ (meta_with_constr _loc x2)
+ | Ast.MtSig x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "MtSig")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_sig_item _loc x1)
+ | Ast.MtQuo x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "MtQuo")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.MtFun x0 x1 x2 x3 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "MtFun")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_module_type _loc x2))
+ (meta_module_type _loc x3)
+ | Ast.MtId x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "MtId")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ident _loc x1)
+ | Ast.MtNil x0 ->
+ Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "MtNil")))
+ (meta_acc_Loc_t _loc x0) ]
+ and meta_patt _loc =
+ fun
+ [ Ast.PaVrn x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaVrn")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.PaTyp x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaTyp")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ident _loc x1)
+ | Ast.PaTyc x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaTyc")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_patt _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.PaTup x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaTup")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_patt _loc x1)
+ | Ast.PaStr x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaStr")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.PaEq x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaEq")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ident _loc x1))
+ (meta_patt _loc x2)
+ | Ast.PaRec x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaRec")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_patt _loc x1)
+ | Ast.PaRng x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaRng")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_patt _loc x1))
+ (meta_patt _loc x2)
+ | Ast.PaOrp x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaOrp")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_patt _loc x1))
+ (meta_patt _loc x2)
+ | Ast.PaOlbi x0 x1 x2 x3 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaOlbi")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_patt _loc x2))
+ (meta_expr _loc x3)
+ | Ast.PaOlb x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaOlb")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_patt _loc x2)
+ | Ast.PaLab x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaLab")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_patt _loc x2)
+ | Ast.PaFlo x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaFlo")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.PaNativeInt x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaNativeInt")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.PaInt64 x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaInt64")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.PaInt32 x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaInt32")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.PaInt x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaInt")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.PaChr x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaChr")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1)
+ | Ast.PaSem x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaSem")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_patt _loc x1))
+ (meta_patt _loc x2)
+ | Ast.PaCom x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaCom")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_patt _loc x1))
+ (meta_patt _loc x2)
+ | Ast.PaArr x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaArr")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_patt _loc x1)
+ | Ast.PaApp x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaApp")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_patt _loc x1))
+ (meta_patt _loc x2)
+ | Ast.PaAny x0 ->
+ Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaAny")))
+ (meta_acc_Loc_t _loc x0)
+ | Ast.PaAnt x0 x1 -> Ast.PaAnt x0 x1
+ | Ast.PaAli x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaAli")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_patt _loc x1))
+ (meta_patt _loc x2)
+ | Ast.PaId x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaId")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ident _loc x1)
+ | Ast.PaNil x0 ->
+ Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "PaNil")))
+ (meta_acc_Loc_t _loc x0) ]
+ and meta_rec_binding _loc =
+ fun
+ [ Ast.RbAnt x0 x1 -> Ast.PaAnt x0 x1
+ | Ast.RbEq x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "RbEq")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ident _loc x1))
+ (meta_expr _loc x2)
+ | Ast.RbSem x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "RbSem")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_rec_binding _loc x1))
+ (meta_rec_binding _loc x2)
+ | Ast.RbNil x0 ->
+ Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "RbNil")))
+ (meta_acc_Loc_t _loc x0) ]
+ and meta_sig_item _loc =
+ fun
+ [ Ast.SgAnt x0 x1 -> Ast.PaAnt x0 x1
+ | Ast.SgVal x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "SgVal")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.SgTyp x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "SgTyp")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1)
+ | Ast.SgOpn x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "SgOpn")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ident _loc x1)
+ | Ast.SgMty x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "SgMty")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_module_type _loc x2)
+ | Ast.SgRecMod x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "SgRecMod")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_module_binding _loc x1)
+ | Ast.SgMod x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "SgMod")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_module_type _loc x2)
+ | Ast.SgInc x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "SgInc")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_module_type _loc x1)
+ | Ast.SgExt x0 x1 x2 x3 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "SgExt")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_ctyp _loc x2))
+ (meta_meta_list meta_string _loc x3)
+ | Ast.SgExc x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "SgExc")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1)
+ | Ast.SgDir x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "SgDir")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_expr _loc x2)
+ | Ast.SgSem x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "SgSem")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_sig_item _loc x1))
+ (meta_sig_item _loc x2)
+ | Ast.SgClt x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "SgClt")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_class_type _loc x1)
+ | Ast.SgCls x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "SgCls")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_class_type _loc x1)
+ | Ast.SgNil x0 ->
+ Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "SgNil")))
+ (meta_acc_Loc_t _loc x0) ]
+ and meta_str_item _loc =
+ fun
+ [ Ast.StAnt x0 x1 -> Ast.PaAnt x0 x1
+ | Ast.StVal x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "StVal")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_meta_bool _loc x1))
+ (meta_binding _loc x2)
+ | Ast.StTyp x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "StTyp")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1)
+ | Ast.StOpn x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "StOpn")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ident _loc x1)
+ | Ast.StMty x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "StMty")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_module_type _loc x2)
+ | Ast.StRecMod x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "StRecMod")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_module_binding _loc x1)
+ | Ast.StMod x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "StMod")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_module_expr _loc x2)
+ | Ast.StInc x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "StInc")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_module_expr _loc x1)
+ | Ast.StExt x0 x1 x2 x3 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "StExt")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_ctyp _loc x2))
+ (meta_meta_list meta_string _loc x3)
+ | Ast.StExp x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "StExp")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_expr _loc x1)
+ | Ast.StExc x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "StExc")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1))
+ (meta_meta_option meta_ident _loc x2)
+ | Ast.StDir x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "StDir")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_string _loc x1))
+ (meta_expr _loc x2)
+ | Ast.StSem x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "StSem")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_str_item _loc x1))
+ (meta_str_item _loc x2)
+ | Ast.StClt x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "StClt")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_class_type _loc x1)
+ | Ast.StCls x0 x1 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "StCls")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_class_expr _loc x1)
+ | Ast.StNil x0 ->
+ Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "StNil")))
+ (meta_acc_Loc_t _loc x0) ]
+ and meta_with_constr _loc =
+ fun
+ [ Ast.WcAnt x0 x1 -> Ast.PaAnt x0 x1
+ | Ast.WcAnd x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "WcAnd")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_with_constr _loc x1))
+ (meta_with_constr _loc x2)
+ | Ast.WcMod x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "WcMod")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ident _loc x1))
+ (meta_ident _loc x2)
+ | Ast.WcTyp x0 x1 x2 ->
+ Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "WcTyp")))
+ (meta_acc_Loc_t _loc x0))
+ (meta_ctyp _loc x1))
+ (meta_ctyp _loc x2)
+ | Ast.WcNil x0 ->
+ Ast.PaApp _loc
+ (Ast.PaId _loc
+ (Ast.IdAcc _loc (Ast.IdUid _loc "Ast")
+ (Ast.IdUid _loc "WcNil")))
+ (meta_acc_Loc_t _loc x0) ];
+ end;
+ end;
+ end;
+ class map =
+ object (o)
+ method string = fun x -> (x : string);
+ method int = fun x -> (x : int);
+ method float = fun x -> (x : float);
+ method bool = fun x -> (x : bool);
+ method list : ! 'a 'b. ('a -> 'b) -> list 'a -> list 'b = List.map;
+ method option : ! 'a 'b. ('a -> 'b) -> option 'a -> option 'b =
+ fun f -> fun [ None -> None | Some x -> Some (f x) ];
+ method array : ! 'a 'b. ('a -> 'b) -> array 'a -> array 'b = Array.
+ map;
+ method ref : ! 'a 'b. ('a -> 'b) -> ref 'a -> ref 'b =
+ fun f { val = x } -> { val = f x; };
+ method _Loc_t : Loc.t -> Loc.t = fun x -> x;
+ method with_constr : with_constr -> with_constr =
+ fun
+ [ WcNil _x0 -> WcNil (o#_Loc_t _x0)
+ | WcTyp _x0 _x1 _x2 ->
+ WcTyp (o#_Loc_t _x0) (o#ctyp _x1) (o#ctyp _x2)
+ | WcMod _x0 _x1 _x2 ->
+ WcMod (o#_Loc_t _x0) (o#ident _x1) (o#ident _x2)
+ | WcAnd _x0 _x1 _x2 ->
+ WcAnd (o#_Loc_t _x0) (o#with_constr _x1) (o#with_constr _x2)
+ | WcAnt _x0 _x1 -> WcAnt (o#_Loc_t _x0) (o#string _x1) ];
+ method str_item : str_item -> str_item =
+ fun
+ [ StNil _x0 -> StNil (o#_Loc_t _x0)
+ | StCls _x0 _x1 -> StCls (o#_Loc_t _x0) (o#class_expr _x1)
+ | StClt _x0 _x1 -> StClt (o#_Loc_t _x0) (o#class_type _x1)
+ | StSem _x0 _x1 _x2 ->
+ StSem (o#_Loc_t _x0) (o#str_item _x1) (o#str_item _x2)
+ | StDir _x0 _x1 _x2 ->
+ StDir (o#_Loc_t _x0) (o#string _x1) (o#expr _x2)
+ | StExc _x0 _x1 _x2 ->
+ StExc (o#_Loc_t _x0) (o#ctyp _x1) (o#meta_option o#ident _x2)
+ | StExp _x0 _x1 -> StExp (o#_Loc_t _x0) (o#expr _x1)
+ | StExt _x0 _x1 _x2 _x3 ->
+ StExt (o#_Loc_t _x0) (o#string _x1) (o#ctyp _x2)
+ (o#meta_list o#string _x3)
+ | StInc _x0 _x1 -> StInc (o#_Loc_t _x0) (o#module_expr _x1)
+ | StMod _x0 _x1 _x2 ->
+ StMod (o#_Loc_t _x0) (o#string _x1) (o#module_expr _x2)
+ | StRecMod _x0 _x1 ->
+ StRecMod (o#_Loc_t _x0) (o#module_binding _x1)
+ | StMty _x0 _x1 _x2 ->
+ StMty (o#_Loc_t _x0) (o#string _x1) (o#module_type _x2)
+ | StOpn _x0 _x1 -> StOpn (o#_Loc_t _x0) (o#ident _x1)
+ | StTyp _x0 _x1 -> StTyp (o#_Loc_t _x0) (o#ctyp _x1)
+ | StVal _x0 _x1 _x2 ->
+ StVal (o#_Loc_t _x0) (o#meta_bool _x1) (o#binding _x2)
+ | StAnt _x0 _x1 -> StAnt (o#_Loc_t _x0) (o#string _x1) ];
+ method sig_item : sig_item -> sig_item =
+ fun
+ [ SgNil _x0 -> SgNil (o#_Loc_t _x0)
+ | SgCls _x0 _x1 -> SgCls (o#_Loc_t _x0) (o#class_type _x1)
+ | SgClt _x0 _x1 -> SgClt (o#_Loc_t _x0) (o#class_type _x1)
+ | SgSem _x0 _x1 _x2 ->
+ SgSem (o#_Loc_t _x0) (o#sig_item _x1) (o#sig_item _x2)
+ | SgDir _x0 _x1 _x2 ->
+ SgDir (o#_Loc_t _x0) (o#string _x1) (o#expr _x2)
+ | SgExc _x0 _x1 -> SgExc (o#_Loc_t _x0) (o#ctyp _x1)
+ | SgExt _x0 _x1 _x2 _x3 ->
+ SgExt (o#_Loc_t _x0) (o#string _x1) (o#ctyp _x2)
+ (o#meta_list o#string _x3)
+ | SgInc _x0 _x1 -> SgInc (o#_Loc_t _x0) (o#module_type _x1)
+ | SgMod _x0 _x1 _x2 ->
+ SgMod (o#_Loc_t _x0) (o#string _x1) (o#module_type _x2)
+ | SgRecMod _x0 _x1 ->
+ SgRecMod (o#_Loc_t _x0) (o#module_binding _x1)
+ | SgMty _x0 _x1 _x2 ->
+ SgMty (o#_Loc_t _x0) (o#string _x1) (o#module_type _x2)
+ | SgOpn _x0 _x1 -> SgOpn (o#_Loc_t _x0) (o#ident _x1)
+ | SgTyp _x0 _x1 -> SgTyp (o#_Loc_t _x0) (o#ctyp _x1)
+ | SgVal _x0 _x1 _x2 ->
+ SgVal (o#_Loc_t _x0) (o#string _x1) (o#ctyp _x2)
+ | SgAnt _x0 _x1 -> SgAnt (o#_Loc_t _x0) (o#string _x1) ];
+ method rec_binding : rec_binding -> rec_binding =
+ fun
+ [ RbNil _x0 -> RbNil (o#_Loc_t _x0)
+ | RbSem _x0 _x1 _x2 ->
+ RbSem (o#_Loc_t _x0) (o#rec_binding _x1) (o#rec_binding _x2)
+ | RbEq _x0 _x1 _x2 ->
+ RbEq (o#_Loc_t _x0) (o#ident _x1) (o#expr _x2)
+ | RbAnt _x0 _x1 -> RbAnt (o#_Loc_t _x0) (o#string _x1) ];
+ method patt : patt -> patt =
+ fun
+ [ PaNil _x0 -> PaNil (o#_Loc_t _x0)
+ | PaId _x0 _x1 -> PaId (o#_Loc_t _x0) (o#ident _x1)
+ | PaAli _x0 _x1 _x2 ->
+ PaAli (o#_Loc_t _x0) (o#patt _x1) (o#patt _x2)
+ | PaAnt _x0 _x1 -> PaAnt (o#_Loc_t _x0) (o#string _x1)
+ | PaAny _x0 -> PaAny (o#_Loc_t _x0)
+ | PaApp _x0 _x1 _x2 ->
+ PaApp (o#_Loc_t _x0) (o#patt _x1) (o#patt _x2)
+ | PaArr _x0 _x1 -> PaArr (o#_Loc_t _x0) (o#patt _x1)
+ | PaCom _x0 _x1 _x2 ->
+ PaCom (o#_Loc_t _x0) (o#patt _x1) (o#patt _x2)
+ | PaSem _x0 _x1 _x2 ->
+ PaSem (o#_Loc_t _x0) (o#patt _x1) (o#patt _x2)
+ | PaChr _x0 _x1 -> PaChr (o#_Loc_t _x0) (o#string _x1)
+ | PaInt _x0 _x1 -> PaInt (o#_Loc_t _x0) (o#string _x1)
+ | PaInt32 _x0 _x1 -> PaInt32 (o#_Loc_t _x0) (o#string _x1)
+ | PaInt64 _x0 _x1 -> PaInt64 (o#_Loc_t _x0) (o#string _x1)
+ | PaNativeInt _x0 _x1 -> PaNativeInt (o#_Loc_t _x0) (o#string _x1)
+ | PaFlo _x0 _x1 -> PaFlo (o#_Loc_t _x0) (o#string _x1)
+ | PaLab _x0 _x1 _x2 ->
+ PaLab (o#_Loc_t _x0) (o#string _x1) (o#patt _x2)
+ | PaOlb _x0 _x1 _x2 ->
+ PaOlb (o#_Loc_t _x0) (o#string _x1) (o#patt _x2)
+ | PaOlbi _x0 _x1 _x2 _x3 ->
+ PaOlbi (o#_Loc_t _x0) (o#string _x1) (o#patt _x2) (o#expr _x3)
+ | PaOrp _x0 _x1 _x2 ->
+ PaOrp (o#_Loc_t _x0) (o#patt _x1) (o#patt _x2)
+ | PaRng _x0 _x1 _x2 ->
+ PaRng (o#_Loc_t _x0) (o#patt _x1) (o#patt _x2)
+ | PaRec _x0 _x1 -> PaRec (o#_Loc_t _x0) (o#patt _x1)
+ | PaEq _x0 _x1 _x2 ->
+ PaEq (o#_Loc_t _x0) (o#ident _x1) (o#patt _x2)
+ | PaStr _x0 _x1 -> PaStr (o#_Loc_t _x0) (o#string _x1)
+ | PaTup _x0 _x1 -> PaTup (o#_Loc_t _x0) (o#patt _x1)
+ | PaTyc _x0 _x1 _x2 ->
+ PaTyc (o#_Loc_t _x0) (o#patt _x1) (o#ctyp _x2)
+ | PaTyp _x0 _x1 -> PaTyp (o#_Loc_t _x0) (o#ident _x1)
+ | PaVrn _x0 _x1 -> PaVrn (o#_Loc_t _x0) (o#string _x1) ];
+ method module_type : module_type -> module_type =
+ fun
+ [ MtNil _x0 -> MtNil (o#_Loc_t _x0)
+ | MtId _x0 _x1 -> MtId (o#_Loc_t _x0) (o#ident _x1)
+ | MtFun _x0 _x1 _x2 _x3 ->
+ MtFun (o#_Loc_t _x0) (o#string _x1) (o#module_type _x2)
+ (o#module_type _x3)
+ | MtQuo _x0 _x1 -> MtQuo (o#_Loc_t _x0) (o#string _x1)
+ | MtSig _x0 _x1 -> MtSig (o#_Loc_t _x0) (o#sig_item _x1)
+ | MtWit _x0 _x1 _x2 ->
+ MtWit (o#_Loc_t _x0) (o#module_type _x1) (o#with_constr _x2)
+ | MtAnt _x0 _x1 -> MtAnt (o#_Loc_t _x0) (o#string _x1) ];
+ method module_expr : module_expr -> module_expr =
+ fun
+ [ MeNil _x0 -> MeNil (o#_Loc_t _x0)
+ | MeId _x0 _x1 -> MeId (o#_Loc_t _x0) (o#ident _x1)
+ | MeApp _x0 _x1 _x2 ->
+ MeApp (o#_Loc_t _x0) (o#module_expr _x1) (o#module_expr _x2)
+ | MeFun _x0 _x1 _x2 _x3 ->
+ MeFun (o#_Loc_t _x0) (o#string _x1) (o#module_type _x2)
+ (o#module_expr _x3)
+ | MeStr _x0 _x1 -> MeStr (o#_Loc_t _x0) (o#str_item _x1)
+ | MeTyc _x0 _x1 _x2 ->
+ MeTyc (o#_Loc_t _x0) (o#module_expr _x1) (o#module_type _x2)
+ | MeAnt _x0 _x1 -> MeAnt (o#_Loc_t _x0) (o#string _x1) ];
+ method module_binding : module_binding -> module_binding =
+ fun
+ [ MbNil _x0 -> MbNil (o#_Loc_t _x0)
+ | MbAnd _x0 _x1 _x2 ->
+ MbAnd (o#_Loc_t _x0) (o#module_binding _x1)
+ (o#module_binding _x2)
+ | MbColEq _x0 _x1 _x2 _x3 ->
+ MbColEq (o#_Loc_t _x0) (o#string _x1) (o#module_type _x2)
+ (o#module_expr _x3)
+ | MbCol _x0 _x1 _x2 ->
+ MbCol (o#_Loc_t _x0) (o#string _x1) (o#module_type _x2)
+ | MbAnt _x0 _x1 -> MbAnt (o#_Loc_t _x0) (o#string _x1) ];
+ method meta_option :
+ ! 'a 'b. ('a -> 'b) -> meta_option 'a -> meta_option 'b =
+ fun _f_a ->
+ fun
+ [ ONone -> ONone
+ | OSome _x0 -> OSome (_f_a _x0)
+ | OAnt _x0 -> OAnt (o#string _x0) ];
+ method meta_list :
+ ! 'a 'b. ('a -> 'b) -> meta_list 'a -> meta_list 'b =
+ fun _f_a ->
+ fun
+ [ LNil -> LNil
+ | LCons _x0 _x1 -> LCons (_f_a _x0) (o#meta_list _f_a _x1)
+ | LAnt _x0 -> LAnt (o#string _x0) ];
+ method meta_bool : meta_bool -> meta_bool =
+ fun
+ [ BTrue -> BTrue
+ | BFalse -> BFalse
+ | BAnt _x0 -> BAnt (o#string _x0) ];
+ method match_case : match_case -> match_case =
+ fun
+ [ McNil _x0 -> McNil (o#_Loc_t _x0)
+ | McOr _x0 _x1 _x2 ->
+ McOr (o#_Loc_t _x0) (o#match_case _x1) (o#match_case _x2)
+ | McArr _x0 _x1 _x2 _x3 ->
+ McArr (o#_Loc_t _x0) (o#patt _x1) (o#expr _x2) (o#expr _x3)
+ | McAnt _x0 _x1 -> McAnt (o#_Loc_t _x0) (o#string _x1) ];
+ method ident : ident -> ident =
+ fun
+ [ IdAcc _x0 _x1 _x2 ->
+ IdAcc (o#_Loc_t _x0) (o#ident _x1) (o#ident _x2)
+ | IdApp _x0 _x1 _x2 ->
+ IdApp (o#_Loc_t _x0) (o#ident _x1) (o#ident _x2)
+ | IdLid _x0 _x1 -> IdLid (o#_Loc_t _x0) (o#string _x1)
+ | IdUid _x0 _x1 -> IdUid (o#_Loc_t _x0) (o#string _x1)
+ | IdAnt _x0 _x1 -> IdAnt (o#_Loc_t _x0) (o#string _x1) ];
+ method expr : expr -> expr =
+ fun
+ [ ExNil _x0 -> ExNil (o#_Loc_t _x0)
+ | ExId _x0 _x1 -> ExId (o#_Loc_t _x0) (o#ident _x1)
+ | ExAcc _x0 _x1 _x2 ->
+ ExAcc (o#_Loc_t _x0) (o#expr _x1) (o#expr _x2)
+ | ExAnt _x0 _x1 -> ExAnt (o#_Loc_t _x0) (o#string _x1)
+ | ExApp _x0 _x1 _x2 ->
+ ExApp (o#_Loc_t _x0) (o#expr _x1) (o#expr _x2)
+ | ExAre _x0 _x1 _x2 ->
+ ExAre (o#_Loc_t _x0) (o#expr _x1) (o#expr _x2)
+ | ExArr _x0 _x1 -> ExArr (o#_Loc_t _x0) (o#expr _x1)
+ | ExSem _x0 _x1 _x2 ->
+ ExSem (o#_Loc_t _x0) (o#expr _x1) (o#expr _x2)
+ | ExAsf _x0 -> ExAsf (o#_Loc_t _x0)
+ | ExAsr _x0 _x1 -> ExAsr (o#_Loc_t _x0) (o#expr _x1)
+ | ExAss _x0 _x1 _x2 ->
+ ExAss (o#_Loc_t _x0) (o#expr _x1) (o#expr _x2)
+ | ExChr _x0 _x1 -> ExChr (o#_Loc_t _x0) (o#string _x1)
+ | ExCoe _x0 _x1 _x2 _x3 ->
+ ExCoe (o#_Loc_t _x0) (o#expr _x1) (o#ctyp _x2) (o#ctyp _x3)
+ | ExFlo _x0 _x1 -> ExFlo (o#_Loc_t _x0) (o#string _x1)
+ | ExFor _x0 _x1 _x2 _x3 _x4 _x5 ->
+ ExFor (o#_Loc_t _x0) (o#string _x1) (o#expr _x2) (o#expr _x3)
+ (o#meta_bool _x4) (o#expr _x5)
+ | ExFun _x0 _x1 -> ExFun (o#_Loc_t _x0) (o#match_case _x1)
+ | ExIfe _x0 _x1 _x2 _x3 ->
+ ExIfe (o#_Loc_t _x0) (o#expr _x1) (o#expr _x2) (o#expr _x3)
+ | ExInt _x0 _x1 -> ExInt (o#_Loc_t _x0) (o#string _x1)
+ | ExInt32 _x0 _x1 -> ExInt32 (o#_Loc_t _x0) (o#string _x1)
+ | ExInt64 _x0 _x1 -> ExInt64 (o#_Loc_t _x0) (o#string _x1)
+ | ExNativeInt _x0 _x1 -> ExNativeInt (o#_Loc_t _x0) (o#string _x1)
+ | ExLab _x0 _x1 _x2 ->
+ ExLab (o#_Loc_t _x0) (o#string _x1) (o#expr _x2)
+ | ExLaz _x0 _x1 -> ExLaz (o#_Loc_t _x0) (o#expr _x1)
+ | ExLet _x0 _x1 _x2 _x3 ->
+ ExLet (o#_Loc_t _x0) (o#meta_bool _x1) (o#binding _x2)
+ (o#expr _x3)
+ | ExLmd _x0 _x1 _x2 _x3 ->
+ ExLmd (o#_Loc_t _x0) (o#string _x1) (o#module_expr _x2)
+ (o#expr _x3)
+ | ExMat _x0 _x1 _x2 ->
+ ExMat (o#_Loc_t _x0) (o#expr _x1) (o#match_case _x2)
+ | ExNew _x0 _x1 -> ExNew (o#_Loc_t _x0) (o#ident _x1)
+ | ExObj _x0 _x1 _x2 ->
+ ExObj (o#_Loc_t _x0) (o#patt _x1) (o#class_str_item _x2)
+ | ExOlb _x0 _x1 _x2 ->
+ ExOlb (o#_Loc_t _x0) (o#string _x1) (o#expr _x2)
+ | ExOvr _x0 _x1 -> ExOvr (o#_Loc_t _x0) (o#rec_binding _x1)
+ | ExRec _x0 _x1 _x2 ->
+ ExRec (o#_Loc_t _x0) (o#rec_binding _x1) (o#expr _x2)
+ | ExSeq _x0 _x1 -> ExSeq (o#_Loc_t _x0) (o#expr _x1)
+ | ExSnd _x0 _x1 _x2 ->
+ ExSnd (o#_Loc_t _x0) (o#expr _x1) (o#string _x2)
+ | ExSte _x0 _x1 _x2 ->
+ ExSte (o#_Loc_t _x0) (o#expr _x1) (o#expr _x2)
+ | ExStr _x0 _x1 -> ExStr (o#_Loc_t _x0) (o#string _x1)
+ | ExTry _x0 _x1 _x2 ->
+ ExTry (o#_Loc_t _x0) (o#expr _x1) (o#match_case _x2)
+ | ExTup _x0 _x1 -> ExTup (o#_Loc_t _x0) (o#expr _x1)
+ | ExCom _x0 _x1 _x2 ->
+ ExCom (o#_Loc_t _x0) (o#expr _x1) (o#expr _x2)
+ | ExTyc _x0 _x1 _x2 ->
+ ExTyc (o#_Loc_t _x0) (o#expr _x1) (o#ctyp _x2)
+ | ExVrn _x0 _x1 -> ExVrn (o#_Loc_t _x0) (o#string _x1)
+ | ExWhi _x0 _x1 _x2 ->
+ ExWhi (o#_Loc_t _x0) (o#expr _x1) (o#expr _x2) ];
+ method ctyp : ctyp -> ctyp =
+ fun
+ [ TyNil _x0 -> TyNil (o#_Loc_t _x0)
+ | TyAli _x0 _x1 _x2 ->
+ TyAli (o#_Loc_t _x0) (o#ctyp _x1) (o#ctyp _x2)
+ | TyAny _x0 -> TyAny (o#_Loc_t _x0)
+ | TyApp _x0 _x1 _x2 ->
+ TyApp (o#_Loc_t _x0) (o#ctyp _x1) (o#ctyp _x2)
+ | TyArr _x0 _x1 _x2 ->
+ TyArr (o#_Loc_t _x0) (o#ctyp _x1) (o#ctyp _x2)
+ | TyCls _x0 _x1 -> TyCls (o#_Loc_t _x0) (o#ident _x1)
+ | TyLab _x0 _x1 _x2 ->
+ TyLab (o#_Loc_t _x0) (o#string _x1) (o#ctyp _x2)
+ | TyId _x0 _x1 -> TyId (o#_Loc_t _x0) (o#ident _x1)
+ | TyMan _x0 _x1 _x2 ->
+ TyMan (o#_Loc_t _x0) (o#ctyp _x1) (o#ctyp _x2)
+ | TyDcl _x0 _x1 _x2 _x3 _x4 ->
+ TyDcl (o#_Loc_t _x0) (o#string _x1) (o#list o#ctyp _x2)
+ (o#ctyp _x3)
+ (o#list (fun (_x0, _x1) -> ((o#ctyp _x0), (o#ctyp _x1))) _x4)
+ | TyObj _x0 _x1 _x2 ->
+ TyObj (o#_Loc_t _x0) (o#ctyp _x1) (o#meta_bool _x2)
+ | TyOlb _x0 _x1 _x2 ->
+ TyOlb (o#_Loc_t _x0) (o#string _x1) (o#ctyp _x2)
+ | TyPol _x0 _x1 _x2 ->
+ TyPol (o#_Loc_t _x0) (o#ctyp _x1) (o#ctyp _x2)
+ | TyQuo _x0 _x1 -> TyQuo (o#_Loc_t _x0) (o#string _x1)
+ | TyQuP _x0 _x1 -> TyQuP (o#_Loc_t _x0) (o#string _x1)
+ | TyQuM _x0 _x1 -> TyQuM (o#_Loc_t _x0) (o#string _x1)
+ | TyVrn _x0 _x1 -> TyVrn (o#_Loc_t _x0) (o#string _x1)
+ | TyRec _x0 _x1 -> TyRec (o#_Loc_t _x0) (o#ctyp _x1)
+ | TyCol _x0 _x1 _x2 ->
+ TyCol (o#_Loc_t _x0) (o#ctyp _x1) (o#ctyp _x2)
+ | TySem _x0 _x1 _x2 ->
+ TySem (o#_Loc_t _x0) (o#ctyp _x1) (o#ctyp _x2)
+ | TyCom _x0 _x1 _x2 ->
+ TyCom (o#_Loc_t _x0) (o#ctyp _x1) (o#ctyp _x2)
+ | TySum _x0 _x1 -> TySum (o#_Loc_t _x0) (o#ctyp _x1)
+ | TyOf _x0 _x1 _x2 -> TyOf (o#_Loc_t _x0) (o#ctyp _x1) (o#ctyp _x2)
+ | TyAnd _x0 _x1 _x2 ->
+ TyAnd (o#_Loc_t _x0) (o#ctyp _x1) (o#ctyp _x2)
+ | TyOr _x0 _x1 _x2 -> TyOr (o#_Loc_t _x0) (o#ctyp _x1) (o#ctyp _x2)
+ | TyPrv _x0 _x1 -> TyPrv (o#_Loc_t _x0) (o#ctyp _x1)
+ | TyMut _x0 _x1 -> TyMut (o#_Loc_t _x0) (o#ctyp _x1)
+ | TyTup _x0 _x1 -> TyTup (o#_Loc_t _x0) (o#ctyp _x1)
+ | TySta _x0 _x1 _x2 ->
+ TySta (o#_Loc_t _x0) (o#ctyp _x1) (o#ctyp _x2)
+ | TyVrnEq _x0 _x1 -> TyVrnEq (o#_Loc_t _x0) (o#ctyp _x1)
+ | TyVrnSup _x0 _x1 -> TyVrnSup (o#_Loc_t _x0) (o#ctyp _x1)
+ | TyVrnInf _x0 _x1 -> TyVrnInf (o#_Loc_t _x0) (o#ctyp _x1)
+ | TyVrnInfSup _x0 _x1 _x2 ->
+ TyVrnInfSup (o#_Loc_t _x0) (o#ctyp _x1) (o#ctyp _x2)
+ | TyAmp _x0 _x1 _x2 ->
+ TyAmp (o#_Loc_t _x0) (o#ctyp _x1) (o#ctyp _x2)
+ | TyOfAmp _x0 _x1 _x2 ->
+ TyOfAmp (o#_Loc_t _x0) (o#ctyp _x1) (o#ctyp _x2)
+ | TyAnt _x0 _x1 -> TyAnt (o#_Loc_t _x0) (o#string _x1) ];
+ method class_type : class_type -> class_type =
+ fun
+ [ CtNil _x0 -> CtNil (o#_Loc_t _x0)
+ | CtCon _x0 _x1 _x2 _x3 ->
+ CtCon (o#_Loc_t _x0) (o#meta_bool _x1) (o#ident _x2)
+ (o#ctyp _x3)
+ | CtFun _x0 _x1 _x2 ->
+ CtFun (o#_Loc_t _x0) (o#ctyp _x1) (o#class_type _x2)
+ | CtSig _x0 _x1 _x2 ->
+ CtSig (o#_Loc_t _x0) (o#ctyp _x1) (o#class_sig_item _x2)
+ | CtAnd _x0 _x1 _x2 ->
+ CtAnd (o#_Loc_t _x0) (o#class_type _x1) (o#class_type _x2)
+ | CtCol _x0 _x1 _x2 ->
+ CtCol (o#_Loc_t _x0) (o#class_type _x1) (o#class_type _x2)
+ | CtEq _x0 _x1 _x2 ->
+ CtEq (o#_Loc_t _x0) (o#class_type _x1) (o#class_type _x2)
+ | CtAnt _x0 _x1 -> CtAnt (o#_Loc_t _x0) (o#string _x1) ];
+ method class_str_item : class_str_item -> class_str_item =
+ fun
+ [ CrNil _x0 -> CrNil (o#_Loc_t _x0)
+ | CrSem _x0 _x1 _x2 ->
+ CrSem (o#_Loc_t _x0) (o#class_str_item _x1)
+ (o#class_str_item _x2)
+ | CrCtr _x0 _x1 _x2 ->
+ CrCtr (o#_Loc_t _x0) (o#ctyp _x1) (o#ctyp _x2)
+ | CrInh _x0 _x1 _x2 ->
+ CrInh (o#_Loc_t _x0) (o#class_expr _x1) (o#string _x2)
+ | CrIni _x0 _x1 -> CrIni (o#_Loc_t _x0) (o#expr _x1)
+ | CrMth _x0 _x1 _x2 _x3 _x4 ->
+ CrMth (o#_Loc_t _x0) (o#string _x1) (o#meta_bool _x2)
+ (o#expr _x3) (o#ctyp _x4)
+ | CrVal _x0 _x1 _x2 _x3 ->
+ CrVal (o#_Loc_t _x0) (o#string _x1) (o#meta_bool _x2)
+ (o#expr _x3)
+ | CrVir _x0 _x1 _x2 _x3 ->
+ CrVir (o#_Loc_t _x0) (o#string _x1) (o#meta_bool _x2)
+ (o#ctyp _x3)
+ | CrVvr _x0 _x1 _x2 _x3 ->
+ CrVvr (o#_Loc_t _x0) (o#string _x1) (o#meta_bool _x2)
+ (o#ctyp _x3)
+ | CrAnt _x0 _x1 -> CrAnt (o#_Loc_t _x0) (o#string _x1) ];
+ method class_sig_item : class_sig_item -> class_sig_item =
+ fun
+ [ CgNil _x0 -> CgNil (o#_Loc_t _x0)
+ | CgCtr _x0 _x1 _x2 ->
+ CgCtr (o#_Loc_t _x0) (o#ctyp _x1) (o#ctyp _x2)
+ | CgSem _x0 _x1 _x2 ->
+ CgSem (o#_Loc_t _x0) (o#class_sig_item _x1)
+ (o#class_sig_item _x2)
+ | CgInh _x0 _x1 -> CgInh (o#_Loc_t _x0) (o#class_type _x1)
+ | CgMth _x0 _x1 _x2 _x3 ->
+ CgMth (o#_Loc_t _x0) (o#string _x1) (o#meta_bool _x2)
+ (o#ctyp _x3)
+ | CgVal _x0 _x1 _x2 _x3 _x4 ->
+ CgVal (o#_Loc_t _x0) (o#string _x1) (o#meta_bool _x2)
+ (o#meta_bool _x3) (o#ctyp _x4)
+ | CgVir _x0 _x1 _x2 _x3 ->
+ CgVir (o#_Loc_t _x0) (o#string _x1) (o#meta_bool _x2)
+ (o#ctyp _x3)
+ | CgAnt _x0 _x1 -> CgAnt (o#_Loc_t _x0) (o#string _x1) ];
+ method class_expr : class_expr -> class_expr =
+ fun
+ [ CeNil _x0 -> CeNil (o#_Loc_t _x0)
+ | CeApp _x0 _x1 _x2 ->
+ CeApp (o#_Loc_t _x0) (o#class_expr _x1) (o#expr _x2)
+ | CeCon _x0 _x1 _x2 _x3 ->
+ CeCon (o#_Loc_t _x0) (o#meta_bool _x1) (o#ident _x2)
+ (o#ctyp _x3)
+ | CeFun _x0 _x1 _x2 ->
+ CeFun (o#_Loc_t _x0) (o#patt _x1) (o#class_expr _x2)
+ | CeLet _x0 _x1 _x2 _x3 ->
+ CeLet (o#_Loc_t _x0) (o#meta_bool _x1) (o#binding _x2)
+ (o#class_expr _x3)
+ | CeStr _x0 _x1 _x2 ->
+ CeStr (o#_Loc_t _x0) (o#patt _x1) (o#class_str_item _x2)
+ | CeTyc _x0 _x1 _x2 ->
+ CeTyc (o#_Loc_t _x0) (o#class_expr _x1) (o#class_type _x2)
+ | CeAnd _x0 _x1 _x2 ->
+ CeAnd (o#_Loc_t _x0) (o#class_expr _x1) (o#class_expr _x2)
+ | CeEq _x0 _x1 _x2 ->
+ CeEq (o#_Loc_t _x0) (o#class_expr _x1) (o#class_expr _x2)
+ | CeAnt _x0 _x1 -> CeAnt (o#_Loc_t _x0) (o#string _x1) ];
+ method binding : binding -> binding =
+ fun
+ [ BiNil _x0 -> BiNil (o#_Loc_t _x0)
+ | BiAnd _x0 _x1 _x2 ->
+ BiAnd (o#_Loc_t _x0) (o#binding _x1) (o#binding _x2)
+ | BiEq _x0 _x1 _x2 -> BiEq (o#_Loc_t _x0) (o#patt _x1) (o#expr _x2)
+ | BiAnt _x0 _x1 -> BiAnt (o#_Loc_t _x0) (o#string _x1) ];
+ end;
+ class fold =
+ object ((o : 'self_type))
+ method string = fun (_ : string) -> (o : 'self_type);
+ method int = fun (_ : int) -> (o : 'self_type);
+ method float = fun (_ : float) -> (o : 'self_type);
+ method bool = fun (_ : bool) -> (o : 'self_type);
+ method list :
+ ! 'a. ('self_type -> 'a -> 'self_type) -> list 'a -> 'self_type =
+ fun f -> List.fold_left f o;
+ method option :
+ ! 'a. ('self_type -> 'a -> 'self_type) -> option 'a -> 'self_type =
+ fun f -> fun [ None -> o | Some x -> f o x ];
+ method array :
+ ! 'a. ('self_type -> 'a -> 'self_type) -> array 'a -> 'self_type =
+ fun f -> Array.fold_left f o;
+ method ref :
+ ! 'a. ('self_type -> 'a -> 'self_type) -> ref 'a -> 'self_type =
+ fun f { val = x } -> f o x;
+ method _Loc_t : Loc.t -> 'self_type = fun _ -> o;
+ method with_constr : with_constr -> 'self_type =
+ fun
+ [ WcNil _x0 -> o#_Loc_t _x0
+ | WcTyp _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
+ | WcMod _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ident _x1)#ident _x2
+ | WcAnd _x0 _x1 _x2 ->
+ ((o#_Loc_t _x0)#with_constr _x1)#with_constr _x2
+ | WcAnt _x0 _x1 -> (o#_Loc_t _x0)#string _x1 ];
+ method str_item : str_item -> 'self_type =
+ fun
+ [ StNil _x0 -> o#_Loc_t _x0
+ | StCls _x0 _x1 -> (o#_Loc_t _x0)#class_expr _x1
+ | StClt _x0 _x1 -> (o#_Loc_t _x0)#class_type _x1
+ | StSem _x0 _x1 _x2 -> ((o#_Loc_t _x0)#str_item _x1)#str_item _x2
+ | StDir _x0 _x1 _x2 -> ((o#_Loc_t _x0)#string _x1)#expr _x2
+ | StExc _x0 _x1 _x2 ->
+ ((o#_Loc_t _x0)#ctyp _x1)#meta_option (fun o -> o#ident) _x2
+ | StExp _x0 _x1 -> (o#_Loc_t _x0)#expr _x1
+ | StExt _x0 _x1 _x2 _x3 ->
+ (((o#_Loc_t _x0)#string _x1)#ctyp _x2)#meta_list
+ (fun o -> o#string) _x3
+ | StInc _x0 _x1 -> (o#_Loc_t _x0)#module_expr _x1
+ | StMod _x0 _x1 _x2 -> ((o#_Loc_t _x0)#string _x1)#module_expr _x2
+ | StRecMod _x0 _x1 -> (o#_Loc_t _x0)#module_binding _x1
+ | StMty _x0 _x1 _x2 -> ((o#_Loc_t _x0)#string _x1)#module_type _x2
+ | StOpn _x0 _x1 -> (o#_Loc_t _x0)#ident _x1
+ | StTyp _x0 _x1 -> (o#_Loc_t _x0)#ctyp _x1
+ | StVal _x0 _x1 _x2 -> ((o#_Loc_t _x0)#meta_bool _x1)#binding _x2
+ | StAnt _x0 _x1 -> (o#_Loc_t _x0)#string _x1 ];
+ method sig_item : sig_item -> 'self_type =
+ fun
+ [ SgNil _x0 -> o#_Loc_t _x0
+ | SgCls _x0 _x1 -> (o#_Loc_t _x0)#class_type _x1
+ | SgClt _x0 _x1 -> (o#_Loc_t _x0)#class_type _x1
+ | SgSem _x0 _x1 _x2 -> ((o#_Loc_t _x0)#sig_item _x1)#sig_item _x2
+ | SgDir _x0 _x1 _x2 -> ((o#_Loc_t _x0)#string _x1)#expr _x2
+ | SgExc _x0 _x1 -> (o#_Loc_t _x0)#ctyp _x1
+ | SgExt _x0 _x1 _x2 _x3 ->
+ (((o#_Loc_t _x0)#string _x1)#ctyp _x2)#meta_list
+ (fun o -> o#string) _x3
+ | SgInc _x0 _x1 -> (o#_Loc_t _x0)#module_type _x1
+ | SgMod _x0 _x1 _x2 -> ((o#_Loc_t _x0)#string _x1)#module_type _x2
+ | SgRecMod _x0 _x1 -> (o#_Loc_t _x0)#module_binding _x1
+ | SgMty _x0 _x1 _x2 -> ((o#_Loc_t _x0)#string _x1)#module_type _x2
+ | SgOpn _x0 _x1 -> (o#_Loc_t _x0)#ident _x1
+ | SgTyp _x0 _x1 -> (o#_Loc_t _x0)#ctyp _x1
+ | SgVal _x0 _x1 _x2 -> ((o#_Loc_t _x0)#string _x1)#ctyp _x2
+ | SgAnt _x0 _x1 -> (o#_Loc_t _x0)#string _x1 ];
+ method rec_binding : rec_binding -> 'self_type =
+ fun
+ [ RbNil _x0 -> o#_Loc_t _x0
+ | RbSem _x0 _x1 _x2 ->
+ ((o#_Loc_t _x0)#rec_binding _x1)#rec_binding _x2
+ | RbEq _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ident _x1)#expr _x2
+ | RbAnt _x0 _x1 -> (o#_Loc_t _x0)#string _x1 ];
+ method patt : patt -> 'self_type =
+ fun
+ [ PaNil _x0 -> o#_Loc_t _x0
+ | PaId _x0 _x1 -> (o#_Loc_t _x0)#ident _x1
+ | PaAli _x0 _x1 _x2 -> ((o#_Loc_t _x0)#patt _x1)#patt _x2
+ | PaAnt _x0 _x1 -> (o#_Loc_t _x0)#string _x1
+ | PaAny _x0 -> o#_Loc_t _x0
+ | PaApp _x0 _x1 _x2 -> ((o#_Loc_t _x0)#patt _x1)#patt _x2
+ | PaArr _x0 _x1 -> (o#_Loc_t _x0)#patt _x1
+ | PaCom _x0 _x1 _x2 -> ((o#_Loc_t _x0)#patt _x1)#patt _x2
+ | PaSem _x0 _x1 _x2 -> ((o#_Loc_t _x0)#patt _x1)#patt _x2
+ | PaChr _x0 _x1 -> (o#_Loc_t _x0)#string _x1
+ | PaInt _x0 _x1 -> (o#_Loc_t _x0)#string _x1
+ | PaInt32 _x0 _x1 -> (o#_Loc_t _x0)#string _x1
+ | PaInt64 _x0 _x1 -> (o#_Loc_t _x0)#string _x1
+ | PaNativeInt _x0 _x1 -> (o#_Loc_t _x0)#string _x1
+ | PaFlo _x0 _x1 -> (o#_Loc_t _x0)#string _x1
+ | PaLab _x0 _x1 _x2 -> ((o#_Loc_t _x0)#string _x1)#patt _x2
+ | PaOlb _x0 _x1 _x2 -> ((o#_Loc_t _x0)#string _x1)#patt _x2
+ | PaOlbi _x0 _x1 _x2 _x3 ->
+ (((o#_Loc_t _x0)#string _x1)#patt _x2)#expr _x3
+ | PaOrp _x0 _x1 _x2 -> ((o#_Loc_t _x0)#patt _x1)#patt _x2
+ | PaRng _x0 _x1 _x2 -> ((o#_Loc_t _x0)#patt _x1)#patt _x2
+ | PaRec _x0 _x1 -> (o#_Loc_t _x0)#patt _x1
+ | PaEq _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ident _x1)#patt _x2
+ | PaStr _x0 _x1 -> (o#_Loc_t _x0)#string _x1
+ | PaTup _x0 _x1 -> (o#_Loc_t _x0)#patt _x1
+ | PaTyc _x0 _x1 _x2 -> ((o#_Loc_t _x0)#patt _x1)#ctyp _x2
+ | PaTyp _x0 _x1 -> (o#_Loc_t _x0)#ident _x1
+ | PaVrn _x0 _x1 -> (o#_Loc_t _x0)#string _x1 ];
+ method module_type : module_type -> 'self_type =
+ fun
+ [ MtNil _x0 -> o#_Loc_t _x0
+ | MtId _x0 _x1 -> (o#_Loc_t _x0)#ident _x1
+ | MtFun _x0 _x1 _x2 _x3 ->
+ (((o#_Loc_t _x0)#string _x1)#module_type _x2)#module_type _x3
+ | MtQuo _x0 _x1 -> (o#_Loc_t _x0)#string _x1
+ | MtSig _x0 _x1 -> (o#_Loc_t _x0)#sig_item _x1
+ | MtWit _x0 _x1 _x2 ->
+ ((o#_Loc_t _x0)#module_type _x1)#with_constr _x2
+ | MtAnt _x0 _x1 -> (o#_Loc_t _x0)#string _x1 ];
+ method module_expr : module_expr -> 'self_type =
+ fun
+ [ MeNil _x0 -> o#_Loc_t _x0
+ | MeId _x0 _x1 -> (o#_Loc_t _x0)#ident _x1
+ | MeApp _x0 _x1 _x2 ->
+ ((o#_Loc_t _x0)#module_expr _x1)#module_expr _x2
+ | MeFun _x0 _x1 _x2 _x3 ->
+ (((o#_Loc_t _x0)#string _x1)#module_type _x2)#module_expr _x3
+ | MeStr _x0 _x1 -> (o#_Loc_t _x0)#str_item _x1
+ | MeTyc _x0 _x1 _x2 ->
+ ((o#_Loc_t _x0)#module_expr _x1)#module_type _x2
+ | MeAnt _x0 _x1 -> (o#_Loc_t _x0)#string _x1 ];
+ method module_binding : module_binding -> 'self_type =
+ fun
+ [ MbNil _x0 -> o#_Loc_t _x0
+ | MbAnd _x0 _x1 _x2 ->
+ ((o#_Loc_t _x0)#module_binding _x1)#module_binding _x2
+ | MbColEq _x0 _x1 _x2 _x3 ->
+ (((o#_Loc_t _x0)#string _x1)#module_type _x2)#module_expr _x3
+ | MbCol _x0 _x1 _x2 -> ((o#_Loc_t _x0)#string _x1)#module_type _x2
+ | MbAnt _x0 _x1 -> (o#_Loc_t _x0)#string _x1 ];
+ method meta_option :
+ ! 'a.
+ ('self_type -> 'a -> 'self_type) -> meta_option 'a -> 'self_type =
+ fun _f_a ->
+ fun
+ [ ONone -> o
+ | OSome _x0 -> _f_a o _x0
+ | OAnt _x0 -> o#string _x0 ];
+ method meta_list :
+ ! 'a.
+ ('self_type -> 'a -> 'self_type) -> meta_list 'a -> 'self_type =
+ fun _f_a ->
+ fun
+ [ LNil -> o
+ | LCons _x0 _x1 -> (_f_a o _x0)#meta_list (fun o -> _f_a o) _x1
+ | LAnt _x0 -> o#string _x0 ];
+ method meta_bool : meta_bool -> 'self_type =
+ fun [ BTrue -> o | BFalse -> o | BAnt _x0 -> o#string _x0 ];
+ method match_case : match_case -> 'self_type =
+ fun
+ [ McNil _x0 -> o#_Loc_t _x0
+ | McOr _x0 _x1 _x2 ->
+ ((o#_Loc_t _x0)#match_case _x1)#match_case _x2
+ | McArr _x0 _x1 _x2 _x3 ->
+ (((o#_Loc_t _x0)#patt _x1)#expr _x2)#expr _x3
+ | McAnt _x0 _x1 -> (o#_Loc_t _x0)#string _x1 ];
+ method ident : ident -> 'self_type =
+ fun
+ [ IdAcc _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ident _x1)#ident _x2
+ | IdApp _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ident _x1)#ident _x2
+ | IdLid _x0 _x1 -> (o#_Loc_t _x0)#string _x1
+ | IdUid _x0 _x1 -> (o#_Loc_t _x0)#string _x1
+ | IdAnt _x0 _x1 -> (o#_Loc_t _x0)#string _x1 ];
+ method expr : expr -> 'self_type =
+ fun
+ [ ExNil _x0 -> o#_Loc_t _x0
+ | ExId _x0 _x1 -> (o#_Loc_t _x0)#ident _x1
+ | ExAcc _x0 _x1 _x2 -> ((o#_Loc_t _x0)#expr _x1)#expr _x2
+ | ExAnt _x0 _x1 -> (o#_Loc_t _x0)#string _x1
+ | ExApp _x0 _x1 _x2 -> ((o#_Loc_t _x0)#expr _x1)#expr _x2
+ | ExAre _x0 _x1 _x2 -> ((o#_Loc_t _x0)#expr _x1)#expr _x2
+ | ExArr _x0 _x1 -> (o#_Loc_t _x0)#expr _x1
+ | ExSem _x0 _x1 _x2 -> ((o#_Loc_t _x0)#expr _x1)#expr _x2
+ | ExAsf _x0 -> o#_Loc_t _x0
+ | ExAsr _x0 _x1 -> (o#_Loc_t _x0)#expr _x1
+ | ExAss _x0 _x1 _x2 -> ((o#_Loc_t _x0)#expr _x1)#expr _x2
+ | ExChr _x0 _x1 -> (o#_Loc_t _x0)#string _x1
+ | ExCoe _x0 _x1 _x2 _x3 ->
+ (((o#_Loc_t _x0)#expr _x1)#ctyp _x2)#ctyp _x3
+ | ExFlo _x0 _x1 -> (o#_Loc_t _x0)#string _x1
+ | ExFor _x0 _x1 _x2 _x3 _x4 _x5 ->
+ (((((o#_Loc_t _x0)#string _x1)#expr _x2)#expr _x3)#meta_bool
+ _x4)#
+ expr _x5
+ | ExFun _x0 _x1 -> (o#_Loc_t _x0)#match_case _x1
+ | ExIfe _x0 _x1 _x2 _x3 ->
+ (((o#_Loc_t _x0)#expr _x1)#expr _x2)#expr _x3
+ | ExInt _x0 _x1 -> (o#_Loc_t _x0)#string _x1
+ | ExInt32 _x0 _x1 -> (o#_Loc_t _x0)#string _x1
+ | ExInt64 _x0 _x1 -> (o#_Loc_t _x0)#string _x1
+ | ExNativeInt _x0 _x1 -> (o#_Loc_t _x0)#string _x1
+ | ExLab _x0 _x1 _x2 -> ((o#_Loc_t _x0)#string _x1)#expr _x2
+ | ExLaz _x0 _x1 -> (o#_Loc_t _x0)#expr _x1
+ | ExLet _x0 _x1 _x2 _x3 ->
+ (((o#_Loc_t _x0)#meta_bool _x1)#binding _x2)#expr _x3
+ | ExLmd _x0 _x1 _x2 _x3 ->
+ (((o#_Loc_t _x0)#string _x1)#module_expr _x2)#expr _x3
+ | ExMat _x0 _x1 _x2 -> ((o#_Loc_t _x0)#expr _x1)#match_case _x2
+ | ExNew _x0 _x1 -> (o#_Loc_t _x0)#ident _x1
+ | ExObj _x0 _x1 _x2 -> ((o#_Loc_t _x0)#patt _x1)#class_str_item _x2
+ | ExOlb _x0 _x1 _x2 -> ((o#_Loc_t _x0)#string _x1)#expr _x2
+ | ExOvr _x0 _x1 -> (o#_Loc_t _x0)#rec_binding _x1
+ | ExRec _x0 _x1 _x2 -> ((o#_Loc_t _x0)#rec_binding _x1)#expr _x2
+ | ExSeq _x0 _x1 -> (o#_Loc_t _x0)#expr _x1
+ | ExSnd _x0 _x1 _x2 -> ((o#_Loc_t _x0)#expr _x1)#string _x2
+ | ExSte _x0 _x1 _x2 -> ((o#_Loc_t _x0)#expr _x1)#expr _x2
+ | ExStr _x0 _x1 -> (o#_Loc_t _x0)#string _x1
+ | ExTry _x0 _x1 _x2 -> ((o#_Loc_t _x0)#expr _x1)#match_case _x2
+ | ExTup _x0 _x1 -> (o#_Loc_t _x0)#expr _x1
+ | ExCom _x0 _x1 _x2 -> ((o#_Loc_t _x0)#expr _x1)#expr _x2
+ | ExTyc _x0 _x1 _x2 -> ((o#_Loc_t _x0)#expr _x1)#ctyp _x2
+ | ExVrn _x0 _x1 -> (o#_Loc_t _x0)#string _x1
+ | ExWhi _x0 _x1 _x2 -> ((o#_Loc_t _x0)#expr _x1)#expr _x2 ];
+ method ctyp : ctyp -> 'self_type =
+ fun
+ [ TyNil _x0 -> o#_Loc_t _x0
+ | TyAli _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
+ | TyAny _x0 -> o#_Loc_t _x0
+ | TyApp _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
+ | TyArr _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
+ | TyCls _x0 _x1 -> (o#_Loc_t _x0)#ident _x1
+ | TyLab _x0 _x1 _x2 -> ((o#_Loc_t _x0)#string _x1)#ctyp _x2
+ | TyId _x0 _x1 -> (o#_Loc_t _x0)#ident _x1
+ | TyMan _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
+ | TyDcl _x0 _x1 _x2 _x3 _x4 ->
+ ((((o#_Loc_t _x0)#string _x1)#list (fun o -> o#ctyp) _x2)#ctyp
+ _x3)#
+ list (fun o (_x0, _x1) -> (o#ctyp _x0)#ctyp _x1) _x4
+ | TyObj _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ctyp _x1)#meta_bool _x2
+ | TyOlb _x0 _x1 _x2 -> ((o#_Loc_t _x0)#string _x1)#ctyp _x2
+ | TyPol _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
+ | TyQuo _x0 _x1 -> (o#_Loc_t _x0)#string _x1
+ | TyQuP _x0 _x1 -> (o#_Loc_t _x0)#string _x1
+ | TyQuM _x0 _x1 -> (o#_Loc_t _x0)#string _x1
+ | TyVrn _x0 _x1 -> (o#_Loc_t _x0)#string _x1
+ | TyRec _x0 _x1 -> (o#_Loc_t _x0)#ctyp _x1
+ | TyCol _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
+ | TySem _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
+ | TyCom _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
+ | TySum _x0 _x1 -> (o#_Loc_t _x0)#ctyp _x1
+ | TyOf _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
+ | TyAnd _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
+ | TyOr _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
+ | TyPrv _x0 _x1 -> (o#_Loc_t _x0)#ctyp _x1
+ | TyMut _x0 _x1 -> (o#_Loc_t _x0)#ctyp _x1
+ | TyTup _x0 _x1 -> (o#_Loc_t _x0)#ctyp _x1
+ | TySta _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
+ | TyVrnEq _x0 _x1 -> (o#_Loc_t _x0)#ctyp _x1
+ | TyVrnSup _x0 _x1 -> (o#_Loc_t _x0)#ctyp _x1
+ | TyVrnInf _x0 _x1 -> (o#_Loc_t _x0)#ctyp _x1
+ | TyVrnInfSup _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
+ | TyAmp _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
+ | TyOfAmp _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
+ | TyAnt _x0 _x1 -> (o#_Loc_t _x0)#string _x1 ];
+ method class_type : class_type -> 'self_type =
+ fun
+ [ CtNil _x0 -> o#_Loc_t _x0
+ | CtCon _x0 _x1 _x2 _x3 ->
+ (((o#_Loc_t _x0)#meta_bool _x1)#ident _x2)#ctyp _x3
+ | CtFun _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ctyp _x1)#class_type _x2
+ | CtSig _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ctyp _x1)#class_sig_item _x2
+ | CtAnd _x0 _x1 _x2 ->
+ ((o#_Loc_t _x0)#class_type _x1)#class_type _x2
+ | CtCol _x0 _x1 _x2 ->
+ ((o#_Loc_t _x0)#class_type _x1)#class_type _x2
+ | CtEq _x0 _x1 _x2 ->
+ ((o#_Loc_t _x0)#class_type _x1)#class_type _x2
+ | CtAnt _x0 _x1 -> (o#_Loc_t _x0)#string _x1 ];
+ method class_str_item : class_str_item -> 'self_type =
+ fun
+ [ CrNil _x0 -> o#_Loc_t _x0
+ | CrSem _x0 _x1 _x2 ->
+ ((o#_Loc_t _x0)#class_str_item _x1)#class_str_item _x2
+ | CrCtr _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
+ | CrInh _x0 _x1 _x2 -> ((o#_Loc_t _x0)#class_expr _x1)#string _x2
+ | CrIni _x0 _x1 -> (o#_Loc_t _x0)#expr _x1
+ | CrMth _x0 _x1 _x2 _x3 _x4 ->
+ ((((o#_Loc_t _x0)#string _x1)#meta_bool _x2)#expr _x3)#ctyp _x4
+ | CrVal _x0 _x1 _x2 _x3 ->
+ (((o#_Loc_t _x0)#string _x1)#meta_bool _x2)#expr _x3
+ | CrVir _x0 _x1 _x2 _x3 ->
+ (((o#_Loc_t _x0)#string _x1)#meta_bool _x2)#ctyp _x3
+ | CrVvr _x0 _x1 _x2 _x3 ->
+ (((o#_Loc_t _x0)#string _x1)#meta_bool _x2)#ctyp _x3
+ | CrAnt _x0 _x1 -> (o#_Loc_t _x0)#string _x1 ];
+ method class_sig_item : class_sig_item -> 'self_type =
+ fun
+ [ CgNil _x0 -> o#_Loc_t _x0
+ | CgCtr _x0 _x1 _x2 -> ((o#_Loc_t _x0)#ctyp _x1)#ctyp _x2
+ | CgSem _x0 _x1 _x2 ->
+ ((o#_Loc_t _x0)#class_sig_item _x1)#class_sig_item _x2
+ | CgInh _x0 _x1 -> (o#_Loc_t _x0)#class_type _x1
+ | CgMth _x0 _x1 _x2 _x3 ->
+ (((o#_Loc_t _x0)#string _x1)#meta_bool _x2)#ctyp _x3
+ | CgVal _x0 _x1 _x2 _x3 _x4 ->
+ ((((o#_Loc_t _x0)#string _x1)#meta_bool _x2)#meta_bool _x3)#
+ ctyp _x4
+ | CgVir _x0 _x1 _x2 _x3 ->
+ (((o#_Loc_t _x0)#string _x1)#meta_bool _x2)#ctyp _x3
+ | CgAnt _x0 _x1 -> (o#_Loc_t _x0)#string _x1 ];
+ method class_expr : class_expr -> 'self_type =
+ fun
+ [ CeNil _x0 -> o#_Loc_t _x0
+ | CeApp _x0 _x1 _x2 -> ((o#_Loc_t _x0)#class_expr _x1)#expr _x2
+ | CeCon _x0 _x1 _x2 _x3 ->
+ (((o#_Loc_t _x0)#meta_bool _x1)#ident _x2)#ctyp _x3
+ | CeFun _x0 _x1 _x2 -> ((o#_Loc_t _x0)#patt _x1)#class_expr _x2
+ | CeLet _x0 _x1 _x2 _x3 ->
+ (((o#_Loc_t _x0)#meta_bool _x1)#binding _x2)#class_expr _x3
+ | CeStr _x0 _x1 _x2 -> ((o#_Loc_t _x0)#patt _x1)#class_str_item _x2
+ | CeTyc _x0 _x1 _x2 ->
+ ((o#_Loc_t _x0)#class_expr _x1)#class_type _x2
+ | CeAnd _x0 _x1 _x2 ->
+ ((o#_Loc_t _x0)#class_expr _x1)#class_expr _x2
+ | CeEq _x0 _x1 _x2 ->
+ ((o#_Loc_t _x0)#class_expr _x1)#class_expr _x2
+ | CeAnt _x0 _x1 -> (o#_Loc_t _x0)#string _x1 ];
+ method binding : binding -> 'self_type =
+ fun
+ [ BiNil _x0 -> o#_Loc_t _x0
+ | BiAnd _x0 _x1 _x2 -> ((o#_Loc_t _x0)#binding _x1)#binding _x2
+ | BiEq _x0 _x1 _x2 -> ((o#_Loc_t _x0)#patt _x1)#expr _x2
+ | BiAnt _x0 _x1 -> (o#_Loc_t _x0)#string _x1 ];
+ end;
+ value map_expr f =
+ object inherit map as super; method expr = fun x -> f (super#expr x);
+ end;
+ value map_patt f =
+ object inherit map as super; method patt = fun x -> f (super#patt x);
+ end;
+ value map_ctyp f =
+ object inherit map as super; method ctyp = fun x -> f (super#ctyp x);
+ end;
+ value map_str_item f =
+ object
+ inherit map as super;
+ method str_item = fun x -> f (super#str_item x);
+ end;
+ value map_sig_item f =
+ object
+ inherit map as super;
+ method sig_item = fun x -> f (super#sig_item x);
+ end;
+ value map_loc f =
+ object
+ inherit map as super;
+ method _Loc_t = fun x -> f (super#_Loc_t x);
+ end;
end;