46011 lines
2.0 MiB
46011 lines
2.0 MiB
|
|
(* This generated code requires the following version of MenhirLib: *)
|
|
|
|
let () =
|
|
MenhirLib.StaticVersion.require_20181113
|
|
|
|
module MenhirBasics = struct
|
|
|
|
exception Error = Parsing.Parse_error
|
|
|
|
type token =
|
|
| WITH
|
|
| WHILE
|
|
| WHEN
|
|
| VIRTUAL
|
|
| VAL
|
|
| UNDERSCORE
|
|
| UIDENT of (
|
|
# 688 "parsing/parser.mly"
|
|
(string)
|
|
# 22 "parsing/parser.ml"
|
|
)
|
|
| TYPE
|
|
| TRY
|
|
| TRUE
|
|
| TO
|
|
| TILDE
|
|
| THEN
|
|
| STRUCT
|
|
| STRING of (
|
|
# 680 "parsing/parser.mly"
|
|
(string * string option)
|
|
# 34 "parsing/parser.ml"
|
|
)
|
|
| STAR
|
|
| SIG
|
|
| SEMISEMI
|
|
| SEMI
|
|
| RPAREN
|
|
| REC
|
|
| RBRACKET
|
|
| RBRACE
|
|
| QUOTE
|
|
| QUESTION
|
|
| PRIVATE
|
|
| PREFIXOP of (
|
|
# 666 "parsing/parser.mly"
|
|
(string)
|
|
# 50 "parsing/parser.ml"
|
|
)
|
|
| PLUSEQ
|
|
| PLUSDOT
|
|
| PLUS
|
|
| PERCENT
|
|
| OR
|
|
| OPTLABEL of (
|
|
# 659 "parsing/parser.mly"
|
|
(string)
|
|
# 60 "parsing/parser.ml"
|
|
)
|
|
| OPEN
|
|
| OF
|
|
| OBJECT
|
|
| NONREC
|
|
| NEW
|
|
| MUTABLE
|
|
| MODULE
|
|
| MINUSGREATER
|
|
| MINUSDOT
|
|
| MINUS
|
|
| METHOD
|
|
| MATCH
|
|
| LPAREN
|
|
| LIDENT of (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 78 "parsing/parser.ml"
|
|
)
|
|
| LETOP of (
|
|
# 624 "parsing/parser.mly"
|
|
(string)
|
|
# 83 "parsing/parser.ml"
|
|
)
|
|
| LET
|
|
| LESSMINUS
|
|
| LESS
|
|
| LBRACKETPERCENTPERCENT
|
|
| LBRACKETPERCENT
|
|
| LBRACKETLESS
|
|
| LBRACKETGREATER
|
|
| LBRACKETBAR
|
|
| LBRACKETATATAT
|
|
| LBRACKETATAT
|
|
| LBRACKETAT
|
|
| LBRACKET
|
|
| LBRACELESS
|
|
| LBRACE
|
|
| LAZY
|
|
| LABEL of (
|
|
# 629 "parsing/parser.mly"
|
|
(string)
|
|
# 103 "parsing/parser.ml"
|
|
)
|
|
| INT of (
|
|
# 628 "parsing/parser.mly"
|
|
(string * char option)
|
|
# 108 "parsing/parser.ml"
|
|
)
|
|
| INITIALIZER
|
|
| INHERIT
|
|
| INFIXOP4 of (
|
|
# 622 "parsing/parser.mly"
|
|
(string)
|
|
# 115 "parsing/parser.ml"
|
|
)
|
|
| INFIXOP3 of (
|
|
# 621 "parsing/parser.mly"
|
|
(string)
|
|
# 120 "parsing/parser.ml"
|
|
)
|
|
| INFIXOP2 of (
|
|
# 620 "parsing/parser.mly"
|
|
(string)
|
|
# 125 "parsing/parser.ml"
|
|
)
|
|
| INFIXOP1 of (
|
|
# 619 "parsing/parser.mly"
|
|
(string)
|
|
# 130 "parsing/parser.ml"
|
|
)
|
|
| INFIXOP0 of (
|
|
# 618 "parsing/parser.mly"
|
|
(string)
|
|
# 135 "parsing/parser.ml"
|
|
)
|
|
| INCLUDE
|
|
| IN
|
|
| IF
|
|
| HASHOP of (
|
|
# 677 "parsing/parser.mly"
|
|
(string)
|
|
# 143 "parsing/parser.ml"
|
|
)
|
|
| HASH
|
|
| GREATERRBRACKET
|
|
| GREATERRBRACE
|
|
| GREATER
|
|
| FUNCTOR
|
|
| FUNCTION
|
|
| FUN
|
|
| FOR
|
|
| FLOAT of (
|
|
# 607 "parsing/parser.mly"
|
|
(string * char option)
|
|
# 156 "parsing/parser.ml"
|
|
)
|
|
| FALSE
|
|
| EXTERNAL
|
|
| EXCEPTION
|
|
| EQUAL
|
|
| EOL
|
|
| EOF
|
|
| END
|
|
| ELSE
|
|
| DOWNTO
|
|
| DOTOP of (
|
|
# 623 "parsing/parser.mly"
|
|
(string)
|
|
# 170 "parsing/parser.ml"
|
|
)
|
|
| DOTDOT
|
|
| DOT
|
|
| DONE
|
|
| DOCSTRING of (
|
|
# 696 "parsing/parser.mly"
|
|
(Docstrings.docstring)
|
|
# 178 "parsing/parser.ml"
|
|
)
|
|
| DO
|
|
| CONSTRAINT
|
|
| COMMENT of (
|
|
# 695 "parsing/parser.mly"
|
|
(string * Location.t)
|
|
# 185 "parsing/parser.ml"
|
|
)
|
|
| COMMA
|
|
| COLONGREATER
|
|
| COLONEQUAL
|
|
| COLONCOLON
|
|
| COLON
|
|
| CLASS
|
|
| CHAR of (
|
|
# 587 "parsing/parser.mly"
|
|
(char)
|
|
# 196 "parsing/parser.ml"
|
|
)
|
|
| BEGIN
|
|
| BARRBRACKET
|
|
| BARBAR
|
|
| BAR
|
|
| BANG
|
|
| BACKQUOTE
|
|
| ASSERT
|
|
| AS
|
|
| ANDOP of (
|
|
# 625 "parsing/parser.mly"
|
|
(string)
|
|
# 209 "parsing/parser.ml"
|
|
)
|
|
| AND
|
|
| AMPERSAND
|
|
| AMPERAMPER
|
|
|
|
end
|
|
|
|
include MenhirBasics
|
|
|
|
let _eRR =
|
|
MenhirBasics.Error
|
|
|
|
# 18 "parsing/parser.mly"
|
|
|
|
|
|
open Asttypes
|
|
open Longident
|
|
open Parsetree
|
|
open Ast_helper
|
|
open Docstrings
|
|
open Docstrings.WithMenhir
|
|
|
|
let mkloc = Location.mkloc
|
|
let mknoloc = Location.mknoloc
|
|
|
|
let make_loc (startpos, endpos) = {
|
|
Location.loc_start = startpos;
|
|
Location.loc_end = endpos;
|
|
Location.loc_ghost = false;
|
|
}
|
|
|
|
let ghost_loc (startpos, endpos) = {
|
|
Location.loc_start = startpos;
|
|
Location.loc_end = endpos;
|
|
Location.loc_ghost = true;
|
|
}
|
|
|
|
let mktyp ~loc d = Typ.mk ~loc:(make_loc loc) d
|
|
let mkpat ~loc d = Pat.mk ~loc:(make_loc loc) d
|
|
let mkexp ~loc d = Exp.mk ~loc:(make_loc loc) d
|
|
let mkmty ~loc ?attrs d = Mty.mk ~loc:(make_loc loc) ?attrs d
|
|
let mksig ~loc d = Sig.mk ~loc:(make_loc loc) d
|
|
let mkmod ~loc ?attrs d = Mod.mk ~loc:(make_loc loc) ?attrs d
|
|
let mkstr ~loc d = Str.mk ~loc:(make_loc loc) d
|
|
let mkclass ~loc ?attrs d = Cl.mk ~loc:(make_loc loc) ?attrs d
|
|
let mkcty ~loc ?attrs d = Cty.mk ~loc:(make_loc loc) ?attrs d
|
|
|
|
let pstr_typext (te, ext) =
|
|
(Pstr_typext te, ext)
|
|
let pstr_primitive (vd, ext) =
|
|
(Pstr_primitive vd, ext)
|
|
let pstr_type ((nr, ext), tys) =
|
|
(Pstr_type (nr, tys), ext)
|
|
let pstr_exception (te, ext) =
|
|
(Pstr_exception te, ext)
|
|
let pstr_include (body, ext) =
|
|
(Pstr_include body, ext)
|
|
let pstr_recmodule (ext, bindings) =
|
|
(Pstr_recmodule bindings, ext)
|
|
|
|
let psig_typext (te, ext) =
|
|
(Psig_typext te, ext)
|
|
let psig_value (vd, ext) =
|
|
(Psig_value vd, ext)
|
|
let psig_type ((nr, ext), tys) =
|
|
(Psig_type (nr, tys), ext)
|
|
let psig_typesubst ((nr, ext), tys) =
|
|
assert (nr = Recursive); (* see [no_nonrec_flag] *)
|
|
(Psig_typesubst tys, ext)
|
|
let psig_exception (te, ext) =
|
|
(Psig_exception te, ext)
|
|
let psig_include (body, ext) =
|
|
(Psig_include body, ext)
|
|
|
|
let mkctf ~loc ?attrs ?docs d =
|
|
Ctf.mk ~loc:(make_loc loc) ?attrs ?docs d
|
|
let mkcf ~loc ?attrs ?docs d =
|
|
Cf.mk ~loc:(make_loc loc) ?attrs ?docs d
|
|
|
|
let mkrhs rhs loc = mkloc rhs (make_loc loc)
|
|
let ghrhs rhs loc = mkloc rhs (ghost_loc loc)
|
|
|
|
let push_loc x acc =
|
|
if x.Location.loc_ghost
|
|
then acc
|
|
else x :: acc
|
|
|
|
let reloc_pat ~loc x =
|
|
{ x with ppat_loc = make_loc loc;
|
|
ppat_loc_stack = push_loc x.ppat_loc x.ppat_loc_stack };;
|
|
let reloc_exp ~loc x =
|
|
{ x with pexp_loc = make_loc loc;
|
|
pexp_loc_stack = push_loc x.pexp_loc x.pexp_loc_stack };;
|
|
let reloc_typ ~loc x =
|
|
{ x with ptyp_loc = make_loc loc;
|
|
ptyp_loc_stack = push_loc x.ptyp_loc x.ptyp_loc_stack };;
|
|
|
|
let mkexpvar ~loc (name : string) =
|
|
mkexp ~loc (Pexp_ident(mkrhs (Lident name) loc))
|
|
|
|
let mkoperator =
|
|
mkexpvar
|
|
|
|
let mkpatvar ~loc name =
|
|
mkpat ~loc (Ppat_var (mkrhs name loc))
|
|
|
|
(*
|
|
Ghost expressions and patterns:
|
|
expressions and patterns that do not appear explicitly in the
|
|
source file they have the loc_ghost flag set to true.
|
|
Then the profiler will not try to instrument them and the
|
|
-annot option will not try to display their type.
|
|
|
|
Every grammar rule that generates an element with a location must
|
|
make at most one non-ghost element, the topmost one.
|
|
|
|
How to tell whether your location must be ghost:
|
|
A location corresponds to a range of characters in the source file.
|
|
If the location contains a piece of code that is syntactically
|
|
valid (according to the documentation), and corresponds to the
|
|
AST node, then the location must be real; in all other cases,
|
|
it must be ghost.
|
|
*)
|
|
let ghexp ~loc d = Exp.mk ~loc:(ghost_loc loc) d
|
|
let ghpat ~loc d = Pat.mk ~loc:(ghost_loc loc) d
|
|
let ghtyp ~loc d = Typ.mk ~loc:(ghost_loc loc) d
|
|
let ghloc ~loc d = { txt = d; loc = ghost_loc loc }
|
|
let ghstr ~loc d = Str.mk ~loc:(ghost_loc loc) d
|
|
let ghsig ~loc d = Sig.mk ~loc:(ghost_loc loc) d
|
|
|
|
let mkinfix arg1 op arg2 =
|
|
Pexp_apply(op, [Nolabel, arg1; Nolabel, arg2])
|
|
|
|
let neg_string f =
|
|
if String.length f > 0 && f.[0] = '-'
|
|
then String.sub f 1 (String.length f - 1)
|
|
else "-" ^ f
|
|
|
|
let mkuminus ~oploc name arg =
|
|
match name, arg.pexp_desc with
|
|
| "-", Pexp_constant(Pconst_integer (n,m)) ->
|
|
Pexp_constant(Pconst_integer(neg_string n,m))
|
|
| ("-" | "-."), Pexp_constant(Pconst_float (f, m)) ->
|
|
Pexp_constant(Pconst_float(neg_string f, m))
|
|
| _ ->
|
|
Pexp_apply(mkoperator ~loc:oploc ("~" ^ name), [Nolabel, arg])
|
|
|
|
let mkuplus ~oploc name arg =
|
|
let desc = arg.pexp_desc in
|
|
match name, desc with
|
|
| "+", Pexp_constant(Pconst_integer _)
|
|
| ("+" | "+."), Pexp_constant(Pconst_float _) -> desc
|
|
| _ ->
|
|
Pexp_apply(mkoperator ~loc:oploc ("~" ^ name), [Nolabel, arg])
|
|
|
|
(* TODO define an abstraction boundary between locations-as-pairs
|
|
and locations-as-Location.t; it should be clear when we move from
|
|
one world to the other *)
|
|
|
|
let mkexp_cons_desc consloc args =
|
|
Pexp_construct(mkrhs (Lident "::") consloc, Some args)
|
|
let mkexp_cons ~loc consloc args =
|
|
mkexp ~loc (mkexp_cons_desc consloc args)
|
|
|
|
let mkpat_cons_desc consloc args =
|
|
Ppat_construct(mkrhs (Lident "::") consloc, Some args)
|
|
let mkpat_cons ~loc consloc args =
|
|
mkpat ~loc (mkpat_cons_desc consloc args)
|
|
|
|
let ghexp_cons_desc consloc args =
|
|
Pexp_construct(ghrhs (Lident "::") consloc, Some args)
|
|
let ghpat_cons_desc consloc args =
|
|
Ppat_construct(ghrhs (Lident "::") consloc, Some args)
|
|
|
|
let rec mktailexp nilloc = let open Location in function
|
|
[] ->
|
|
let nil = ghloc ~loc:nilloc (Lident "[]") in
|
|
Pexp_construct (nil, None), nilloc
|
|
| e1 :: el ->
|
|
let exp_el, el_loc = mktailexp nilloc el in
|
|
let loc = (e1.pexp_loc.loc_start, snd el_loc) in
|
|
let arg = ghexp ~loc (Pexp_tuple [e1; ghexp ~loc:el_loc exp_el]) in
|
|
ghexp_cons_desc loc arg, loc
|
|
|
|
let rec mktailpat nilloc = let open Location in function
|
|
[] ->
|
|
let nil = ghloc ~loc:nilloc (Lident "[]") in
|
|
Ppat_construct (nil, None), nilloc
|
|
| p1 :: pl ->
|
|
let pat_pl, el_loc = mktailpat nilloc pl in
|
|
let loc = (p1.ppat_loc.loc_start, snd el_loc) in
|
|
let arg = ghpat ~loc (Ppat_tuple [p1; ghpat ~loc:el_loc pat_pl]) in
|
|
ghpat_cons_desc loc arg, loc
|
|
|
|
let mkstrexp e attrs =
|
|
{ pstr_desc = Pstr_eval (e, attrs); pstr_loc = e.pexp_loc }
|
|
|
|
let mkexp_constraint ~loc e (t1, t2) =
|
|
match t1, t2 with
|
|
| Some t, None -> ghexp ~loc (Pexp_constraint(e, t))
|
|
| _, Some t -> ghexp ~loc (Pexp_coerce(e, t1, t))
|
|
| None, None -> assert false
|
|
|
|
let mkexp_opt_constraint ~loc e = function
|
|
| None -> e
|
|
| Some constraint_ -> mkexp_constraint ~loc e constraint_
|
|
|
|
let mkpat_opt_constraint ~loc p = function
|
|
| None -> p
|
|
| Some typ -> mkpat ~loc (Ppat_constraint(p, typ))
|
|
|
|
let syntax_error () =
|
|
raise Syntaxerr.Escape_error
|
|
|
|
let unclosed opening_name opening_loc closing_name closing_loc =
|
|
raise(Syntaxerr.Error(Syntaxerr.Unclosed(make_loc opening_loc, opening_name,
|
|
make_loc closing_loc, closing_name)))
|
|
|
|
let expecting loc nonterm =
|
|
raise Syntaxerr.(Error(Expecting(make_loc loc, nonterm)))
|
|
|
|
let not_expecting loc nonterm =
|
|
raise Syntaxerr.(Error(Not_expecting(make_loc loc, nonterm)))
|
|
|
|
let dotop ~left ~right ~assign ~ext ~multi =
|
|
let assign = if assign then "<-" else "" in
|
|
let mid = if multi then ";.." else "" in
|
|
String.concat "" ["."; ext; left; mid; right; assign]
|
|
let paren = "(",")"
|
|
let brace = "{", "}"
|
|
let bracket = "[", "]"
|
|
let lident x = Lident x
|
|
let ldot x y = Ldot(x,y)
|
|
let dotop_fun ~loc dotop =
|
|
(* We could use ghexp here, but sticking to mkexp for parser.mly
|
|
compatibility. TODO improve parser.mly *)
|
|
mkexp ~loc (Pexp_ident (ghloc ~loc dotop))
|
|
|
|
let array_function ~loc str name =
|
|
ghloc ~loc (Ldot(Lident str,
|
|
(if !Clflags.unsafe then "unsafe_" ^ name else name)))
|
|
|
|
let array_get_fun ~loc =
|
|
ghexp ~loc (Pexp_ident(array_function ~loc "Array" "get"))
|
|
let string_get_fun ~loc =
|
|
ghexp ~loc (Pexp_ident(array_function ~loc "String" "get"))
|
|
|
|
let array_set_fun ~loc =
|
|
ghexp ~loc (Pexp_ident(array_function ~loc "Array" "set"))
|
|
let string_set_fun ~loc =
|
|
ghexp ~loc (Pexp_ident(array_function ~loc "String" "set"))
|
|
|
|
let multi_indices ~loc = function
|
|
| [a] -> false, a
|
|
| l -> true, mkexp ~loc (Pexp_array l)
|
|
|
|
let index_get ~loc get_fun array index =
|
|
let args = [Nolabel, array; Nolabel, index] in
|
|
mkexp ~loc (Pexp_apply(get_fun, args))
|
|
|
|
let index_set ~loc set_fun array index value =
|
|
let args = [Nolabel, array; Nolabel, index; Nolabel, value] in
|
|
mkexp ~loc (Pexp_apply(set_fun, args))
|
|
|
|
let array_get ~loc = index_get ~loc (array_get_fun ~loc)
|
|
let string_get ~loc = index_get ~loc (string_get_fun ~loc)
|
|
let dotop_get ~loc path (left,right) ext array index =
|
|
let multi, index = multi_indices ~loc index in
|
|
index_get ~loc
|
|
(dotop_fun ~loc (path @@ dotop ~left ~right ~ext ~multi ~assign:false))
|
|
array index
|
|
|
|
let array_set ~loc = index_set ~loc (array_set_fun ~loc)
|
|
let string_set ~loc = index_set ~loc (string_set_fun ~loc)
|
|
let dotop_set ~loc path (left,right) ext array index value=
|
|
let multi, index = multi_indices ~loc index in
|
|
index_set ~loc
|
|
(dotop_fun ~loc (path @@ dotop ~left ~right ~ext ~multi ~assign:true))
|
|
array index value
|
|
|
|
|
|
let bigarray_function ~loc str name =
|
|
ghloc ~loc (Ldot(Ldot(Lident "Bigarray", str), name))
|
|
|
|
let bigarray_untuplify = function
|
|
{ pexp_desc = Pexp_tuple explist; pexp_loc = _ } -> explist
|
|
| exp -> [exp]
|
|
|
|
let bigarray_get ~loc arr arg =
|
|
let mkexp, ghexp = mkexp ~loc, ghexp ~loc in
|
|
let bigarray_function = bigarray_function ~loc in
|
|
let get = if !Clflags.unsafe then "unsafe_get" else "get" in
|
|
match bigarray_untuplify arg with
|
|
[c1] ->
|
|
mkexp(Pexp_apply(ghexp(Pexp_ident(bigarray_function "Array1" get)),
|
|
[Nolabel, arr; Nolabel, c1]))
|
|
| [c1;c2] ->
|
|
mkexp(Pexp_apply(ghexp(Pexp_ident(bigarray_function "Array2" get)),
|
|
[Nolabel, arr; Nolabel, c1; Nolabel, c2]))
|
|
| [c1;c2;c3] ->
|
|
mkexp(Pexp_apply(ghexp(Pexp_ident(bigarray_function "Array3" get)),
|
|
[Nolabel, arr; Nolabel, c1; Nolabel, c2; Nolabel, c3]))
|
|
| coords ->
|
|
mkexp(Pexp_apply(ghexp(Pexp_ident(bigarray_function "Genarray" "get")),
|
|
[Nolabel, arr; Nolabel, ghexp(Pexp_array coords)]))
|
|
|
|
let bigarray_set ~loc arr arg newval =
|
|
let mkexp, ghexp = mkexp ~loc, ghexp ~loc in
|
|
let bigarray_function = bigarray_function ~loc in
|
|
let set = if !Clflags.unsafe then "unsafe_set" else "set" in
|
|
match bigarray_untuplify arg with
|
|
[c1] ->
|
|
mkexp(Pexp_apply(ghexp(Pexp_ident(bigarray_function "Array1" set)),
|
|
[Nolabel, arr; Nolabel, c1; Nolabel, newval]))
|
|
| [c1;c2] ->
|
|
mkexp(Pexp_apply(ghexp(Pexp_ident(bigarray_function "Array2" set)),
|
|
[Nolabel, arr; Nolabel, c1;
|
|
Nolabel, c2; Nolabel, newval]))
|
|
| [c1;c2;c3] ->
|
|
mkexp(Pexp_apply(ghexp(Pexp_ident(bigarray_function "Array3" set)),
|
|
[Nolabel, arr; Nolabel, c1;
|
|
Nolabel, c2; Nolabel, c3; Nolabel, newval]))
|
|
| coords ->
|
|
mkexp(Pexp_apply(ghexp(Pexp_ident(bigarray_function "Genarray" "set")),
|
|
[Nolabel, arr;
|
|
Nolabel, ghexp(Pexp_array coords);
|
|
Nolabel, newval]))
|
|
|
|
let lapply ~loc p1 p2 =
|
|
if !Clflags.applicative_functors
|
|
then Lapply(p1, p2)
|
|
else raise (Syntaxerr.Error(
|
|
Syntaxerr.Applicative_path (make_loc loc)))
|
|
|
|
let exp_of_longident ~loc lid =
|
|
mkexp ~loc (Pexp_ident {lid with txt = Lident(Longident.last lid.txt)})
|
|
|
|
(* [loc_map] could be [Location.map]. *)
|
|
let loc_map (f : 'a -> 'b) (x : 'a Location.loc) : 'b Location.loc =
|
|
{ x with txt = f x.txt }
|
|
|
|
let loc_last (id : Longident.t Location.loc) : string Location.loc =
|
|
loc_map Longident.last id
|
|
|
|
let loc_lident (id : string Location.loc) : Longident.t Location.loc =
|
|
loc_map (fun x -> Lident x) id
|
|
|
|
let exp_of_label ~loc lbl =
|
|
mkexp ~loc (Pexp_ident (loc_lident lbl))
|
|
|
|
let pat_of_label ~loc lbl =
|
|
mkpat ~loc (Ppat_var (loc_last lbl))
|
|
|
|
let mk_newtypes ~loc newtypes exp =
|
|
let mkexp = mkexp ~loc in
|
|
List.fold_right (fun newtype exp -> mkexp (Pexp_newtype (newtype, exp)))
|
|
newtypes exp
|
|
|
|
let wrap_type_annotation ~loc newtypes core_type body =
|
|
let mkexp, ghtyp = mkexp ~loc, ghtyp ~loc in
|
|
let mk_newtypes = mk_newtypes ~loc in
|
|
let exp = mkexp(Pexp_constraint(body,core_type)) in
|
|
let exp = mk_newtypes newtypes exp in
|
|
(exp, ghtyp(Ptyp_poly(newtypes, Typ.varify_constructors newtypes core_type)))
|
|
|
|
let wrap_exp_attrs ~loc body (ext, attrs) =
|
|
let ghexp = ghexp ~loc in
|
|
(* todo: keep exact location for the entire attribute *)
|
|
let body = {body with pexp_attributes = attrs @ body.pexp_attributes} in
|
|
match ext with
|
|
| None -> body
|
|
| Some id -> ghexp(Pexp_extension (id, PStr [mkstrexp body []]))
|
|
|
|
let mkexp_attrs ~loc d attrs =
|
|
wrap_exp_attrs ~loc (mkexp ~loc d) attrs
|
|
|
|
let wrap_typ_attrs ~loc typ (ext, attrs) =
|
|
(* todo: keep exact location for the entire attribute *)
|
|
let typ = {typ with ptyp_attributes = attrs @ typ.ptyp_attributes} in
|
|
match ext with
|
|
| None -> typ
|
|
| Some id -> ghtyp ~loc (Ptyp_extension (id, PTyp typ))
|
|
|
|
let wrap_pat_attrs ~loc pat (ext, attrs) =
|
|
(* todo: keep exact location for the entire attribute *)
|
|
let pat = {pat with ppat_attributes = attrs @ pat.ppat_attributes} in
|
|
match ext with
|
|
| None -> pat
|
|
| Some id -> ghpat ~loc (Ppat_extension (id, PPat (pat, None)))
|
|
|
|
let mkpat_attrs ~loc d attrs =
|
|
wrap_pat_attrs ~loc (mkpat ~loc d) attrs
|
|
|
|
let wrap_class_attrs ~loc:_ body attrs =
|
|
{body with pcl_attributes = attrs @ body.pcl_attributes}
|
|
let wrap_mod_attrs ~loc:_ attrs body =
|
|
{body with pmod_attributes = attrs @ body.pmod_attributes}
|
|
let wrap_mty_attrs ~loc:_ attrs body =
|
|
{body with pmty_attributes = attrs @ body.pmty_attributes}
|
|
|
|
let wrap_str_ext ~loc body ext =
|
|
match ext with
|
|
| None -> body
|
|
| Some id -> ghstr ~loc (Pstr_extension ((id, PStr [body]), []))
|
|
|
|
let wrap_mkstr_ext ~loc (item, ext) =
|
|
wrap_str_ext ~loc (mkstr ~loc item) ext
|
|
|
|
let wrap_sig_ext ~loc body ext =
|
|
match ext with
|
|
| None -> body
|
|
| Some id -> ghsig ~loc (Psig_extension ((id, PSig [body]), []))
|
|
|
|
let wrap_mksig_ext ~loc (item, ext) =
|
|
wrap_sig_ext ~loc (mksig ~loc item) ext
|
|
|
|
let text_str pos = Str.text (rhs_text pos)
|
|
let text_sig pos = Sig.text (rhs_text pos)
|
|
let text_cstr pos = Cf.text (rhs_text pos)
|
|
let text_csig pos = Ctf.text (rhs_text pos)
|
|
let text_def pos = [Ptop_def (Str.text (rhs_text pos))]
|
|
|
|
let extra_text startpos endpos text items =
|
|
match items with
|
|
| [] ->
|
|
let post = rhs_post_text endpos in
|
|
let post_extras = rhs_post_extra_text endpos in
|
|
text post @ text post_extras
|
|
| _ :: _ ->
|
|
let pre_extras = rhs_pre_extra_text startpos in
|
|
let post_extras = rhs_post_extra_text endpos in
|
|
text pre_extras @ items @ text post_extras
|
|
|
|
let extra_str p1 p2 items = extra_text p1 p2 Str.text items
|
|
let extra_sig p1 p2 items = extra_text p1 p2 Sig.text items
|
|
let extra_cstr p1 p2 items = extra_text p1 p2 Cf.text items
|
|
let extra_csig p1 p2 items = extra_text p1 p2 Ctf.text items
|
|
let extra_def p1 p2 items =
|
|
extra_text p1 p2 (fun txt -> [Ptop_def (Str.text txt)]) items
|
|
|
|
let extra_rhs_core_type ct ~pos =
|
|
let docs = rhs_info pos in
|
|
{ ct with ptyp_attributes = add_info_attrs docs ct.ptyp_attributes }
|
|
|
|
type let_binding =
|
|
{ lb_pattern: pattern;
|
|
lb_expression: expression;
|
|
lb_attributes: attributes;
|
|
lb_docs: docs Lazy.t;
|
|
lb_text: text Lazy.t;
|
|
lb_loc: Location.t; }
|
|
|
|
type let_bindings =
|
|
{ lbs_bindings: let_binding list;
|
|
lbs_rec: rec_flag;
|
|
lbs_extension: string Asttypes.loc option;
|
|
lbs_loc: Location.t }
|
|
|
|
let mklb first ~loc (p, e) attrs =
|
|
{
|
|
lb_pattern = p;
|
|
lb_expression = e;
|
|
lb_attributes = attrs;
|
|
lb_docs = symbol_docs_lazy loc;
|
|
lb_text = (if first then empty_text_lazy
|
|
else symbol_text_lazy (fst loc));
|
|
lb_loc = make_loc loc;
|
|
}
|
|
|
|
let mklbs ~loc ext rf lb =
|
|
{
|
|
lbs_bindings = [lb];
|
|
lbs_rec = rf;
|
|
lbs_extension = ext ;
|
|
lbs_loc = make_loc loc;
|
|
}
|
|
|
|
let addlb lbs lb =
|
|
{ lbs with lbs_bindings = lb :: lbs.lbs_bindings }
|
|
|
|
let val_of_let_bindings ~loc lbs =
|
|
let bindings =
|
|
List.map
|
|
(fun lb ->
|
|
Vb.mk ~loc:lb.lb_loc ~attrs:lb.lb_attributes
|
|
~docs:(Lazy.force lb.lb_docs)
|
|
~text:(Lazy.force lb.lb_text)
|
|
lb.lb_pattern lb.lb_expression)
|
|
lbs.lbs_bindings
|
|
in
|
|
let str = mkstr ~loc (Pstr_value(lbs.lbs_rec, List.rev bindings)) in
|
|
match lbs.lbs_extension with
|
|
| None -> str
|
|
| Some id -> ghstr ~loc (Pstr_extension((id, PStr [str]), []))
|
|
|
|
let expr_of_let_bindings ~loc lbs body =
|
|
let bindings =
|
|
List.map
|
|
(fun lb ->
|
|
Vb.mk ~loc:lb.lb_loc ~attrs:lb.lb_attributes
|
|
lb.lb_pattern lb.lb_expression)
|
|
lbs.lbs_bindings
|
|
in
|
|
mkexp_attrs ~loc (Pexp_let(lbs.lbs_rec, List.rev bindings, body))
|
|
(lbs.lbs_extension, [])
|
|
|
|
let class_of_let_bindings ~loc lbs body =
|
|
let bindings =
|
|
List.map
|
|
(fun lb ->
|
|
Vb.mk ~loc:lb.lb_loc ~attrs:lb.lb_attributes
|
|
lb.lb_pattern lb.lb_expression)
|
|
lbs.lbs_bindings
|
|
in
|
|
(* Our use of let_bindings(no_ext) guarantees the following: *)
|
|
assert (lbs.lbs_extension = None);
|
|
mkclass ~loc (Pcl_let (lbs.lbs_rec, List.rev bindings, body))
|
|
|
|
(* Alternatively, we could keep the generic module type in the Parsetree
|
|
and extract the package type during type-checking. In that case,
|
|
the assertions below should be turned into explicit checks. *)
|
|
let package_type_of_module_type pmty =
|
|
let err loc s =
|
|
raise (Syntaxerr.Error (Syntaxerr.Invalid_package_type (loc, s)))
|
|
in
|
|
let map_cstr = function
|
|
| Pwith_type (lid, ptyp) ->
|
|
let loc = ptyp.ptype_loc in
|
|
if ptyp.ptype_params <> [] then
|
|
err loc "parametrized types are not supported";
|
|
if ptyp.ptype_cstrs <> [] then
|
|
err loc "constrained types are not supported";
|
|
if ptyp.ptype_private <> Public then
|
|
err loc "private types are not supported";
|
|
|
|
(* restrictions below are checked by the 'with_constraint' rule *)
|
|
assert (ptyp.ptype_kind = Ptype_abstract);
|
|
assert (ptyp.ptype_attributes = []);
|
|
let ty =
|
|
match ptyp.ptype_manifest with
|
|
| Some ty -> ty
|
|
| None -> assert false
|
|
in
|
|
(lid, ty)
|
|
| _ ->
|
|
err pmty.pmty_loc "only 'with type t =' constraints are supported"
|
|
in
|
|
match pmty with
|
|
| {pmty_desc = Pmty_ident lid} -> (lid, [])
|
|
| {pmty_desc = Pmty_with({pmty_desc = Pmty_ident lid}, cstrs)} ->
|
|
(lid, List.map map_cstr cstrs)
|
|
| _ ->
|
|
err pmty.pmty_loc
|
|
"only module type identifier and 'with type' constraints are supported"
|
|
|
|
let mk_directive_arg ~loc k =
|
|
{ pdira_desc = k;
|
|
pdira_loc = make_loc loc;
|
|
}
|
|
|
|
let mk_directive ~loc name arg =
|
|
Ptop_dir {
|
|
pdir_name = name;
|
|
pdir_arg = arg;
|
|
pdir_loc = make_loc loc;
|
|
}
|
|
|
|
|
|
# 778 "parsing/parser.ml"
|
|
|
|
module Tables = struct
|
|
|
|
include MenhirBasics
|
|
|
|
let token2terminal : token -> int =
|
|
fun _tok ->
|
|
match _tok with
|
|
| AMPERAMPER ->
|
|
121
|
|
| AMPERSAND ->
|
|
120
|
|
| AND ->
|
|
119
|
|
| ANDOP _ ->
|
|
118
|
|
| AS ->
|
|
117
|
|
| ASSERT ->
|
|
116
|
|
| BACKQUOTE ->
|
|
115
|
|
| BANG ->
|
|
114
|
|
| BAR ->
|
|
113
|
|
| BARBAR ->
|
|
112
|
|
| BARRBRACKET ->
|
|
111
|
|
| BEGIN ->
|
|
110
|
|
| CHAR _ ->
|
|
109
|
|
| CLASS ->
|
|
108
|
|
| COLON ->
|
|
107
|
|
| COLONCOLON ->
|
|
106
|
|
| COLONEQUAL ->
|
|
105
|
|
| COLONGREATER ->
|
|
104
|
|
| COMMA ->
|
|
103
|
|
| COMMENT _ ->
|
|
102
|
|
| CONSTRAINT ->
|
|
101
|
|
| DO ->
|
|
100
|
|
| DOCSTRING _ ->
|
|
99
|
|
| DONE ->
|
|
98
|
|
| DOT ->
|
|
97
|
|
| DOTDOT ->
|
|
96
|
|
| DOTOP _ ->
|
|
95
|
|
| DOWNTO ->
|
|
94
|
|
| ELSE ->
|
|
93
|
|
| END ->
|
|
92
|
|
| EOF ->
|
|
91
|
|
| EOL ->
|
|
90
|
|
| EQUAL ->
|
|
89
|
|
| EXCEPTION ->
|
|
88
|
|
| EXTERNAL ->
|
|
87
|
|
| FALSE ->
|
|
86
|
|
| FLOAT _ ->
|
|
85
|
|
| FOR ->
|
|
84
|
|
| FUN ->
|
|
83
|
|
| FUNCTION ->
|
|
82
|
|
| FUNCTOR ->
|
|
81
|
|
| GREATER ->
|
|
80
|
|
| GREATERRBRACE ->
|
|
79
|
|
| GREATERRBRACKET ->
|
|
78
|
|
| HASH ->
|
|
77
|
|
| HASHOP _ ->
|
|
76
|
|
| IF ->
|
|
75
|
|
| IN ->
|
|
74
|
|
| INCLUDE ->
|
|
73
|
|
| INFIXOP0 _ ->
|
|
72
|
|
| INFIXOP1 _ ->
|
|
71
|
|
| INFIXOP2 _ ->
|
|
70
|
|
| INFIXOP3 _ ->
|
|
69
|
|
| INFIXOP4 _ ->
|
|
68
|
|
| INHERIT ->
|
|
67
|
|
| INITIALIZER ->
|
|
66
|
|
| INT _ ->
|
|
65
|
|
| LABEL _ ->
|
|
64
|
|
| LAZY ->
|
|
63
|
|
| LBRACE ->
|
|
62
|
|
| LBRACELESS ->
|
|
61
|
|
| LBRACKET ->
|
|
60
|
|
| LBRACKETAT ->
|
|
59
|
|
| LBRACKETATAT ->
|
|
58
|
|
| LBRACKETATATAT ->
|
|
57
|
|
| LBRACKETBAR ->
|
|
56
|
|
| LBRACKETGREATER ->
|
|
55
|
|
| LBRACKETLESS ->
|
|
54
|
|
| LBRACKETPERCENT ->
|
|
53
|
|
| LBRACKETPERCENTPERCENT ->
|
|
52
|
|
| LESS ->
|
|
51
|
|
| LESSMINUS ->
|
|
50
|
|
| LET ->
|
|
49
|
|
| LETOP _ ->
|
|
48
|
|
| LIDENT _ ->
|
|
47
|
|
| LPAREN ->
|
|
46
|
|
| MATCH ->
|
|
45
|
|
| METHOD ->
|
|
44
|
|
| MINUS ->
|
|
43
|
|
| MINUSDOT ->
|
|
42
|
|
| MINUSGREATER ->
|
|
41
|
|
| MODULE ->
|
|
40
|
|
| MUTABLE ->
|
|
39
|
|
| NEW ->
|
|
38
|
|
| NONREC ->
|
|
37
|
|
| OBJECT ->
|
|
36
|
|
| OF ->
|
|
35
|
|
| OPEN ->
|
|
34
|
|
| OPTLABEL _ ->
|
|
33
|
|
| OR ->
|
|
32
|
|
| PERCENT ->
|
|
31
|
|
| PLUS ->
|
|
30
|
|
| PLUSDOT ->
|
|
29
|
|
| PLUSEQ ->
|
|
28
|
|
| PREFIXOP _ ->
|
|
27
|
|
| PRIVATE ->
|
|
26
|
|
| QUESTION ->
|
|
25
|
|
| QUOTE ->
|
|
24
|
|
| RBRACE ->
|
|
23
|
|
| RBRACKET ->
|
|
22
|
|
| REC ->
|
|
21
|
|
| RPAREN ->
|
|
20
|
|
| SEMI ->
|
|
19
|
|
| SEMISEMI ->
|
|
18
|
|
| SIG ->
|
|
17
|
|
| STAR ->
|
|
16
|
|
| STRING _ ->
|
|
15
|
|
| STRUCT ->
|
|
14
|
|
| THEN ->
|
|
13
|
|
| TILDE ->
|
|
12
|
|
| TO ->
|
|
11
|
|
| TRUE ->
|
|
10
|
|
| TRY ->
|
|
9
|
|
| TYPE ->
|
|
8
|
|
| UIDENT _ ->
|
|
7
|
|
| UNDERSCORE ->
|
|
6
|
|
| VAL ->
|
|
5
|
|
| VIRTUAL ->
|
|
4
|
|
| WHEN ->
|
|
3
|
|
| WHILE ->
|
|
2
|
|
| WITH ->
|
|
1
|
|
|
|
and error_terminal =
|
|
0
|
|
|
|
and token2value : token -> Obj.t =
|
|
fun _tok ->
|
|
match _tok with
|
|
| AMPERAMPER ->
|
|
Obj.repr ()
|
|
| AMPERSAND ->
|
|
Obj.repr ()
|
|
| AND ->
|
|
Obj.repr ()
|
|
| ANDOP _v ->
|
|
Obj.repr _v
|
|
| AS ->
|
|
Obj.repr ()
|
|
| ASSERT ->
|
|
Obj.repr ()
|
|
| BACKQUOTE ->
|
|
Obj.repr ()
|
|
| BANG ->
|
|
Obj.repr ()
|
|
| BAR ->
|
|
Obj.repr ()
|
|
| BARBAR ->
|
|
Obj.repr ()
|
|
| BARRBRACKET ->
|
|
Obj.repr ()
|
|
| BEGIN ->
|
|
Obj.repr ()
|
|
| CHAR _v ->
|
|
Obj.repr _v
|
|
| CLASS ->
|
|
Obj.repr ()
|
|
| COLON ->
|
|
Obj.repr ()
|
|
| COLONCOLON ->
|
|
Obj.repr ()
|
|
| COLONEQUAL ->
|
|
Obj.repr ()
|
|
| COLONGREATER ->
|
|
Obj.repr ()
|
|
| COMMA ->
|
|
Obj.repr ()
|
|
| COMMENT _v ->
|
|
Obj.repr _v
|
|
| CONSTRAINT ->
|
|
Obj.repr ()
|
|
| DO ->
|
|
Obj.repr ()
|
|
| DOCSTRING _v ->
|
|
Obj.repr _v
|
|
| DONE ->
|
|
Obj.repr ()
|
|
| DOT ->
|
|
Obj.repr ()
|
|
| DOTDOT ->
|
|
Obj.repr ()
|
|
| DOTOP _v ->
|
|
Obj.repr _v
|
|
| DOWNTO ->
|
|
Obj.repr ()
|
|
| ELSE ->
|
|
Obj.repr ()
|
|
| END ->
|
|
Obj.repr ()
|
|
| EOF ->
|
|
Obj.repr ()
|
|
| EOL ->
|
|
Obj.repr ()
|
|
| EQUAL ->
|
|
Obj.repr ()
|
|
| EXCEPTION ->
|
|
Obj.repr ()
|
|
| EXTERNAL ->
|
|
Obj.repr ()
|
|
| FALSE ->
|
|
Obj.repr ()
|
|
| FLOAT _v ->
|
|
Obj.repr _v
|
|
| FOR ->
|
|
Obj.repr ()
|
|
| FUN ->
|
|
Obj.repr ()
|
|
| FUNCTION ->
|
|
Obj.repr ()
|
|
| FUNCTOR ->
|
|
Obj.repr ()
|
|
| GREATER ->
|
|
Obj.repr ()
|
|
| GREATERRBRACE ->
|
|
Obj.repr ()
|
|
| GREATERRBRACKET ->
|
|
Obj.repr ()
|
|
| HASH ->
|
|
Obj.repr ()
|
|
| HASHOP _v ->
|
|
Obj.repr _v
|
|
| IF ->
|
|
Obj.repr ()
|
|
| IN ->
|
|
Obj.repr ()
|
|
| INCLUDE ->
|
|
Obj.repr ()
|
|
| INFIXOP0 _v ->
|
|
Obj.repr _v
|
|
| INFIXOP1 _v ->
|
|
Obj.repr _v
|
|
| INFIXOP2 _v ->
|
|
Obj.repr _v
|
|
| INFIXOP3 _v ->
|
|
Obj.repr _v
|
|
| INFIXOP4 _v ->
|
|
Obj.repr _v
|
|
| INHERIT ->
|
|
Obj.repr ()
|
|
| INITIALIZER ->
|
|
Obj.repr ()
|
|
| INT _v ->
|
|
Obj.repr _v
|
|
| LABEL _v ->
|
|
Obj.repr _v
|
|
| LAZY ->
|
|
Obj.repr ()
|
|
| LBRACE ->
|
|
Obj.repr ()
|
|
| LBRACELESS ->
|
|
Obj.repr ()
|
|
| LBRACKET ->
|
|
Obj.repr ()
|
|
| LBRACKETAT ->
|
|
Obj.repr ()
|
|
| LBRACKETATAT ->
|
|
Obj.repr ()
|
|
| LBRACKETATATAT ->
|
|
Obj.repr ()
|
|
| LBRACKETBAR ->
|
|
Obj.repr ()
|
|
| LBRACKETGREATER ->
|
|
Obj.repr ()
|
|
| LBRACKETLESS ->
|
|
Obj.repr ()
|
|
| LBRACKETPERCENT ->
|
|
Obj.repr ()
|
|
| LBRACKETPERCENTPERCENT ->
|
|
Obj.repr ()
|
|
| LESS ->
|
|
Obj.repr ()
|
|
| LESSMINUS ->
|
|
Obj.repr ()
|
|
| LET ->
|
|
Obj.repr ()
|
|
| LETOP _v ->
|
|
Obj.repr _v
|
|
| LIDENT _v ->
|
|
Obj.repr _v
|
|
| LPAREN ->
|
|
Obj.repr ()
|
|
| MATCH ->
|
|
Obj.repr ()
|
|
| METHOD ->
|
|
Obj.repr ()
|
|
| MINUS ->
|
|
Obj.repr ()
|
|
| MINUSDOT ->
|
|
Obj.repr ()
|
|
| MINUSGREATER ->
|
|
Obj.repr ()
|
|
| MODULE ->
|
|
Obj.repr ()
|
|
| MUTABLE ->
|
|
Obj.repr ()
|
|
| NEW ->
|
|
Obj.repr ()
|
|
| NONREC ->
|
|
Obj.repr ()
|
|
| OBJECT ->
|
|
Obj.repr ()
|
|
| OF ->
|
|
Obj.repr ()
|
|
| OPEN ->
|
|
Obj.repr ()
|
|
| OPTLABEL _v ->
|
|
Obj.repr _v
|
|
| OR ->
|
|
Obj.repr ()
|
|
| PERCENT ->
|
|
Obj.repr ()
|
|
| PLUS ->
|
|
Obj.repr ()
|
|
| PLUSDOT ->
|
|
Obj.repr ()
|
|
| PLUSEQ ->
|
|
Obj.repr ()
|
|
| PREFIXOP _v ->
|
|
Obj.repr _v
|
|
| PRIVATE ->
|
|
Obj.repr ()
|
|
| QUESTION ->
|
|
Obj.repr ()
|
|
| QUOTE ->
|
|
Obj.repr ()
|
|
| RBRACE ->
|
|
Obj.repr ()
|
|
| RBRACKET ->
|
|
Obj.repr ()
|
|
| REC ->
|
|
Obj.repr ()
|
|
| RPAREN ->
|
|
Obj.repr ()
|
|
| SEMI ->
|
|
Obj.repr ()
|
|
| SEMISEMI ->
|
|
Obj.repr ()
|
|
| SIG ->
|
|
Obj.repr ()
|
|
| STAR ->
|
|
Obj.repr ()
|
|
| STRING _v ->
|
|
Obj.repr _v
|
|
| STRUCT ->
|
|
Obj.repr ()
|
|
| THEN ->
|
|
Obj.repr ()
|
|
| TILDE ->
|
|
Obj.repr ()
|
|
| TO ->
|
|
Obj.repr ()
|
|
| TRUE ->
|
|
Obj.repr ()
|
|
| TRY ->
|
|
Obj.repr ()
|
|
| TYPE ->
|
|
Obj.repr ()
|
|
| UIDENT _v ->
|
|
Obj.repr _v
|
|
| UNDERSCORE ->
|
|
Obj.repr ()
|
|
| VAL ->
|
|
Obj.repr ()
|
|
| VIRTUAL ->
|
|
Obj.repr ()
|
|
| WHEN ->
|
|
Obj.repr ()
|
|
| WHILE ->
|
|
Obj.repr ()
|
|
| WITH ->
|
|
Obj.repr ()
|
|
|
|
and default_reduction =
|
|
(16, "\000\000\000\000\000\000\002\221\002\220\002\219\002\218\002\217\002\172\002\216\002\215\002\214\002\213\002\212\002\211\002\210\002\209\002\208\002\207\002\206\002\205\002\204\002\203\002\202\002\201\002\200\002\199\002\198\002\171\002\197\002\196\002\195\002\194\002\193\002\192\002\191\002\190\002\189\002\188\002\187\002\186\002\185\002\184\002\183\002\182\002\181\002\180\002\179\002\178\002\177\002\176\002\175\002\174\002\173\000\000\000\000\000\"\000\182\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\029\001\148\001\127\001\145\001\144\001\143\001\149\001\153\000\000\003\030\001\147\001\146\001\128\001\151\001\142\001\141\001\140\001\139\001\138\001\136\001\152\001\150\000\000\000\000\000\000\000\215\000\000\000\000\001\131\000\000\000\000\000\000\001\133\000\000\000\000\000\000\001\135\001\157\001\154\001\137\001\129\001\155\001\156\000\000\003\028\003\027\003\026\000\000\000\000\000\016\001;\000\000\000\211\000\212\000\015\000\000\000\000\001\179\001\178\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\022\000\000\003\023\000\000\000\000\003\020\000\000\003\019\003\015\002\024\000\000\003\018\000\000\002\025\000\000\000\000\000\000\000\000\000f\000\000\000\000\000c\000\000\000\000\003\r\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\180\001?\000\000\000\000\000\000\000\000\000\000\000\000\002\003\000\000\000\000\000\000\000\000\000\000\000\000\000m\000_\000\000\000\000\000\000\000\000\0009\000\000\000\000\001@\000:\002l\000\000\001\r\000\000\000j\000\000\000\000\000\t\000\b\000\000\000\000\000\000\000\000\002\153\000\000\002K\002L\000\000\002I\002J\000\000\000\000\000\000\000\000\000\000\001P\001O\000\000\002\151\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\246\002\245\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000i\000\000\000\225\000\000\000\000\000\226\000\000\002N\002M\000\000\000\000\000\000\001\161\000\000\000\000\000\029\000\000\000\000\000\000\000\022\000\000\000\000\001h\000\017\000\000\000\000\000\000\000\000\000\000\000\000\001>\000\000\001=\000\000\001<\000\000\003\014\000 \000\000\000\000\000\023\000\018\000\000\000\000\000\000\000\196\000\000\000\000\000\000\000\198\002\"\002\020\000\000\000\026\000\000\002\021\000\000\000\000\001\158\000\000\000\000\000\000\000\n\000\000\000\000\000\000\000\011\002\247\000\000\002\248\000\000\000u\000\000\000\000\000\025\000\000\000\000\000\000\000\027\000\000\000\028\000\000\000\030\000\000\000\000\000\031\002\n\002\t\000\000\000\000\000\000\000\000\000\000\000\000\000]\000\000\002\158\000`\000l\000^\002\147\002\148\001\213\002\150\000\000\000\000\002\155\002H\002\157\000\000\000\000\000\000\002\164\002\161\000\000\000\000\000\000\001\210\001\196\000\000\000\000\000\000\000\000\001\200\000\000\001\195\000\000\001\212\002\170\000\000\001\211\001\203\000\000\000h\000\000\002\163\002\162\000\000\001\206\000\000\000\000\001\202\000\000\000\000\001\198\001\197\000\000\002\160\000\000\002P\002O\000\000\000\000\002,\002\159\002\156\000\000\000\000\000\000\000\000\001\163\001(\001)\002R\000\000\002S\002Q\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\236\000\237\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\199\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001Z\000\000\000\000\000\000\000\000\000\000\000\000\0034\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\017\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\018\000\000\000\000\002\019\000\000\000\000\001Y\000\000\000\000\000\000\001`\001_\001]\002\006\002\005\000\000\001X\001W\000\000\000\200\000\000\000\000\001I\000\000\000\000\001M\000\000\001\183\001\182\000\000\000\000\001\181\001\180\001L\001J\000\000\001N\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002p\003\031\002u\002s\000\000\000\000\000\000\002\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\146\000\000\002\145\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\224\000\000\000\000\000\000\000\000\000\000\000\000\000\234\001\223\000\235\000\000\000\000\000\000\001j\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\229\000\000\000\230\000\000\000\000\000\000\002}\000\000\000\000\000\000\002X\002W\000\000\000\000\000\000\000\000\002\127\002r\002q\000\000\000\000\000\165\000\000\000\000\000\000\000\000\000\000\000\179\000\000\000\000\000\000\000\164\000\000\000\000\000\000\0023\0022\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\238\000\000\002\224\000\000\003\n\000\000\000\000\003\t\000\000\000\000\000\000\000\000\000\000\000\190\000\189\000\239\000\000\002\225\002\226\000\000\000\000\000k\000\000\002\165\002\149\000\000\002\168\000\000\002\167\002\166\000\000\000\000\000\000\000\000\000\000\000\000\000\243\000\000\000\000\002\012\000\000\000\000\000\000\000\242\000\000\000\000\000\241\000\240\000\000\000\000\000\000\000\000\000\245\000\000\000\000\000\244\000\000\001\209\000\000\000\000\001\220\000\000\000\000\001\222\000\000\000\000\001\218\001\217\001\215\001\216\000\000\000\000\000\000\000\000\000\000\001\019\000\012\000\247\000\000\000\000\000\000\002Z\002Y\000\000\000\000\002h\002g\000\000\000\000\000\000\000\000\002d\002c\000\000\000\000\002&\000\000\000\000\002b\002a\000\000\000\000\002f\002e\002y\000\000\000\000\000\000\000\000\000\000\002^\000\000\000\000\000\000\000\000\000\000\002\\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\b\002\007\000\163\000\000\002]\000\000\000\000\002[\000\000\000\000\002_\000\000\000v\000w\000\000\000\000\000\000\000\000\000\134\000\191\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\192\000\000\000\193\000\194\000\127\000\000\000~\000\000\000\000\001+\000\000\001,\001*\002\014\000\000\000\000\002\015\002\r\000\000\000\000\000\000\000\000\000\000\000\254\000\000\000\000\000\255\000\000\000\000\000\166\000\000\001\001\001\000\000\000\000\000\002\129\002z\000\000\002\138\000\000\002\139\002\137\000\000\002\143\000\000\002\144\002\142\000\000\000\000\002|\002{\000\000\000\000\000\000\001\246\000\000\001\177\000\000\000\000\000\000\002/\001\245\000\000\002\133\002\132\000\000\000\000\000\000\003 \000\000\002j\000\000\002k\002i\000\000\002\131\002\130\000\000\000\000\000\000\002)\002x\000\000\002w\002v\000\000\002\141\002\140\000|\000\000\000\000\000\000\000\000\000{\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000y\000\000\001C\000\000\000\000\000\000\000a\000\000\000\000\000d\000\000\000b\000e\000\000\000\000\000\000\001b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\219\000\000\000\000\000q\000\000\000\222\000\220\000\000\000\000\000\000\000\202\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\000\000\000\000\001\244\000\000\000\000\000\246\001\175\000\000\000\232\000\233\000\253\000\000\000\000\000\000\000\000\000\000\001\190\001\184\000\000\001\189\000\000\001\187\000\000\001\188\000\000\001\185\000\000\000\000\001\186\000\000\001|\000\000\000\000\000\000\001{\000\000\000\000\000\000\000\000\000\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\001\t\002\239\000\000\000\000\002\238\000\000\000\000\000\000\000\000\000\000\001\229\000\000\000\000\000\000\000\000\000\000\000\000\002\244\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001l\000\000\001\235\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\223\000\000\000\000\0024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001~\000\000\000\000\000\000\001}\000\000\000\000\000\000\000\000\000\000\001R\000\000\001Q\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\011\002B\000\000\000\000\000\000\002@\000\000\000\000\000\000\002?\000\000\001E\000\000\000\000\000\000\000\000\002E\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003(\000\000\000\000\000\000\000\188\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000>\000\000\000\000\000\000\000\000\001g\000\000\001f\000\000\000\000\000\000\000\000\000A\000\000\000\000\000\000\001\242\000\000\001\241\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000B\000\000\000\000\000\000\000[\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\\\000G\000\000\000\000\000\000\000H\000F\000\000\000K\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000C\000\000\000J\000I\000\000\000D\000E\000\000\001\028\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\007\000Z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000W\000\000\000Y\000X\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\005\002F\0028\000\000\002>\0029\002D\002C\002A\001\022\000\000\0026\000\000\000\000\000\000\000\000\000\000\002\003\000\000\000\000\001\015\002:\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001w\001s\000\000\000\000\000\000\000\205\000\000\000\000\001\249\002\003\000\000\000\000\001\017\001\247\001\248\000\000\000\000\000\000\000\000\000\000\001z\001v\001r\000\000\000\000\000\206\000\000\000\000\001y\001u\001q\001o\002;\0027\002G\001\021\001\226\0025\000\000\000\000\000\000\000\000\000\000\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\000\003%\000\000\000.\000\000\000\000\003+\000\000\003*\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\"\000\000\000\000\003$\000\000\000\000\000\000\001\237\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001:\000\000\000\000\0018\0016\000\000\000/\000\000\000\000\003.\000\000\003-\000\000\000\000\000\000\0014\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0019\000\000\000\000\0017\0015\000\000\000\000\000\000\0001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\249\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000Q\000\000\000\000\000\000\000\000\000\000\000\000\000+\000\000\000\000\000P\000\000\000)\000\250\000\000\0008\000%\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\248\000\000\000O\000N\000\000\000\000\000T\000S\000\000\000\000\001\165\000\000\000-\000\000\000\000\000\000\000,\000\000\000\000\000\000\0000\000\000\000R\000U\000\000\0002\0003\000\000\001\030\000\000\000\000\000\000\000\000\000\000\000\000\0006\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\003\002\242\002\233\000\000\000\000\002\237\002\222\002\232\002\241\002\240\001\026\000\000\000\000\002\230\000\000\002\234\002\231\002\243\001\225\000\000\000\000\002\228\000\000\000\186\002\227\000\000\000\000\000\217\000\000\000\000\001\025\001\024\000\000\001G\001F\000\000\000\000\002\169\002\152\000\000\000;\000\000\000\000\000<\000\000\000\000\000\138\000\137\002\136\000\000\002\135\002\134\002t\000\000\000\000\000\000\000\000\002m\000\000\002o\000\000\002n\000\000\002U\002T\000\000\002V\000\000\000\000\000\130\000\000\000\000\001\234\000\210\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\184\000\000\002\236\001\254\001\255\001\250\001\252\001\251\001\253\000\000\000\000\000\000\000\185\000\000\000\000\002\003\000\000\000\209\000\000\000\000\000\000\000\000\002\235\000\000\000\183\000\000\000\000\000\000\000\000\0013\001-\000\000\000\000\001.\000\021\000\000\000\020\000\000\000\000\000\197\000\000\000\000\000\000\000\024\000\019\000\000\000\000\000\000\000\r\000\000\000\000\000\000\000\000\001x\001t\000\000\001p\003\012\000\000\002\003\000\000\000\208\000\000\000\000\000\000\000\000\002=\002\002\002\000\002\001\000\000\000\000\000\000\002\003\000\000\000\207\000\000\000\000\000\000\000\000\002<\000\000\001T\001S\000\000\000\014\000\000\003&\000\000\000#\000\000\000\000\000\000\000\000\000\133\000\000\000\213\000\001\000\000\000\000\000\216\000\002\000\000\000\003\000\000\001\191\000\000\000\000\001\192\000\004\000\000\000\000\001\193\000\005\000\000\000\000\000\000\002\255\002\250\002\251\002\254\002\252\000\000\000\000\003\003\000\006\000\000\003\002\000\000\001 \000\000\000\000\003\000\000\000\003\001\000\000\000\000\000\000\000\000\001$\001%\000\000\000\000\001#\001\"\000\007\000\000\000\000\000\000\003\025\000\000\003\024")
|
|
|
|
and error =
|
|
(122, "'\225 \022*\183\204\207@P?\144\000\0148\b\216@\005\194\141\241'\208\004\015\128\000\001\142\007\223dB\011\248\212\000\019\007\007\184\226\192\160\208\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\254\182mf\235\252\205\255\005G\248\132A\231\129\247\217\016\130\2545\000\004\193\193\2388\176(4\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0026\016\001`\163|I\244\001\003\224\000\000c\129\247\217\016\130\2545\000\004\193\193\2388\176(4'\225\"V*\183\204\207@P?\128\000\0308\000\000\000\000@\000\192\004\000\000\000\000\000\000\000\000\000\000\000\000\0000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\012\000\000\000\000\000\000\000\000\000\128\000\128\031\128\176\144\000\015\136\128A\000@\162\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000(\000\000\000\000\000\000\000\000\000\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\128\000\b\000\000\000 \000\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\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\128\000\b\000\000\000 \000\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\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\128\000\b\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\192\0000\016\000\197\194\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\000\001\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\000\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\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\192@\131\023\b\000\004\000\000\000\000\000\000@\016\000@ \193\004\000\000\016\000\000\000\000\000\016\004\000\000\b0A\000\000\004\000\000\000\000\000\004\001\000\000\002\012\016\000\000\001\000\000\000\000\000\196\128*\000 \194Hp\000D\001\216@\136\001! \b\000\b \002\020\000\016\000b\000\002\000\bH\002\000\002\b\000\132\000\004\000\024\128\000\128\000\012\000\002\012\016L\000@\000\000\000\000\000\000\000\003\000\000\130\004\019\000\016\000\000\000\000\000\000\000\000\192\000 \129\004\192\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\002\b\000L\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000 \128\004\000\000\000\000\000\000\000\000\000\000 \000\b\000\000\000\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\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\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\b \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\001\000\000\000\000\001\000\000\000\000\000\000\000\000\000! \b\130\b \002\024\000\016\000v\001\018\000@2\000\014\004\0001p\160\000@ \b\000\004\002\018\000\136\000\194\t!\192\001\016\006a\016a\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\200\0000\016\000\197\194\128\001\000\128 \000\016\0000\000\140\004\b1p\128\000@\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\197\128\187\000 \201Hp0D\129\216\005\152E\128\192\000 \000\000\197\194\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012\000\002\000\000\012\\ \000\018\000\002\000\000\000\001\000\016\000\000\001\000\000\000\004\128\000\000\016\000\000\192\0000\016\000\197\194\000\001\000\000\000\000\000\000\016\000\000\000\000\016\000\000\000\000\000\000\000\000\002\020\002F\000\001$!\192\192\018\001!\018\000\016}\246D \191\141@\0010p{\142,\n\r\t\248H\149\138\173\2433\208\020\015\224\000\007\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\003\000\000\131\004\019\000\016\000\000\000\000\000\000\000\000\192\000 \129\004\192\004\000\000\000\000\000\000\000\0000\000\b A0\000\000\000\000\000\000\000\000\000\012\000\002\b\000L\000\000\000\000\000\000\000\000\000\001\000\000\000\000\001\000\000\000\000\000\000\000\000\000! \b\130\b \018\024\000\017\000v\001\002\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\018\000\136\000\130\001!\128\001\016\006`\016 \004}\246D \191\141@\0010p{\142,\n\r\t\248H\149\138\173\2433\208\020\015\224\000\007\142\0026\016\001p\163|I\244\001\003\224\000\000c\128\141\132\000X(\223\018}\000@\248\000\000\024\224#a\000\022\n7\196\143@\016>\000\000\0068\000\000\000\000\000\000\000\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\132\000@\b\012\0189\000\000\024\000\000\024\192\001\000\000\001\000\001\000\016\000\000\000\000\000\000\000\000@\000\000\000\000@\004\000\000\000\000\000\000\000\000\016\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000@\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000+\250\221\253\155\239\247\255\252\029?\230!\003\158@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\141\134 ~*\223R=>b\249\004\001\154\235\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 HB\004\000\128\193#\144\000\001\128\000\001\140\0026\016\001`\163|H\244\001\003\224\000\000s\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000!\000\000\000@\002\130\020\012\000\000\002\001\000\000\b@\000\000\000\000\160\133\003\000\000\000\128@\000\002\016\000\000\000\000(!\000\192\000\000 \016\000\000\003!\000\002\000\019\004\139@\004\006\128\000\004\016\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\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\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\131!\136\031\128\179\148\139O\140\134\193\000d\178\224\000\002\000\000\000\000\000\016\000\001\000\000\000\000\b0\000\000\016\000\000\001\000\000\000\000\000\000\000\000\012\000\000\000\000\000\000@\000\000\000\000\000\000\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\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\016\000\000 \193\000\000\000\016\000\000\000\000\000\b\000\000\000\000\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\002\000\000\000\002\004\016\000\000@\000\000\000\000\000@\128\000\000\000\129\000\000\000\016\000\000\000\000\n~\018\001b\171|\205\244\005\003\248\128\000\227\130\159\132\128X\170\2233=\001@\254 \0008\224\167\225\"\022*\183\204\207@P?\152\000\0148\000@\128\000@\000\129\004\000\000\016\000\000\000\b\000\016 \000\016\000 A\000\000\004\000\000\000\000\000\004\b\000\000\000\b\016@\000\001\000\000\000\000\000\001\002\000\000\000\002\004\000\000\000@\000\000\000\000\001@\128\000\000\000\129\000\000\000\016\000\000\000\000\0026\016\001`\163|I\244\001\003\224\000\000c\128\141\132\000X(\223\018=\000@\248\000\000\024\224\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0026\016\001p\163|I\244\001\003\224\000\000c\128\141\132\000X(\223\018}\000@\248\000\000\024\224#a\000\022\n7\196\143@\016>\000\000\00681on\215\248\190\223?\191\251a\247\219\127\252\2426\016\001`\163|H\244\001\003\224\000\000c\128\012\132\000\b\000L\018-\000\016\024\000\000\016@\003!\000\002\000\019\004\139@\004\006\128\000\005\016\000\200@\128\128\004\193\"\208\001\001\160\000\001\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\016\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\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\000\000\000\000\000\000\000\002\000\000D\000\000\000\000\000\000\000\001\000\000@\000\003\000\000\192@\003\023\b\000\004\000\000\000\000\000\000\192\0000\016\000\197\194\000\001\000\000\000\000\020\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012\000\003\001\000\012\\ \000\016\000\000\000\000@\003\000\002\192@\003\023\b\000\004\000\000\000\000P\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0000\000\012\004\0001p\128\000@\000\000\000\001\000\012\000\003\001\000\012\\ \000\016\000\000\000\001@\001\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\0000\000\012\004\0001p\128\000@\000\000\000\001\000\004\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012H\003\176\002\012\132\135\003\004H\029\128X\132X\012\000\003\001\000\012\\ \000\016\000\000\000\000\000\196\128\187\000 \200Hp0D\129\216\005\136E\128\192\000 \000\000\197\194\000\001\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\004\000\000\002\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\128\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\197\128\187\000 \201Hp0D\129\216\005\136E\128@\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\128\000\003\023\b\000\004\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\0000\000\012\004\0001p\128\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\197\128\187\000 \201Hp0D\129\216\005\136E\128\192\000 \000\000\197\194\000\001\000\000\000\000\000\012X\011\176\002\012\148\135\003\004H\029\128X\132X\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\000\000\192@\003\023\b\000\004\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \001\000\000\001\000\000\b\000\000\000\004\000\012\000\003\001\000\012\\ \000\016\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\192\0000\016\000\197\194\000\001\000\000\000\000\000\000\000\000 \000\000\000\001\000\000\b\000\000\000\004\b\012\000\003\001\000\012\\ \000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\004\000\000 \000\000\000\017 \000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\b\000\000\000\004H\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\016\000\000\128\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012H\003\176\002\012\132\135\003\004H\029\128X\132P\000\000\b\000\000\000\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\016\0000\000\012\004\0001p\128\000@\000\000\000\001\000\000\000\b\000\000\000\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\128\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\002\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\004\000\000\000 \000\000\000\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\000\000\000\000\000\000\000\000\000\000\000\b\000\001\016\000\000\000\001\000\000\000\004\000\000\000\002\000\000D\000\000\000\000\000\000\000\001\000\000\000\000\003!\000\002\000\019\004\139@\004\006\128\000\004\016\000\200@\000\192\004\193&\144\001\001\128\000\001\004\0002\016\000 \0010I\164\000@`\000\000A\000\012\132\000\b\000L\018)\000\016\024\000\000\016@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t2\145\180$\0050I\172\000@e\b\027U@\000\004\000\b\000@\000\001\000\000\016\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002L\164m\t\001L\018o\000\016\027A\006\213P\001\000\000\000\000\002\000\138\000\000\000\000\000\000\000 \200B\000\128\004\193\"\208\001\001\160\000\t\004\000\000\000\000\000\000\000\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\003\000\019\004\155@\004\006\128\000\004\016\000\200@\000\128\004\193&\208\001\001\160\000\001\004\0002\016\000 \0010H\180\000@h\000\000A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000$\000\006\192\000\016\000\004\000\000\000\020\000LQ\0002\016\000 \0010H\180\000@h\000\000A\002@\000l\000\001\000\000@\000\000\001@\004\197\016\131!\000\002\000\019\004\139@\004\006\128\000\004\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t\000\001\176\000\004\000\001\000\000\000\005\000\019\020@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\147!\027\002\000S\004\155@\004\006\208\0015T\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002L\132l\b\001L\018m\000\016\027@\004\213P\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\b\000\000\000\000\016\000\000\000\000\001 D\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\012\132\000\b\000L\018-\000\016\026\000\000\016@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000$\000\006\192\000\016\000\004\000\000\000\020\000LQ\b2\016\000 \0010H\180\000@h\000\000A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\144\000\027\000\000@\000\016\000\000\000P\0011D \000\000\000\000\000\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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!\002\002\000\019\004\139@\004\006\128\000\004\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\128\000\000\000\004\000\000\000\000\000HQ\b2\016 \0010H\180\000@h\000\000Q\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\001\016\000\000\000\001\000\000\000\000\000\018\004B\000\000D\000\000\000\000\000\000\000\000\000\000\000\000\131\000\001\000\000\001\000\000\000\000\000\000\000\000\000 \000\004@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\202@\016\144\004\193&\176\001\001\144\000M\021\000\000\000\000\000\0000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000@\000\016\000\000\192\0000\016\000\197\194\000\001\000\000\000\000\000\000\000\000\128\000\000\000\001\000\000\000\004\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000@\000\000\000\b\216@\005\130\141\241#\208\004\015\128\000\001\142\0002\016@2\t0I\180\000@h\000\000A\000\004\b\000\004\000\b\016@\000\001\000\000\000\000\128\001\002\000\001\000\002\004\016\000\000@\000\000\000\000\000@\128\000\000\000\129\004\000\000\016\000\000\000\000\000\016 \000\000\000 @\000\000\004\000\000\000\000\000\000\000\000\000\000\b\000@\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\192\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\131\004\000\000\000@\000\000\000\000\000@\016\000\000 \193\000\000\000\016\000\000\000\000\000\000\000\000\000\000 \001\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000B\000\000\000\000\000\000\000\000\000\000@\016\000\000 \193\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\018\000\168\000\131\001!\192\001\016\007`\002 \004\000\128\000\000\000\128\000\000\000\000\000\000\000\000\000\000\192\000 \128\004\192\000\000\000\000\000\000\000\000\000\016\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\001\000\000\003\000\000\224@\003\023\b\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0000\000\012\004\0001p\128\000@\000\000\000\000\003\018\000\168\000\131\001!\192\001\016\007`\002 \020\003\000\000\192@\003\023\b\000\004\000\000\000\000\0001 \n\128\b0\018\028\000\017\000v\001\"\001LH\002\160\002\012\004\135\000\004@\029\128H\128\016\012\000\003\001\000\012\\ \000\016\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000@\000\000\000\000\192\0000\016\000\197\194\000\001\000\000\000\000\000\012H\002\160\002\012\004\135\000\004@\029\128H\128\016\000\000\000\000\000\000\000\000\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\016\016\016\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\003\018\000\168\000\131\t!\192\001\016\007a\002 \004\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\012H\002\160\002\012$\135\000\004@\029\132\b\128\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\196\128*\000 \192Hp\000D\001\216\000\136\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\004\001\000\000\002\012\016\000\000\001\000\000\000\000\000\196\128*\000 \192Hp\000D\001\216\000\136\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\004\000\000\000\004\000\000\000\000\004\000\000\000\000\000\000\000\000\000\196\128*\000 \194Hp\000D\001\216@\136\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\128\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\000\000\000\000\000\000\000\016\000\002\000\000\016\000\004\000\000\000\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\b\000\000\000\000\000\000\000\000\000\001\002\000\000\000\002\004\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012H\002\160\002\012$\135\000\006@\029\128\t\128\016\020\b \000\000\b\016\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\002\000\000\000\128\004\000\000\000\000\000\004\000\000\000\000\000\000\000\000\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\131\004\000\000\000@\000\000\000\0000\000\002\000\000\016\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012H\002\160\002\012$\135\000\006@\029\132\t\128\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\016\000 \000\000\000\000\000\b\216@\005\130\141\241#\208\004\015\128\000\001\142\0026\016!`\163|H\244\001\003\224\000\000c\128\000\000\000\000\000\004\000\000\000\004\000\000\000\000\000\128\000\016\000\000\000\000\000\000\001\000@\000\000\000\b\216@\005\130\141\241#\208\004\015\128\000\001\142\000\018\016\001\000 0H\228\000\000`\000\000c\003\000\000D\000\000\000\000\000\0000\001\005\002@\000#a\000\023\n7\196\159@\016>\b\000\0068\b\216@\005\130\141\241'\208\004\015\130\000\001\142\0026\016\001`\163|H\244\001\003\224\128\000c\128\004\132\000D\b\012\018y\000\000\024\000\000\024\192\001!\000\016\002\003\004\158@\000\006\000\000\0060\000H@\004\000\128\193#\144\000\001\128\000\001\140\000\018\016\001\000 0H\228\000\000`\000\000c\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\022\246\237\127\139\237s\251\255\182\031}\183\255\223\001\000\000\000\000\003\000\142\000\000\000\000\000\000\000(\216b\007\226\173\245#\211\230/\144@\025\174\176\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\141\132 X(\223\018=\000@\248\000\000\024\224\163a\b\022\n7\196\143@\016>\000\000\0068 @\128\000@\000\129\004\000\000\016\000\000\000\000\000\016 \000\000\000 A\000\000\004\000\000\000\000\000\004\b\000\000\000\b\016\000\000\001\000\000\000\000\000\000\000\000\000\000\002\000\016\000\000\000\000\000\016\000 @\016\000\000 \193\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\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(\216B\005\130\141\241#\208\004\015\128\000\001\142\n6\016\129`\163|H\244\001\003\224\000\000c\130\012\132 \b\000L\018-\000\016\024\000\000\016@\000\000\000\000\000\000\000\016\000\000\000@\0010D\000\192\0000\016\000\197\194\000\001\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\004\000\000\000\000\141\132\000X(\223\018=\000@\248\000\000\024\224#a\000\023\n7\196\159@\016>\000\000\0068\b\216@\005\130\141\241'\208\004\015\128\000\001\142\0026\016\001`\163|H\244\001\003\224\000\000c\128\012\132\000\012\000L\018m\000\016\026\000\000\017@\003!\000\002\000\019\004\155@\004\006\128\000\004P\000\200@\000\128\004\193\"\208\001\001\160\000\001\020\0002\016\000 \0010H\180\000@h\000\000A\000@\000\000\000\001\000\000@\000\000\000\000\004\129\016#a\000\022\n7\196\143@\016>\000\000\0068\000\202@\016\208\004\193&\176\001\001\128\000\001\004\0002\144\004$\0010I\172\000@`\000\000A\000\012\164\001\t\000L\018+\000\016\024\000\000\016@\002\000\000\000\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\0002\016\000 \0010H\180\000@h\000\000A\000\000\000 \000\000\000\000@\000\000\001\000\004\193\016\003\000\000\192@\003\023\b\000\004\000\000\000\000\000\000\000\002\000\000\000\000\004\000\000\000\016\000\000\000\000\000\000\128\000\000\000\000\000\000\000\004\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\014\134 ~\002\206R->2\027\004\001\146\203\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000@\000\000\000\000\000\016\000\000\000\000\000\000\000\000\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)\000B@S\004\138\192\004\006\000\000\020\016\b\216@\005\130\141\241#\208\004\015\128\000\001\142\0002\016\0000\0010I\180\000@h\000\000A\000\012\132\000\b\000L\018m\000\016\026\000\000\016@\003!\000\002\000\019\004\139@\004\006\128\000\004\016\000\000\000\000\000\000\000\004\000\000\000\016\000H\017\0026\016\001`\163|H\244\001\003\224\000\000c\128\004\132\000D\b\012\018y\000\000\024\000\000\024\192\001!\000\016\002\003\004\158@\000\006\000\000\0060\000H@\004\000\128\193#\144\000\001\128\000\001\140\012IK\176\250\015\133\135\003\254\216\029\246\223\156<\004\132\000@\b\012\0189\000\000\024\000\000\024\192\197\189\187_\226\251\\\254\255\237\135\223m\255\247\192\000\000\000\000\000\128\002\128\000\000\000\000\000\000\0026\016\001`\163|H\244\001\003\224\000\000c\128\141\132\000X(\223\018=\000@\248\000\000\024\224\197\189\187_\226\251\\\254\255\237\135\223m\255\243\192\000\000\000\000\000@\000\000\000\000\000\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000H@\004\000\128\193#\144\000\001\128\000\001\140\012[\219\181\254/\181\207\239\254\216}\246\223\255|\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\192\002\128\000\000\000\000\000\000\0026\016\001`\163|H\244\001\003\224\000\000c\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\012IK\176\250\015\133\135\003\254X\029\226\223\156<\141\132\000X(\223\018=\000@\248\000\000\024\224\197\189\187_\226\251\\\254\255\237\135\223m\255\243\241%.\195\232>\022\028\015\251`w\219~p\240\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000B6\016\001`\163|H\244\001\003\224\000\000c\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\196\148\187\015\160\248Xp?\229\129\222-\249\195\200\216@\005\130\141\241#\208\004\015\128\000\001\142\012IK\176\250\015\133\135\003\254X\029\226\223\156<\141\132\000X(\223\018=\000@\248\000\000\024\224\196\148\187\015\160\248Xp?\229\129\222-\249\195\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012[\219\181\254/\181\207\239\254\216}\246\223\255?\018R\236>\131\225a\192\255\182\007}\183\231\015#a\000\022\n7\196\143@\016>\000\000\0068\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\014\127[\177\250\175\253\207\247\255[\253\226\223\255\189\247\217\016\130\2545\000\004\193\193\2388\176(4#a\000\022\n7\196\143@\016>\000\000\0068\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\141\132\000X(\223\018=\000@\248\000\000\024\224\196\148\187\015\160\248Xp?\229\129\222-\249\195\200\216@\005\130\141\241#\208\004\015\128\000\001\142\012IK\176\250\015\133\135\003\254X\029\226\223\156<\141\132\000X(\223\018=\000@\248\000\000\024\224\196\148\187\015\160\248Xp?\229\129\222-\249\195\200\216@\005\130\141\241#\208\004\015\128\000\001\142\012IK\176\250\015\133\135\003\254X\029\226\223\156<\141\132\000X(\223\018=\000@\248\000\000\024\224\196\148\187\015\160\248Xp?\229\129\222-\249\195\200\216@\005\130\141\241#\208\004\015\128\000\001\142\012IK\176\250\015\133\135\003\254X\029\226\223\156<\141\132\000X(\223\018=\000@\248\000\000\024\224\196\148\187\015\160\248Xp?\229\129\222-\249\195\200\216@\005\130\141\241#\208\004\015\128\000\001\142\012IK\176\250\015\133\135\003\254X\029\226\223\156<\141\132\000X(\223\018=\000@\248\000\000\024\224\196\148\187\015\160\248Xp?\229\129\222-\249\195\200\216@\005\130\141\241#\208\004\015\128\000\001\142\012IK\176\250\015\133\135\003\254X\029\226\223\156<\141\132\000X(\223\018=\000@\248\000\000\024\224\196\148\187\015\160\248Xp?\229\129\222-\249\195\200\216@\005\130\141\241#\208\004\015\128\000\001\142\012IK\176\250\015\133\135\003\254X\029\226\223\156<\141\132\000X(\223\018=\000@\248\000\000\024\224\196\148\187\015\160\248Xp?\229\129\222-\249\195\200\216@\005\130\141\241#\208\004\015\128\000\001\142\012IK\176\250\015\133\135\003\254X\029\226\223\156<\141\132\000X(\223\018=\000@\248\000\000\024\224\196\148\187\015\160\248Xp?\229\129\222-\249\195\200\216@\005\130\141\241#\208\004\015\128\000\001\142\012IK\176\250\015\133\135\003\254X\029\226\223\156<\141\132\000X(\223\018=\000@\248\000\000\024\224\196\148\187\015\160\248Xp?\229\129\222-\249\195\200\216@\005\130\141\241#\208\004\015\128\000\001\142\012IK\176\250\015\133\135\003\254X\029\226\223\156<\141\132\000X(\223\018=\000@\248\000\000\024\224\196\148\187\015\160\248Xp?\229\129\222-\249\195\200\216@\005\130\141\241#\208\004\015\128\000\001\142\012IK\176\250\015\133\135\003\254X\029\226\223\156<\012\132\000\b\000L\018m\000\016\024\000\000\016@\003!\000\002\000\019\004\139@\004\006\000\000\004\016\000\202@\016\144\004\193&\176\001\001\144\000m\021\b:\024\129\248\0119H\180\248\200l\016\006K,\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\202@\016\144\004\193\"\176\001\001\144\000%\004\0002\016\000 \0010H\164\000@`\000\000A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000#a\000\022\n7\196\143@\016>\000\000\0068\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b0\000\012\004\0001p\128\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\025\000\000\000\000\016\000\000\000@\000\000\000 \192\0000\016\000\197\194\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000d\000\000\000\000@\000\000\001\000\002\000\000\003\000\000\192@\003\023\b\000\004\000\000\000\000\000 \000\006@\000\000\000\004\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\141\132\000X(\223\018=\000@\248\000\000\024\224\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\164\001\t\000L\018+\000\016\025\000\002P@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\128\000\000\000\000\004\000\000@\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\002\000\000\000\000\004\000\000\000\000\000L\017\000\000\000\000\000\000\000\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\000\192@\003\023\b\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\128\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\000\000\000 \224\0000\016\000\197\194\000\001\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\003\000\000\192@\003\023\b\000\004\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\016\000\000\000\0026\016\001`\163|H\244\001\003\224\000\000c\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000@\000\000\000@\000\000\000\000@\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\003\001\000\012\\ \000\016\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000@\000\000\000\b\216@\005\130\141\241#\208\004\015\128\000\001\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\001\000\000\000\000#a\000\022\n7\196\143@\016>\000\000\0068\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\004\193\016\003\000\000\192@\003\023\b\000\004\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\016\000\000\000\0026\016\001`\163|H\244\001\003\224\000\000c\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000@\001 D\b\216@\005\130\141\241#\208\004\015\128\000\001\142\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\012\132\000\b\000L\018-\000\016\026\000\000\016@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\016\000H\017\b2\016\000 \0010H\180\000@h\000\000A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000@\001 D \200@\000\128\004\193\"\208\001\001\160\000\001\004\000\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\004\129\016\128\000\000\000\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\016\000H\017\0002\016\000 \0010H\180\000@h\000\000A\000\000\000\000\000\000\000\000@\000\000\001\000\004\129\016\132\128\"\000 \128H`\000d\001\152\000\b\001! \b\128\b\"\018\024\012\025\000f\001\002\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0001%.\195\232>\022\028\015\249`w\139~p\2426\016\001`\163|H\244\001\003\224\000\000c\130\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0026\016\001`\163|H\244\001\003\224\000\000c\130\000\002\004>\000\192@@>\002\001\000\005\130\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\020\000\000\000\000\000\000\000\000\b\000(\000\000\000\000\000\000\000#a\000\022\n7\196\143@\016>\000\000\0068 \000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\155\015\1280\016\016\015\128\128@\001a\128\232\216B\197\130\141\241#\208\004\015\128\000\001\206\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\141\132\000X(\223\018=\000@\248\000\000\024\224\128\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\141\132\000X(\223\018=\000@\248\000\000\024\224\128\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\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\016\002\003\004\142@\000\006\000\000\00601on\215\248\190\215?\191\251a\247\219\127\253\240\000\000\000\000\000 \000\160\000\000\000\000\000\000\000\141\132\000X(\223\018=\000@\248\000\000\024\224\128\000\b\000\000\000\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[\219\181\254/\183\207\239\254\216}\246\223\255<\141\132\000X(\223\018=\000@\248\000\000\024\224\196\148\187\015\160\248Xp?\229\129\222-\249\195\200\216@\005\130\141\241#\208\004\015\128\000\001\142\b\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\197\189\187_\226\251|\254\255\237\135\223m\255\243\200\216@\005\130\141\241#\208\004\015\128\000\001\142\012IK\176\250\015\133\135\003\254X\029\226\223\156<\141\132\000X(\223\018=\000@\248\000\000\024\224\000\000\001\000\000\000\000\000\000\000\000\000\000\000\0001on\215\248\190\223?\191\251a\247\219\127\252\2426\016\001`\163|H\244\001\003\224\000\000c\131\018R\236>\131\225a\192\255\150\007x\183\231\015\128\000\145\015\1280\016\016\015\128\128@\001`\128\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\0000\000\160\000\000\000\000\000\000\000\141\132\000X(\223\018=\000@\248\000\000\024\224\128\000\b\000\000\000\000\000\000\000\000\000\000\000\0001on\215\248\190\223?\191\251a\247\219\127\252\2426\016\001`\163|H\244\001\003\224\000\000c\131\018R\236>\131\225a\192\255\150\007x\183\231\015#a\000\022\n7\196\143@\016>\000\000\0068 \000\000\128\000\000\000\000\000\000\000\000\000\000\000\012[\219\181\254/\183\207\239\254\216}\246\223\255<\141\132\000X(\223\018=\000@\248\000\000\024\224\196\148\187\015\160\248Xp?\229\129\222-\249\195\200\216@\005\130\141\241#\208\004\015\128\000\001\142\b\000\b\016\248\003\001\001\000\248\b\004\000\022\b\015\022\246\237\127\139\237\243\251\255\182\031}\183\255\207#a\000\022\n7\196\143@\016>\000\000\00681%.\195\232>\022\028\015\249`w\139~p\240\000\000\000\000\000\000\000\000\000\000\000\020\000\000\000\000\000\000\000\000\b\000(\000\000\000\000\000\000\000#a\000\022\n7\196\143@\016>\000\000\0068 \000\002\000\000\000\000\000\000\000\000\000\000\000\000\012[\219\181\254/\183\207\239\254\216}\246\223\255<\141\132\000X(\223\018=\000@\248\000\000\024\224\196\148\187\015\160\248Xp?\229\129\222-\249\195\200\216@\005\130\141\241#\208\004\015\128\000\001\142\b\000\000 \000\000\000\000\000\000\000\000\000\000\000\003\022\246\237\127\139\237\243\251\255\182\031}\183\255\207#a\000\022\n7\196\143@\016>\000\000\00681%.\195\232>\022\028\015\249`w\139~p\2426\016\001`\163|H\244\001\003\224\000\000c\130\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\197\189\187_\226\251|\254\255\237\135\223m\255\243\200\216@\005\130\141\241#\208\004\015\128\000\001\142\012IK\176\250\015\133\135\003\254X\029\226\223\156?\022\246\237\127\139\237\243\251\255\182\031}\183\255\207#a\000\022\n7\196\143@\016>\000\000\00681%.\195\232>\022\028\015\249`w\139~p\252[\219\181\254/\181\207\239\254\216}\246\223\255\127\022\246\237\127\139\237s\251\255\150\031x\183\255\207\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\216@\005\130\141\241#\208\004\015\128\000\001\142\b\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000#a\000\022\n7\196\143@\016>\000\000\0068\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0026\016\001`\163|H\244\001\003\224\000\000c\128\000\000\000\000\000\000\000\000\000\000\000\000 \000\000#a\000\022\n7\196\143@\016>\000\000\0068\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\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\161\136\031\128\179\148\139O\140\134\193\000d\178\192\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\012\164\001\t\001L\018+\000\016\024\000\000P@\003\000\000\128\000\003\023\b\000\004\000\000\000\000\000\000@\000\000\000\016@\000\000\001\000\000\000\000\000\0026\016\001`\163|H\244\001\003\224\000\000c\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003)\000B@S\004\138\192\004\006\000\000\020\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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)\000B@S\004\138\192\004\006\000\000\020\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\141\132\000X(\223\018=\000@\248\000\000\024\224\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\216@\005\130\141\241#\208\004\015\128\016\001\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\0001%.\195\232>\022\028\015\249`w\139~p\2402\016\000 \0010H\180\000@h\000\000A\000\000\000\000\000\000\000\000\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\000\000\000\000\000\000\0026\016\001`\163|H\244\001\003\224\000\000c\131\018R\236>\131\225a\192\255\150\007x\183\231\015#a\000\022\n7\196\143@\016>\000\000\00681%.\195\232>\022\028\015\249`w\139~p\240\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\004\129\016#a\000\022\n7\196\143@\016>\000\000\0068\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000 \141\132\000X(\223\018=\000@\248\000\000\024\224\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\200@\000\128\004\193\"\208\001\001\128\000\001\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\129!\b\016\002\003\004\142@\000\006\000\000\0060 \000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000#a\000\022\n7\196\143@\016>\000\000\0078\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\216@\133\130\141\241#\208\004\015\128\000\001\142\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018\016\001\000 0H\228\000\000`\000\000c\001\000\000\000\000\000\000\000\000\0000\000\005\000\000\000\001\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\b\000\001\016\000\000\000\000\000\000\000\004\000\t\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\017\000\000\000\000\000\000\000\000@\000\000\000 \000\004@\000\000\000\000\000\000\000\000\000\000\000\b\016\000\016\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\001@\000\000\000@\000\000\000\000\192#\128\000\000\000\000\000\000\012\000\001\016\000\000\000\000\000\000\192\004\020\t\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\196\148\187\015\160\248Xp?\237\129\223m\249\195\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\145\015\1280\016\016\015\129\128@\001`\128\224\000\004\000\000\000\000\000\000\000@\000\000\000\000\b\000\000\000\000\000\016\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\002\000\000\000\002\004\016\000\000@\000\000\000\000\000@\128\000\000\000\129\000\000\000\016\000\000\000\000\000\000\000\000\000\000 \001\000\002\000\000\000\000\000\000\141\132\000X(\223\018=\000@\248\000\000\024\224\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\192\000\000@\000\000\004\000\000\000\000\000\000\000\0000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000@\000\016\000\000@\128\000\000\000\129\000\000\000\016\000\000\000\000\bH\002 \002\b$\135\000\006@\025\128\000\128\016\004\001\000\000\002\012\016\000\000\001\000\000\000\000\000@\000\000\000\000@\000\016\000\000\000@\000\000\000\000@\128\000\000\000\129\000\000\000\016\000\000\000\000\bH\002 \002\b$\135\000\006@\025\128\000\128\016\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000#a\000\022\n7\196\143@\016>\000\000\0068\000\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\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001 \000\001\000\002\000\024\000\000\002\000\000\000\000\000H\000\000\000\000\128\006\000\000\000\128\000\000\000\000\018\000\000\000\000 \000\128\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000 \000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\001\000\002\000\000\000\001\000\000\012\000\002\000\000\012\\(\000\016\000\000\000\000\000\000\000\000\000\001\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\016\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\192@\003\023\b\000\004\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\016\000\000\0000\000\012\004\0001p\128\000@\000\000\000\000\000\000\000D\000\000\000\000@\000\002\000\000\000\000\016\000\000\017\000\000\000\000\016\000\000\000\000\000\000\000\000\000\004@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\016\016\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\017\000\000\000\000\016\000\000\128\000\000\000\004\000\000\000@\000\000\000\000\000\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\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\012\000\002\000\000\012\\ \000\016\000\000\000\000\000\133\128\162\000 \193Hp\000d\001\152\004\bA\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\bX\n \002\b\020\135\000\006@\025\128@\132\016\012\000\002\000\000\012\\(\000\016\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\192\000 \000\000\197\194\000\001\000\000\000\000\000\bX\002 \002\b\020\135\000\006@\025\128@\132\018\022\002\136\000\131\005!\192\001\144\006`\016!\004\000\000\000\000\000\000\000\016\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\0026\016\001`\163|H\244\001\003\224\000\000c\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003!\004\002\000\019\004\155@\004\006\000\000\004\016\000\200A\000\128\004\193\"\208\001\001\128\000\001\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012\132\000\b\000L\018-\000\016\024\000\000\016@\132\128\"\000 \128H`\000d\001\152\000\b\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\018R\236>\131\225a\192\255\150\007x\183\231\015@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\200@\000\128\004\193\"\208\001\001\160\000\001\020\012IK\176\250\015\133\135\003\254X\029\226\223\156>\000\002 >\000\192@@>\002\001\000\007\194\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\b\016\004\000\000\b0@\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\b\000\000@\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\016\004\000\000\b0@\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\b\000\000@\000\016\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\004\000\000\b0@\000\000\004\000\000\000\000\001\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! \b\128\b \146\028\000\017\000f\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\b\000\000\000\b\016@\000\001\000\000\000\000\000\001\002\000\000\000\002\004\000\000\000@\000\000\000\000! \b\128\b \146\028\000\017\000f\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\014\000\016\004\000\000\000@\000\000\000\000\000\000\000\001\000\000\001\000\001\000\016\000\000\000\000\000\000\000\000@\000\000\000\000@\004\000\000\000\000\000\000\000\000\016\000\000\000\000\016\000\000\000\000\000\000\000\000\002\018\000\136\000\130\001!\128\001\016\007`\000 \000\001\000@\000\000\131\004\000\000\000@\000\000\000\0001 \b\128\b0\018\028\000\017\000f\000\002\000\bH\002 \002\b\004\134\000\004@\025\128\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\000\004\000\000\000\000\016\000\000\000\000\000\000\000\000\192\001\000\000\000\000\000\000\000\000\000\000\000\000\0000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\001\000\000@\000\132\128\"\000 \128H`\000D\001\152\000\b\001! \b\128\b \018\016\000\017\000f\000\002\000@0\000\000\000\000\000\001\000\000\000\000\000\000\000\000\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000@\000\016\000! \b\128\b \018\024\000\017\000f\000\002\000HH\002 \002\b\004\132\000\004@\025\128\000\128\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\016\000\004\000\bH\002 \002\b\004\134\000\004@\025\128\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000}\246D \191\141@\0010p{\142,\n\r\t\248H\149\138\173\2433\208\020\015\224\000\007\142\0002\016\000 \0010H\180\000@h\000\000A\000@\000\b\000\000\000\000@\000\000\000\000\004\129\016#a\000\022\n7\196\143@\016>\000\000\0068\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\223dB\011\248\212\000\019\007\007\184\226\192\160\208\159\132\137X\170\2233=\001@\254\000\000x\224\001\002\000\001\000\002\004\016\000\000@\000\000\000\000\000@\128\000\000\000\129\004\000\000\016\000\000\000\000\000\016 \000\000\000 @\000\000\004\000\000\000\000\002\018\000\136\000\130\t!\192\001\016\006`\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\192\004\000\000\000\000\000\000\000\000\000\000\000\000\0000\001\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\000\000\000\000\000\000\000\000\000\000\000\016\000\000\192\0000\016\000\197\194\000\001\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\004\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\132\129\"\000 \128H`\000D\001\152\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\bH\002 \002\b\004\134\000\004@\025\128\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001 \000\001\000\002\000\024\000\000\002\000\000\000\000\000H\000\000\000\000\128\006\000\000\000\128\000\000\000\000\018\000\000\000\000 \000\128\000\000 \000\000\000\002\018\000\136\000\194\001!\192\001\016\007`\000`\000\001 \000\000\000\002\000\b\000\000\002\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\002\018\000\136\000\130\001!\192\001\016\006a\000!\000\001\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\bH\002 \002\b\004\135\000\004@\025\128\000\128\002\018\000\136\000\130\001!\128\001\016\006`\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000! \b\128\b \018\028\000\017\000f\000\002\000\bH\002 \002\b\004\134\000\004@\025\128\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\128\"\192`\131\031H\000D\001\128\000\b\000! \b\128\b \002\016\000\016\000f\000\002\000\000\016\000\000\016\000\000\001\000\000\000\000\000\000\002\000\004\000\000\004\000\000\000@\000\000\000\000\000\000\000\001\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\bH\002 \002\b \134\000\004\000\025\132\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\bH\002 \002\b \134\000\004\000\025\132\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\128\004\001\000\000\000\016\000\000\000\000\000\000\000\000\192\001\000\000\000\000\004\000\000\000\000\000\000\000\0000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\001\000\001@\000\129\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\bH\002 \002\b \134\000\004\000\025\132\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\004\000\000\016\004\000\000\b0@\000\000\004\000\000\000\000\003\018\000\136\000\131\000!\192\001\000\006`\000 \004\132\128\"\000 \128\b@\000@\001\152\000\b\001\000\192\000\000\000\000\000\004\000\000\000\000\000\000\000\0000\000\000\000\000\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\131\004\000\000\000@\000\000\000\0001 \b\128\b0\002\028\000\016\000f\000\002\000HH\002 \002\b\000\132\000\004\000\025\128\000\128\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\016\000\004\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\002\018\000\136\000\130\000!\128\001\000\006a\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\016\000\000 \193\000\000\000\016\000\000\000\000\012H\002 \002\012\000\135\000\004\000\025\128\000\128\002\018\000\136\000\130\000!\128\001\000\006`\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\001\000\004\002\012\016@\000\001\000\000\000\000\000\001\000@\000\000\131\004\016\000\000@\000\000\000\000\000@\016\000\000 \193\000\000\000\016\000\000\000\000\012H\002 \002\012\000\135\000\004\000\025\128\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001 \000\001\000\002\000\024\000\000\002\000\000\000\000\000H\000\000\000\000\128\006\000\000\000\128\000\000\000\000\018\000\000\000\000 \000\128\000\000 \000\000\000\002\018\000\136\000\194\000!\192\001\000\006`\000`\000\b\128\000\001\000\001\000\024\000\000\000\000\000\000\000\002\000\000\000@\000@\006\000\000\000\000\000\000\000\000\128\000\000\000\000\016\001\128\000\000\000\000\000\000\000 \000\000\000\000\004\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\002\000\000\000\000\000\000\000\000 \000\b \001\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\000\000\000\004\000\000\000 \005\016 \000\000\000\000\000\000\000\132\000\000\000\000\n\bP\016\000\000\b\004\000\000!\000\000\000\000\002\130\016\004\000\000\002\001\000\000\0000\000\012\004\0001p\128\000@\000\000\000\000\000\000\000 \000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000!\000\000\000\000\002\002\016\004\000\000\002\001\000\000\000\128\000\000\000\016\016\001\000\000\000\000\000\000\000\000 \000\000\000\004\004\000\000\000\000\000\000\000\000\000\000\000\000\000\001\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\128\000\000\000\000\016\000\000\000\000\000\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\0000\000\012\004\0001p\128\000@\000\000\000\000\002\016\000\000\000\000 !\192@\000\000 \016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\b\000\000@\004\000\000\000\000\000\000\000\000\128\000\002\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\128\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000@\000\000\000\000\000\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\192\0000\016\000\197\194\000\001\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\004\000\000\000\012\000\003\001\000\012\\ \000\016\000\000\000\000\000\132\000\000\000\000\b\bp0\000\000H\004\000\000!\000\000\000\000\002\002\024\004\000\000\002\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\016\000\000\000\000 !\192\192\000\001 \016\000\000\001\000\000\000\b\001D\024\000\000\000\000\000\000\000\000@\000\000\002\000Q\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\016\000\000\000\000\000\000 \000@\000\000\000\000\000\004\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\001\000\000\000\001\000\000\000\b\001D\b\000\000\000\000\000\000\000\000\192\0000\016\000\197\194\000\001\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\016\000\000\004\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000@\000\000\000@\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\192@\003\023\b\000\004\000\000\000\000\000\000\000\000\128\000\000\000\004\000\000\000\000\000@\000\000\000\000 \000\000\000\001\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000! \n\128\b\"\018\028\004\017\000v\001\002\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000@\000\000\000@\000\000\002\000Q\002\000\000\000\000\000\000\000\bH\002\160\002\b\132\135\001\004@\029\128@\128\018\016\000\000\000\000 !\192@\000\000 \016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\192\0000\016\000\197\198\000\001\000\000\000\000\000\0000\000\012\004\0001p\128\000@\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\001\000\000\000\000\003\000\000\192@\003\023\b\000\004\000\000\000\000\000!\000\000\000\000\002\002\028\012\000\000\002\001\000\000\b@\000\000\000\000\128\134\001\000\000\000\128@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\016\000\000\000\000 !\128@\000\000 \016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b@\000\000\000\000\128\132\001\000\000\000\128@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\132\128\"\000 \128Hp\000D\001\152\000\b\001! \b\128\b \018\016\000\017\000f\000\002\000@\128\000\000\000\000\016\001\128\000\000\000\000\000\000\000 \000\000\000\000\004\000 \000\000\000\000\000\000\000\000\000\000\000\000\001\000\b\000\000\000\000\000\000\000\000\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\000\000\000\004\000\000\000 \005\016 \000\000\000\000\000\000\000\132\128\"\000 \128Hp\000D\001\152\000\b\001! \b\128\b \018\016\000\017\000f\000\002\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\001\000\024\000\000\000\000\000\000\000\002\000\000\000\000\000@\002\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\128\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\192\0000\018\000\213\194\000\001\000\000\000\000\000\bX\n\160\002\012\016\135\000\004@\029\128\001\128\016\012\000\002\000\000\012\\ \000\016\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\192\0000\018\000\213\194\000\001\000\000\000\000\000\0000\000\012\004\0001p\128\000@\000\000\000\005\000\000\000\b\000\000\000\000@\000\000\000\000\004\001\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\192\0000\018\000\213\194\000\001\000\000\000\000\000\0000\000\b\000\0001p\128\000@\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\003\000\000\192H\003W\b\000\004\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\016\000\000\000\016\000\000\000\000\016\000\000\000\000\000\000\000\000\002\022\002\168\000\131\004!\192\001\016\007`\000 \004\133\128\170\000 \193\bp\000D\001\216\000\b\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\bH\002\160\002\b\000\135\000\004\000\029\128\000\128\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000! \b\128\b \002\024\000\016\000f\000\002\000HH\002 \002\b\000\132\000\004\000\025\128\000\128\016 \000\000\000\000\004\000`\000\000\000\000\000\000\000\b\000\000\000\000\001\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000@\002\000\000\000\000\000\000\000\000\000\000\000\000\000\016\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\192H\003W\b\000\004\000\000\000\000\000! \b\128\b \002\024\000\016\000f\000\002\000HH\002 \002\b\000\132\000\004\000\025\128\000\128\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\bH\002 \002\b\000\132\000\004\000\025\128\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000! \b\128\b \002\024\000\016\000f\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\018\000\136\000\130\000!\000\001\000\006`\000 \004\002\000\000\130\000\019\000\016\000\000\000\000\000\000\000\000\128\000 \128\004\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\002\018\000\136\000\130\001!\128\001\016\007`\016 \004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000! \b\128\b \018\024\000\017\000f\001\002\000HH\002 \002\b\004\132\000\004@\025\128\000\128\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000! \b\128\b \002\016\000\016\000f\000\002\000@ \000\b \0010\001\000\000\000\000\000\000\000\000\b\000\002\b\000L\000\000\000\000\000\000\000\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\016\000\0002\000\014\004\0001p\160\000@ \b\000\004\000\012\000\011\001\000\012\\ \000\016\000\000\000\001@\000\000\000\000\001\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\133\160\"\000 \130Hh\000D\003\152\004\b\001! \b\128\012 \018\028\000\017\000f\001\006\016HH\002 \002\b\004\135\000\004@\025\128@\132\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\132\128\"\000 \128H`\000D\001\152\004\bA\000H\000\000\000\000\128\002\000\000\000\128\000\000\000\000\000\000\000\000\000\000\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\128\"\000 \128\b`\000@\001\152\004\b\001! \b\128\b \002\016\000\016\000f\000\002\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000! \b\128\b \018\028\000\017\000v\001\002\000@\018\000\002\000\000 \000\160\000\000 \b\000\004\000\004\128\000\000\000\b\000(\000\000\b\002\000\001\000\000\000\000\000\001\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000! \b\128\012 \018\028\000\017\000f\001\006\016HH\002 \002\b\004\135\000\004@\025\128@\132\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\016\000\000\000\000\000\000\000\002 \000\000@\000@\006\000\000\000\000\000\000\000\000\128\000\000\000\000\016\001\128\000\000\000\000\000\000\000 \000\000\000\000\004\000 \000\000\000\000\000\000\000\000\000\000\000\000\001\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\0002\144\004$\0010H\172\000@d\000\001A\000\004\000\000\000 \r\016 \000\000@\000\000\000\000\132\000\000\000\000\n\bP0\000\000\b\004\000\000!\000\000\000\000\002\130\016\012\000\000\002\001\000\000\b@\000\000\000\000\128\132\003\000\000\000\128@\000\000 \000\000\000\004\004\000@\000\000\000\000\000\000\128\000\000\000\000\001\001\000\016\000\000\000\000\000\000\000\000\000\000\000\000@@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\002@\000#a\000\022\n7\196\143@\016>\000\000\0068\000\000\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\000\000\000\141\132\000X(\223\018=\000@\248\000\000\024\224\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000!\000\000\000\000\002\002\024\012\000\000\002\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\004\004\000\000\000\000\000\000\000\000\000\000\000\000\000\001\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\128\000\000\000\000\016\000\000\000\000\000\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\0000\000\012\004\0001p\128\000@\000\000\000\000\002\016\000\000\000\000 !\192\192\000\000 \016\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\016\000$\000\0026\016\001`\163|H\244\001\003\224\000\000c\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\b\216@\005\130\141\241#\208\004\015\128\000\001\142\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\128\000\004\000@\000\000\000\000\000\000\128\000\000\000 \000\001\000\016\000\000\000\000\000\000\000\000\000\000\b\000\000@\000\000\000\000\000\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\000\000\000\000\000\000\000\000\003)\000B@\019\004\138\192\004\006@\000\020\016\000\224\0000\016\000\197\194\000\001\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\003\000\000\192@\003\023\b\000\004\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\016\000\000\000\0026\016\001`\163|H\244\001\003\224\000\000c\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\b\216@\005\130\141\241#\208\004\015\128\000\001\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\132\000\000\000\000\b\b`0\000\000\b\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\002\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\128\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000@\000\000\000\000\000\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\192\0000\016\000\197\194\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\004\000\000\000\000\000\000\000\000\000\003)\000B@\019\004\138\192\004\006@\000\020\016\000\224\0000\016\000\197\194\000\001\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\003\000\000\192@\003\023\b\000\004\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\016\000\000\000\0026\016\001`\163|H\244\001\003\224\000\000c\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\b\216@\005\130\141\241#\208\004\015\128\000\001\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#a\000\022\n7\196\159@\016>\000\000\0068\b\216@\005\130\141\241#\208\004\015\128\000\001\142\b@\000\000\000\000\128\134\003\000\000\000\128@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\b\003D\024\000\000\016\000\000\000 \000@\000\000\002\000\209\006\000\000\004\000\000\000\000\000\016\000\000\000\1284@\128\000\001\000\000\000\000\000\004\000\000\000 \r\016 \000\000@\000\000\000\000\003!\004\003 \019\004\155@\004\006\000\000\004\016\031}\145\b/\227P\000L\028\030\227\139\002\131@2\016@ \0010I\180\000@`\000\000A\000\012\132\016\b\000L\018-\000\016\024\000\000\016@\003!\000\002\000\019\004\139@\004\006\000\000\004\016\000\000\000\000\000\000\000\b\000\b\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000@\000\000\000\000\000\000\128\001\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\004\000\000\000\004\000\000\000 \r\016 \000\000@\000\000\000\000\003\000\000\192@\003\023\b\000\004\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000@\000\000\016\000\000\000\000\016\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)\000B@\019\004\154\192\004\006\000\000\004\016\000\202@\016\144\004\193\"\176\001\001\128\000\001\004\0002\144\004$\0050H\172\000@`\000\000A\000\004\000\000\000 \r\016 \000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\001\000@\000\000\002\000\209\002\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\022\164\169A\138-3\251\193\016\030`\016x\212\133\169*Pb\139L\254\240D\007\152\004\0305\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\bH\002\160\002\b\132\135\003\004@\025\128A\128P\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000! \n\128\b\"\018\028\012\017\000f\001\006\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\132\128*\000 \136Hp0D\001\152\004\024\005\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\004\000\000\000\004\000\000\000 \r\016 \000\000@\000\000\000\000\132\128*\000 \136Hp0D\001\152\004\024\005\000\200A\000\128\004\193\"\208\001\001\128\000\001\004\0002\016\000 \0010H\180\000@`\000\000A\000\000\000\000\000\000\000\000\128\000\128\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\002\000\000\000\000\004\000\000\000\000\000\004\000\000\000\000\000\000\000\000\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\192H\003W\b\000\004\000\000\000\000\000 \000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\000\000\000\b\bp0\000\000\b\004\000\004\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\016\000\000\000\000 !\128\192\000\000 \016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\002\000\209\002\000\000\004\000\000\000\000\b@\000\000\000\000\128\135\003\000\000\000\128@\000B\016\000\000\000\000 !\128\192\000\000 \016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\192\0000\016\000\197\198\000\001\000\000\000\000\000\0000\000\012\004\0001p\128\000@\000\000\000\000\002\016\000\000\000\000 !\128\192\000\000 \016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\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\000\000\000\b\b`0\000\000\b\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\016\000\000\000\000 !\000\192\000\000 \016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000! \b\128\b \018\028\000\017\000f\000\002\000@0\000\012\004\1285p\128\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\001\000\000\000\b\003D\b\000\000\016\000\000\000\000! \b\128\b \018\028\000\017\000f\000\002\000@2\144\004$\0010H\172\000@d\000\001A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\132\128\"\000 \128H`\000D\001\152\000\b\001! \b\128\b \018\016\000\017\000f\000\002\000@\128\000\000\000\000\016\001\128\000\000\000\000\000\000\000 \000\000\000\000\004\000 \000\000\000\000\000\000\000\000\000\000\000\000\001\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\0002\144\004$\0010H\172\000@d\000\001A\002\018\000\136\000\130\001!\128\001\016\006`\000 \004\132\128\"\000 \128H@\000D\001\152\000\b\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\000\000\000\000\000\000\000\000\000\000\000\132\128\"\000 \128H@\000@\001\152\000\b\000\000\200A\000\192\004\193&\208\001\001\128\000\001\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\128\"\000 \128H@\000D\001\152\000\b\001! \b\128\b \018\024\000\017\000f\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\018\000\136\000\130\001!\000\001\016\006`\000 \004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\128\"\000 \128H`\000@\001\152\000\b\000! \b\128\b \018\016\000\016\000f\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\bH\002 \002\b\004\132\000\006@\025\128\000\128\016\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000! \b\128\b \018\024\000\016\000f\000\002\000\bH\002 \002\b\004\132\000\004\000\025\128\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\196\128*\000 \194Hp\000D\001\216\000\136\0010\000\002\000\000\016\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\016\000\000\000\000\0010D\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0000\000\012\004\0001p\128\000@\000\000\000\000\000\000\000 \000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000!\000\000\000\000\002\002\016\012\000\000\002\001\000\000\b\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\016 \000\016\000 A\000\000\004\000\000\000\000\000\004\b\000\000\000\b\016@\000\001\000\000\000\000\000\001\002\000\000\000\002\004\000\000\000@\000\000\000\000\000\000\002\000\000\000\128\004\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\004\001\000\000\002\012\016\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\002\000\000\016\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000 \000\000\000\000\000\000\000\000\000\002@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \200@\000\128\004\193\"\208\001\001\160\000\001\020\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\018R\236>\131\225a\192\255\150\007x\183\231\015\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\002\000\b\000\000\002\000\000\000@\000H\000\000\000\000\128\002\000\000\000\128\000\000\016\000\018\000\000\000\000 \000\128\000\000 \000\000\000\002\018\000\136\000\194\001!\192\001\016\007`\000a\000\001 \000\000\000\002\000\b\000\000\002\000\000\000\000! \b\128\b \018\028\000\017\000f\000\002\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\018\000\136\000\130\001!\128\001\016\006`\000!\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\018\000\136\000\194\001!\192\001\016\007`\000a\000\001 \000\000\000\002\000\b\000\000\002\000\000\000\000! \b\128\b \018\028\000\017\000f\000\002\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\004\000\000\000\000\000\000\000\000\000\132\128\"\b \128H`\000D\001\216\004\b\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\bH\002 \002\b\004\134\000\004@\025\128@\128\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000H\000\b\000\000\128\002\000\000\000\128\000\000\016\000\018\000\000\000\000 \000\128\000\000 \000\000\004\002\018\000\136\000\130\001!\128\001\016\006`\000!\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000@\000\002\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\128\000\000\000\000\000\192\000 \000\000\197\198\000\001 \000 \000\000\0000\000\b\000\0001p\128\000H\000\b\000\000\000\000\000\000\000\000\000\000\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\000\000@\000\000\001 \000\000\000\000\0000\000\b\000\0001p\128\000H\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \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\000\000\000\003\000\000\192@\003\023\b\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\016\000\000\004\000\000\000\000\004\000\000\000\016\000\000\000\000\000\001\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\000\000\000\000\000\012\000\003\001\000\012\\ \000\016\000\000\000\000\000\000\000\b\000\000\000\000\016\000\000\000\000\001\000\000\000\000\002\000\000\000\000\004\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012\000\003\001\000\012\\ \000\016\000\000\000\000\000\000\000\b\000\000\000\000\016\000\000\000\000\001\000\000\000\000\000\000\000@@\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000! \b\128\b \018\028\000\017\000f\001\002\000@\000\000\000\000\000\000\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\224@\003\023\n\000\004\002\000\128\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\bH\002 \002\b\000\134\000\004\000\025\128@\128\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000H\000\b\000\000\128\002\000\000\000\128\000\000\016\000\018\000\000\000\000 \000\128\000\000 \000\000\004\002\018\000\136\000\130\000!\128\001\000\006`\000!\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\001\000\000\000\000\000\000\000\000\000! \b\130\b \002\024\000\016\000v\001\018\000@2\000\014\004\0001p\160\000@ \b\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\132\128\"\000 \128\b`\000@\001\152\004\b\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\004\128\000\128\000\b\000 \000\000\b\000\000\001\000\001 \000\000\000\002\000\b\000\000\002\000\000\000@! \b\128\b \002\024\000\016\000f\000\002\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\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\000\128\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\132\128\"\000 \128Hp\000D\001\152\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000#a\000\022\n7\196\143@\016>\000\000\0068\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\0026\016\001`\163|H\244\001\003\224\000\000c\128\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\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\000\000\000\000\000\000\000\000\000\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\128 \000 \128\b@\000@\001\144\000\b\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\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\192@\003\023\b\000\004\000\000\000\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\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000#a\000\022\n7\196\143@\016>\000\000\0068\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\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\002\000\019\004\139@\004\006\128\000\004\016\000\000\000\000\000\000\000\004\000\000\000\004\000H\017\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000'\225 \022*\183\204\207@T?\144\000\0148\000@\000\000\000\000@\000\000\000\000\000\000\000\000\000Z\018\000\002\b4\132\004\004@9\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\128 \000 \128H@\000D\001\144@\b\000\000@\000\000\000\000\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000H\002\000\002\b\004\132\000\004\000\024\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000 \000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t\248H\005\138\173\2433\208\021\015\228\000\003\142\002~\018\001b\171|\204\244\005C\249\000\000\227\128\018\000\128\000\130\001!\000\001\016\006@\000 \000\004\128 \000 \128H@\000D\001\144\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018\000\128\000\130\001!\128\001\016\006@\000 \000\004\128 \000 \128H@\000D\001\144\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\128 \000 \128H`\000D\001\144\000\b\000\001 \b\000\b \018\016\000\017\000d\000\002\000\000\000\000\000\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\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000")
|
|
|
|
and start =
|
|
7
|
|
|
|
and action =
|
|
((16, "C\134O\006B\154\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\240B\154\000\000\000\000\020\004B\154C\134\025\128\005\162\003$YJ\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\170\005B\000|\000\000\001r\000\b\000\000\001j\001|\000\252\000\000\006.\002\b\005\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\244\000\000\000\000\000\000\001vd\250\000\000\000\000\0032\000\000\000\000\000\000\003J\003B\000\000\000\000m\128N\200\020\004A\028Z\132\020\004R\154O\006\020\004Lj\000\000\021P\000\000\021P\000\007\000\000\0032\000\000\000\000\000\000\003\014\000\000\021P\000\000\004&^\208Y\002b\136\000\000\128\252wd\000\000J\136D8\000\000I*\027:M \0032m\218B\154C\134\000\000\000\000O\006\020\004R\188\021P\005|t>\000\000|\194B\154C\134O\006\020\004\000\000\000\000\000\000\0164\020\184\000V\007\174\000\000\003\180\bR\000\000\000\000\000\000\020\004\000\000@\190\000\000v\254C\134\000\000\000\000NF\020\004BjT\208\000\000\001\022\000\000\000\000\002\n\000\000\000\000F\b\001\022\028\000\003\200\000&\000\000\000\000\000\017\000\000A\028\004\228\005&\019\168\020\180\020\004C\134C\134EjEj\019\168\020\180\020\180\020\004\000\000\000\000\000\000O\006\020\004\000\000\000\244\000\000T\208qjqj\000\000\tL\000\000\000}\n@\000\000\005\144\000\000\000\000 \140d\250bD\000\000d\250bD\000\000d\250d\250\007\174\000\000d\250\0032\000\000\000\000T:d\250R\172D8\006\158\001\016\000\000\001\146\000\000\005j\000\000\n\138\000\000\000\000LZ\007\174\000\000\000\000D8\007 d\250\000\000MLD8N>\000\000\000\000\000\000\006\238\000\000d\250\000\000\000\252p\200\000\000d\250\005\192d\250\000\000\023|\007H\0032\000\000\000\000\024p\000\000\007\168\000\000V\\\n\176\000\000\007Td\250\011x\000\000\011\138\000\000\004F\000\000\000\000\005\152\000\000\000\000\000\000\026\232\027\220T\208N\198\020\004T\208\000\000\002\234\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000KnEH\000\000\000\000\000\000\001\236 \224qj\000\000\000\000rv\020\004T\208\000\000\000\000P(T\208Q\148w\144\000\000W\216\000\000T\208\000\000\000\000U\184\000\000\000\000\b\026\000\000\023<\000\000\000\000w\246\000\000k:xp\000\000\128F\003$\000\000\000\000v~\000\000\011\140\000\000\000\000\023\002q\254\000\000\000\000\000\000@\000\019\168\025\248\021\142\000\000\000\000\000\000\000\000\000\028\000\000\000\000W\146\006\244\b\b\002\198d\250\000\216\bx\000\000\000\000\b\222\b\b\005\172\000\000O\006G\176Ej\019\168\020\180\005\162\003\134\000&\000\000\b\030A\028A\028\005\162\003\134\003\134A\028\000\000g \001\224\021P\tL\007<u\194\000\000d\250cDd\250[>c\218d\250\004\174d\250dp\000\000\000\000\021J\001\016[\212\bR\001\016\\\142\000\000g\182\001\224\000\000A\028hL\000\000\0078\011\022]H\000\000\000\000\000\000\000\000\000\000\0240\000\000\000\000\027\134\000\000\t\210\020\180\000\000Y\238Bb\000\000\021\196\000\000\000\000A\028\024\170\000\000\000\000\000\000\000\000X\030\000\000\003\168\000\000I\168\006B\0224\000\000\021\218M\024O\006\020\004H\194N\198\020\004\0164\0164\000\000\000\000\000\000\000\000\001\232\020ZA\168\000\000O\188PrEj\019\168\020\180\006\150A\"\000\000\029\028\000\000Q(Q\222x\214\022dd\250\006B\000\000O\006\020\004\000\000rv\020\004qjT\208@\160\000\000O\006\020\004t\168\000b\000\000T\208@\000d\250\004\168\005\172\t\014\000\000\000\000\000\000F\b\005\b\005\b\000\000\t n^\000\000rv\020\004T\208\023\002\000\000N\198\020\004\0164\021\218\0164\002\220\003\158\000\000\000\000\0164\t\030\000\000\t\138\000\000\0164\003\208\t\222\000\000!\212\000\000\002\228\000\000\000\000\025\170\000\000\017(\022\206\000\000\000\000\000\000\005~\000\000\000\000\026\158\000\000\027\146\000\000\028\134\000\000\018\028\023\194\000\000\000\000\000\000B\154\000\000\000\000\000\000\000\000\029z\000\000\030n\000\000\031b\000\000 V\000\000!J\000\000\">\000\000#2\000\000$&\000\000%\026\000\000&\014\000\000'\002\000\000'\246\000\000(\234\000\000)\222\000\000*\210\000\000+\198\000\000,\186\000\000-\174\000\000.\162\000\000/\150\020\004T\208V\230F\240\005\b\nHh\196T\208\000\000\000\000\000\000d\250\000\000\026\132j\224\000\000\024\236d\250\027x\n\018\000\000\000\000\000\000\000\000h\196\000\000\000\000\002f\011\026\000\000B\146\000\000\000\000\131\230\000\000\006\180\000\000\000\000M \005\b\n\216d\250\006\162\000\000\000\000\0046\0032\000\000d\250\0076\000\000\000\000\011`\000\000\000\000\000\000\025@d\250\007\138\000\000\000\000\027\198\000\000\000\000yP\000\000\028\028y\182\000\000\028\186z0\000\000\029\016\004l\000\000\000\000\000\000\000\000\029\174T\208\030\004n\216n\216\000\000\000\000\000\0000\138\000\000\012<\000\000\000\000\000\000i*\000\000\000\000\000}\bb\000\000\t\002\000\000\000\000X\196H\194\000\000\000\000\012\128\000\000\000\000\000\000\006\132\000\000\000\000\000\000\0164\004\196\tV\000\000\t\246\000\000\005\184\000\0001~\000\000\012\134\000\000\006\172\000\0002r\000\000\012`\007\160\000\0003fd\246\000\000\"\200\000\000\n\234\b\148\000\0004Z\000\000\012\152\t\136\000\0005N\000\000i\172\n|\000\0006B\t\198\nJ\000\000\011<\011p\000\00076\000\000\r0\012d\000\0008*\000\000\t`\rX\000\0009\030\014L\000\000:\018\015@\019\016\000\000\000\000\000\000\011\222\000\000\000\000\rN\000\000\000\000\012\180\000\000\bV\000\000\000\000\000\000\012>\000\000\012f\000\000\000\000G\216\005\b\rZn^D8\002\234\000\000\000\000n^\000\000\000\000\000\000n^\000\000\r\168\000\000\000\000\000\000\000\000\000\000\000\000;\006T\208\000\000\000\000\014&\000\000;\250\000\000<\238\000\000\030\162\000\000\000\000\n6\000\000\000\000T\208\000\000\000\000zF\011\238\000\000\000\000I\168\000\000\011\208\000\000\000\000St\000\000\r`\000\000\000\000\0022\011v\000\000\000\000\021\218\025.\tL\000\000\031\152\000\000\031\172\021\184\022\234\000\000\000\000\012\210\000\000\000\000\001\230\021FU0\000\000\024\182\000\000\b\226\000\000\000\000\rt\000\000\000\000]\236\005\188\0022\000\000\000\000\011\186\000\000\000\000\014$\000\000\000\000\000\000\019\168\020\180\004\174\000\000\000\000\021l\003\200\000&\004\\\020\180u\nA\028\020\144\020\180u\136\r\226\000\000\000\000\004\\\000\000E$\020\004\000\142\000\000\007\128\014T\000\000\014\158\000\000\000\000\003\186D8\006\168\000\000\014\148\014*M \n^d\250\0190\005\216\rx\002\252\000\000\029\012\015F\000\000\006\168\000\000\000\000\015hD8^\132\000\000e\142D8\015<D8jD_\002\b\018\015\006\000\000\000\000\020\004}:\000\000T\208n\216\000\000\000\000\015x\000\000\000\000\000\000=\226\015\172qj>\214_\174\000\000\000\000Cj\000\000\029\232\000\000C\182\000\000\025$\000\000A\028\030\016\000\000}\156\000\000\019\168\020\180}\156\000\000\025\162\020\184\000V\0032\127PA\028z\212n\216\000\000\003\200\002\212\000&\004\\n\216\129~\003\200\000&\004\\n\216\129~\000\000\000\000\004\\n\216\000\000B\154C\134T\208F4\000\000\000\000B\154C\134Ej\019\168\020\180}\156\000\000\025\128\005\162\003$\014\232d\250\t\030\015\184\127\200\000\000n\216\000\000E$\020\004\000\142s\226\007:\011\b\015\176{.\t\248\015\014\020\004n\216\000\000\020\004n\216\000\000j\224\127B\024\172\b\138\000V\001\016o\162\000\000\000V\001\016o\162\000\000\025\162\003\200\007\152\022z\001T\000\000o\162\000\000\000&\015\016A\028}z\130\192\003\200\000&\015\018A\028}z\130\192\000\000\000\000\005P\000\000h\196\000\000A\028\128\020h\196\000\000\005P\000\000N\200\020\004A\028}z\000\000E$\020\004\000\142oV\020\184\020\184\019\174\b>\000\000\012\172\021P\011V\000\000\015\168\015Z\024`\020\004Fld\250\011T\000\000VP\003v\006p\012\186\000\000\r\244\000\000\015\218\015dd\250D|\000\000\020\004\t\132\011\216\000\000\r\246\000\000\015\222\015jM \011\232d\250StD|\000\000]\228\019\206\024`\000\000\016\002\tF\000V\000\000\r2\024`d\250\012>\014\n\0128\014\016\000\000\000\000d\250\b\194\003\254\000\000\000\000kT\000\000\000\000\014&\024`k\210D|\000\000\020\004d\250\012\214d\250S\252D|\000\000\011x\000\000\000\000D|\000\000\000\000VP\000\000n\216\129\130\019\174\b>\012\172\015\242\015\164\024`n\216\129\130\000\000\000\000\019\174\b>\012\172\016\000\015\142N\018f\012D8\016\022N\018d\250\003\254\016(N\018D8\016*N\018\r\002\0144lPl\206\000\000~\028\000\000\000\000n\216\130\206\019\174\b>\012\172\016 \015\172N\018n\216\130\206\000\000\000\000\000\000\127B\000\000\000\000\000\000\000\000\000\000\000\000h\196\000\000\129\252\020\004\021P\0160t>\000\000|\194\129\252\000\000\000\000\131N\020\004\021P\0166\015\198Y\002m\128\006\168\016r\000\000\000\000mFoV\020\004\000\000{\166\000\142\000\000\000\000o\162\131N\000\000\000\000\000\000v\006EZO\200\006\168\016t\000\000\000\000\000\000oV\020\004\000\000\006\168\016\132\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003v\020\184\019\174\b>\012\172\016lo\198B\178\020\004BjG\130\026\158\002\252\006\168\016r\003\198\000\000\000\000\016$\000\000\000\000F\224\000\000\n$\014H\000\000\014\146\000\000\016z\016\004d\250Wn\016~\004<\000\000\000\000\0166\000\000\000\000\029b\bf\r\162\000\000\016\150ph~J\005\b\0168d\250\012\238\000\000\000\000\016N\000\000\000\000\000\000F\224\000\000\nx\014\132\000\000\014\230\000\000\016\190\016HM \000\000\016\206q\n\132*\005\b\016ld\250\r<\000\000\000\000\016~\000\000\000\000\000\000\020\004\000\000F\224\000\000\020&\019\206B\178B\178r\240B\154\020\004}:T\208\007V\000\000\n:\000V\000\000\014\132B\178d\250\r>\007\174\000\000\020\004U\184o\198B\178\011\226B\178\000\000DfEH\000\000`B\000\000\000\000`\218\000\000\000\000ar\000\000\014\160B\178b\n}:T\208\007V\000\000\000\"\000\000\000\000N\018\014X\000\000\000\000L\028\016\214\000\000F\224\000\000B\178L\028F\224\000\000\020\004d\250F\224\000\000\014\148\000\000\000\000F\224\000\000\000\000G\130\000\000~vN\018\016\136B\178~\246o\198\000\000n\216\130t\019\174\b>\012\172\016\230o\198n\216\130t\000\000\000\000\000\000\131\\O\006\000\000\000\000\000\000\000\000\000\000\000\000\128\140n\216\000\000\129\252\000\000\000\000\000\000\000\000h\196\131\\\000\000\017\030\000\000\000\000\128\140\017&\000\000h\196\131\\\000\000\000\000\014\244\000\000\000\000f\138\026@\000\000\000\000@\160\000\000d\250\012H\000\000G\130\015H\000\000\000\000\000\000\014\172\000\000\000\000\000\000Ej\019\168\020\180\004\174\000\000Fz\000\000\030\220\000\000\001\180\000\000\000\000\0170\000\000\017Zv~\000\000?\202\017B\000\000\000\000\0178\0268\022h\000\142sj\007:\020\004\000\000n\216\000\000\000\000\000\000\000\000\000\000\000\000\000\000s|\007:\020\004\000\000\014\254t>\000\000|\194\000\000\017:\0268\022hn\216\000\000\017J\000\000\006\162\015D\020\004K\150\000\000\000\000\028F\132\\\000\000\000\000\016\226\000\000\0176d\250\000\000\r\144\t\150\007\174\000\000\000\000d\250\t\b\n\210\000\000d\250\n\240\006\168\017^\000\000\000\000{\170\000\000\000\000Y\002\000\000o\162\000\000\017\\\0268\023\\h\196\000\000\000\000\000\000\000\000\015(t>Y\002\000\000o\162\000\000\017^\0268\023\\h\196\000\000\015p\000\000\000\000\031\004\000\000n\216\000\000\017z\000\000\000\000\016\246\000\000\017\000\000\000\017\020\000\000\000\000K \017\022\000\000\000\000d\250\000\000\014\156\000\000\000\000\017\024\000\000\000\000T\208\031\150\000\000\000\000H\194\0032|h\000\000\000\000\000\000\000\000\000\000rh\023l\000\000\000\000\017\172\000\000JV\000\000\015\128\017\184\000\000\017\196\000\000I\168I\168\132>\132>\000\000\000\000nz\132>\000\000\000\000\000\000nz\132>\0178\000\000\017>\000\000"), (16, "\b\193\b\193\000\006\002.\006\005\b\193\002\154\002\158\b\193\002\202\002\214\b\193\003r\b\193\006n\002\218\b\193\023\138\b\193\b\193\b\193\0022\b\193\b\193\006\005\003f\003j\002\222\b\193\003\030\003\"\t\190\b\193\011\238\b\193\003\234\003&\023\142\002\226\006\202\b\193\b\193\003\178\003\182\b\193\003\186\003\014\003\198\003\206\006\170\004-\b\193\b\193\002\146\001v\b\182\003\026\b\193\b\193\b\193\007\234\007\238\007\250\b\014\001*\005R\b\193\b\193\b\193\b\193\b\193\b\193\b\193\b\193\b\193\b\130\000\238\b\193\015N\b\193\b\193\002b\b\142\b\166\b\250\005^\005b\b\193\b\193\b\193\004-\b\193\b\193\b\193\b\193\b\186\b\214\r\186\b\193\003v\b\193\b\193\000\238\b\193\b\193\b\193\b\193\b\193\b\193\005f\b\002\b\193\b\193\b\193\b\026\004.\t\014\015R\b\193\b\193\b\193\b\193\012e\012e\023\146\006r\006\r\012e\003}\012e\012e\015^\012e\012e\012e\012e\004R\012e\012e\0069\012e\012e\012e\001\206\012e\012e\006\r\012e\004-\012e\012e\012e\012e\012e\012e\012e\012e\015f\001j\0069\012e\004\190\012e\012e\012e\012e\012e\000\238\012e\012e\017\198\012e\003\202\012e\012e\012e\001\134\001\206\012e\012e\012e\012e\012e\012e\012e\000\238\012e\012e\012e\012e\012e\012e\012e\012e\012e\012e\012e\003}\012e\012e\001f\012e\012e\003U\003>\001r\004-\012e\012e\012e\012e\012e\001\130\012e\012e\012e\012e\012e\0252\012e\012e\004Z\012e\012e\003B\012e\012e\012e\012e\012e\012e\012e\012e\012e\012e\012e\012e\012e\0256\004-\012e\012e\012e\012e\001\153\001\153\001\153\004N\006\246\001\153\001\182\001\153\001\153\001\153\001\153\001\153\001\153\001\153\001\153\001\153\001\153\001\153\001\153\001\153\001\153\001\153\001\153\001\153\001\153\001\153\001\186\001\153\001\153\001\153\001\153\001\153\001\153\001\153\001\153\001\153\0072\b\157\001\153\001\146\001\153\001\153\001\153\001\153\001\153\001\153\001\153\001\153\001\153\001\153\001\198\001\153\001\153\001\153\004^\001\153\001\153\001\153\001\153\001\153\001\153\001\153\001\153\006E\001\153\001\153\001\153\001\153\001\153\001\153\001\153\001\153\001\153\001\153\001\153\001\153\001\153\001\153\n\154\001\153\001\153\n\166\003J\006E\007\242\001\153\001\153\001\153\001\153\001\153\001\153\001\153\001\153\001\153\001\153\001\153\014\150\b2\001\153\005\146\001\153\001\153\003N\001\153\001\153\001\153\001\153\001\153\001\153\001\153\001\153\001\153\001\153\001\153\001\153\001\153\b\157\001\153\001\153\001\153\001\153\001\153\t\245\t\245\003f\003j\tb\t\245\003J\t\245\t\245\003y\t\245\t\245\t\245\t\245\001\206\t\245\t\245\016\170\t\245\t\245\t\245\001b\t\245\t\245\tf\t\245\003N\t\245\t\245\t\245\t\245\t\245\t\245\t\245\t\245\001z\006\026\001\138\t\245\004-\t\245\t\245\t\245\t\245\t\245\002F\t\245\t\245\r\138\t\245\001\214\t\245\t\245\t\245\002z\004-\t\245\t\245\t\245\t\245\t\245\t\245\t\245\004-\t\245\t\245\t\245\t\245\t\245\t\245\t\245\t\245\t\245\t\245\t\245\000\238\t\245\t\245\003y\t\245\t\245\004-\001\002\001\190\004v\t\245\t\245\t\245\t\245\t\245\001\218\t\245\t\245\t\245\t\245\t&\006\134\tV\t\245\007\137\t\245\t\245\001\230\t\245\t\245\t\245\t\245\t\245\t\245\t\245\t\245\t\245\t\245\t\245\t\245\t\245\004-\t\245\t\245\t\245\t\245\t\245\003\153\003\153\004-\004-\006\230\003\153\002J\003\153\003\153\006\198\003\153\003\153\003\153\003\153\000\238\003\153\003\153\004-\003\153\003\153\003\153\t*\003\153\003\153\015n\003\153\007\174\003\153\003\153\003\153\003\153\003\153\003\153\003\153\003\153\r6\001\234\rB\003\153\000\238\003\153\003\153\003\153\003\153\003\153\bU\003\153\003\153\003!\003\153\001\206\003\153\003\153\003\153\007\230\000\238\003\153\003\153\003\153\003\153\003\153\003\153\003\153\003!\003\153\003\153\003\153\003\153\003\153\003\153\003\153\003\153\003\153\003\153\003\153\011&\t\030\tN\011\150\003\153\003\153\005\"\000\238\002\246\021\194\003\153\003\153\003\153\003\153\003\153\002V\003\153\003\153\003\153\003\153\t&\015\206\tV\003\153\n\154\003\153\003\153\n\166\003\153\003\153\003\153\003\153\003\153\003\153\003\153\003\153\003\153\003\153\003\153\003\153\003\153\006\198\003\153\003\153\003\153\003\153\003\153\003\141\003\141\001\002\001\190\bU\003\141\003\237\003\141\003\141\025\026\003\141\003\141\003\141\003\141\b\137\003\141\003\141\005&\003\141\003\141\003\141\022\n\003\141\003\141\003~\003\141\011.\003\141\003\141\003\141\003\141\003\141\003\141\003\141\003\141\007\174\n\154\015\022\003\141\n\166\003\141\003\141\003\141\003\141\003\141\000\238\003\141\003\141\000\238\003\141\004\178\003\141\003\141\003\141\005\161\015\030\003\141\003\141\003\141\003\141\003\141\003\141\003\141\014\254\003\141\003\141\003\141\003\141\003\141\003\141\003\141\003\141\003\141\003\141\003\141\003\237\t\030\tN\007&\003\141\003\141\b\230\001f\003U\003\130\003\141\003\141\003\141\003\141\003\141\004b\003\141\003\141\003\141\003\141\t&\025\030\tV\003\141\001\206\003\141\003\141\003\246\003\141\003\141\003\141\003\141\003\141\003\141\003\141\003\141\003\141\003\141\003\141\003\141\003\141\006\198\003\141\003\141\003\141\003\141\003\141\tq\tq\b\153\003\250\006\021\tq\005.\tq\tq\005\161\tq\tq\tq\tq\006\181\tq\tq\002\182\tq\tq\tq\014\202\tq\tq\006\021\tq\004-\tq\tq\tq\tq\tq\tq\tq\tq\004-\004-\018\n\tq\004-\tq\tq\tq\tq\tq\t\138\tq\tq\000\238\tq\012N\tq\tq\tq\001\150\018\022\tq\tq\tq\tq\tq\tq\tq\000\238\tq\tq\tq\tq\tq\tq\tq\tq\tq\tq\tq\000\238\tq\tq\001f\tq\tq\b\153\003U\006\166\004-\tq\tq\tq\tq\tq\nn\tq\tq\tq\tq\tq\018\162\tq\tq\004.\tq\tq\012&\tq\tq\tq\tq\tq\tq\tq\tq\tq\tq\tq\tq\tq\007\242\004-\tq\tq\tq\tq\ti\ti\004\206\012*\n\254\ti\000\238\ti\ti\018\170\ti\ti\ti\ti\004-\ti\ti\005\137\ti\ti\ti\003q\ti\ti\011\002\ti\014\210\ti\ti\ti\ti\ti\ti\ti\ti\007\174\b~\015v\ti\004N\ti\ti\ti\ti\ti\005\129\ti\ti\000\238\ti\012f\ti\ti\ti\000\238\004\174\ti\ti\ti\ti\ti\ti\ti\000\238\ti\ti\ti\ti\ti\ti\ti\ti\ti\ti\ti\004-\ti\ti\002\158\ti\ti\002\214\006~\006\150\011\026\ti\ti\ti\ti\ti\004f\ti\ti\ti\ti\ti\bV\ti\ti\004\138\ti\ti\004\222\ti\ti\ti\ti\ti\ti\ti\ti\ti\ti\ti\ti\ti\004N\017V\ti\ti\ti\ti\ty\ty\003f\017\190\002n\ty\000\238\ty\ty\017Z\ty\ty\ty\ty\002\158\ty\ty\017\210\ty\ty\ty\002\194\ty\ty\004\178\ty\b\137\ty\ty\ty\ty\ty\ty\ty\ty\005b\0116\004E\ty\007\002\ty\ty\ty\ty\ty\007n\ty\ty\000\238\ty\012z\ty\ty\ty\002\238\007\n\ty\ty\ty\ty\ty\ty\ty\000\238\ty\ty\ty\ty\ty\ty\ty\ty\ty\ty\ty\005\n\ty\ty\011Z\ty\ty\005\238\004E\018b\b\137\ty\ty\ty\ty\ty\015V\ty\ty\ty\ty\ty\002\250\ty\ty\006\130\ty\ty\rR\ty\ty\ty\ty\ty\ty\ty\ty\ty\ty\ty\ty\ty\000\238\b\137\ty\ty\ty\ty\tY\tY\002\209\004-\012\153\tY\006\146\tY\tY\004-\tY\tY\tY\tY\002\254\tY\tY\012\153\tY\tY\tY\011\242\tY\tY\004-\tY\000\n\tY\tY\tY\tY\tY\tY\tY\tY\012\014\000\238\012\030\tY\014\174\tY\tY\tY\tY\tY\bY\tY\tY\006\210\tY\012\154\tY\tY\tY\002\209\011\250\tY\tY\tY\tY\tY\tY\tY\rV\tY\tY\tY\tY\tY\tY\tY\tY\tY\tY\tY\011\254\tY\tY\bm\tY\tY\b\210\000\238\006\158\016\022\tY\tY\tY\tY\tY\b\242\tY\tY\tY\tY\tY\004-\tY\tY\002\158\tY\tY\012&\tY\tY\tY\tY\tY\tY\tY\tY\tY\tY\tY\tY\tY\t:\000\238\tY\tY\tY\tY\ta\ta\018\206\r\002\bY\ta\000\238\ta\ta\014\178\ta\ta\ta\ta\001\206\ta\ta\003\226\ta\ta\ta\012>\ta\ta\018\214\ta\000\238\ta\ta\ta\ta\ta\ta\ta\ta\012V\017.\012n\ta\bm\ta\ta\ta\ta\ta\007\181\ta\ta\tB\ta\012\174\ta\ta\ta\002z\012F\ta\ta\ta\ta\ta\ta\ta\002\250\ta\ta\ta\ta\ta\ta\ta\ta\ta\ta\ta\012J\ta\ta\007\162\ta\ta\019\022\021\226\006\198\026\"\ta\ta\ta\ta\ta\tR\ta\ta\ta\ta\ta\004-\ta\ta\002\250\ta\ta\017f\ta\ta\ta\ta\ta\ta\ta\ta\ta\ta\ta\ta\ta\n\134\021\234\ta\ta\ta\ta\t\153\t\153\022n\005\129\012\206\t\153\003\234\t\153\t\153\011&\t\153\t\153\t\153\t\153\004b\t\153\t\153\003\238\t\153\t\153\t\153\012\210\t\153\t\153\022v\t\153\000\238\t\153\t\153\t\153\t\153\t\153\t\153\t\153\t\153\012\230\n\190\012\250\t\153\r\254\t\153\t\153\t\153\t\153\t\153\007\173\t\153\t\153\005\002\t\153\012\194\t\153\t\153\t\153\004j\tb\t\153\t\153\t\153\t\153\t\153\t\153\t\153\026:\t\153\t\153\t\153\t\153\t\153\t\153\t\153\t\153\t\153\t\153\t\153\012\150\t\153\t\153\bq\t\153\t\153\023\002\015\138\014\006\007r\t\153\t\153\t\153\t\153\t\153\003\018\t\153\t\153\t\153\t\153\t\153\011\250\t\153\t\153\n\226\t\153\t\153\000\238\t\153\t\153\t\153\t\153\t\153\t\153\t\153\t\153\t\153\t\153\t\153\t\153\t\153\012\218\000\238\t\153\t\153\t\153\t\153\t\137\t\137\001\218\014R\019\150\t\137\018\146\t\137\t\137\018r\t\137\t\137\t\137\t\137\006.\t\137\t\137\b\133\t\137\t\137\t\137\011\018\t\137\t\137\026>\t\137\005\018\t\137\t\137\t\137\t\137\t\137\t\137\t\137\t\137\005\026\0062\014\218\t\137\bq\t\137\t\137\t\137\t\137\t\137\000\238\t\137\t\137\014.\t\137\012\222\t\137\t\137\t\137\n\222\012F\t\137\t\137\t\137\t\137\t\137\t\137\t\137\014\026\t\137\t\137\t\137\t\137\t\137\t\137\t\137\t\137\t\137\t\137\t\137\r2\t\137\t\137\018\210\t\137\t\137\011B\014V\014\030\011&\t\137\t\137\t\137\t\137\t\137\002J\t\137\t\137\t\137\t\137\t\137\019\154\t\137\t\137\007\189\t\137\t\137\011\210\t\137\t\137\t\137\t\137\t\137\t\137\t\137\t\137\t\137\t\137\t\137\t\137\t\137\014\222\004\178\t\137\t\137\t\137\t\137\t\129\t\129\011\214\019.\004\178\t\129\024\226\t\129\t\129\0236\t\129\t\129\t\129\t\129\012\022\t\129\t\129\012^\t\129\t\129\t\129\012v\t\129\t\129\004N\t\129\011\210\t\129\t\129\t\129\t\129\t\129\t\129\t\129\t\129\018\238\012\026\0142\t\129\012b\t\129\t\129\t\129\t\129\t\129\000\238\t\129\t\129\012\170\t\129\012\242\t\129\t\129\t\129\nn\014\138\t\129\t\129\t\129\t\129\t\129\t\129\t\129\rJ\t\129\t\129\t\129\t\129\t\129\t\129\t\129\t\129\t\129\t\129\t\129\0196\t\129\t\129\014\142\t\129\t\129\rb\018\166\002\233\019B\t\129\t\129\t\129\t\129\t\129\005\145\t\129\t\129\t\129\t\129\t\129\018j\t\129\t\129\rj\t\129\t\129\012\022\t\129\t\129\t\129\t\129\t\129\t\129\t\129\t\129\t\129\t\129\t\129\t\129\t\129\000\238\012^\t\129\t\129\t\129\t\129\t\145\t\145\012\238\004N\014B\t\145\000\238\t\145\t\145\023\026\t\145\t\145\t\145\t\145\014\186\t\145\t\145\r>\t\145\t\145\t\145\r~\t\145\t\145\019\130\t\145\014F\t\145\t\145\t\145\t\145\t\145\t\145\t\145\t\145\015\154\022J\014\190\t\145\003e\t\145\t\145\t\145\t\145\t\145\000\238\t\145\t\145\026\030\t\145\r\006\t\145\t\145\t\145\020*\019\"\t\145\t\145\t\145\t\145\t\145\t\145\t\145\022*\t\145\t\145\t\145\t\145\t\145\t\145\t\145\t\145\t\145\t\145\t\145\022\170\t\145\t\145\007B\t\145\t\145\r\174\018\174\018\218\007\173\t\145\t\145\t\145\t\145\t\145\019B\t\145\t\145\t\145\t\145\t\145\001\206\t\145\t\145\004b\t\145\t\145\014\230\t\145\t\145\t\145\t\145\t\145\t\145\t\145\t\145\t\145\t\145\t\145\t\145\t\145\r\218\004b\t\145\t\145\t\145\t\145\t\225\t\225\014\234\005\141\007\185\t\225\023\154\t\225\t\225\026.\t\225\t\225\t\225\t\225\019\n\t\225\t\225\019:\t\225\t\225\t\225\0152\t\225\t\225\015Z\t\225\023\158\t\225\t\225\t\225\t\225\t\225\t\225\t\225\t\225\020.\023\218\021\230\t\225\021\238\t\225\t\225\t\225\t\225\t\225\012\161\t\225\t\225\024\254\t\225\r\018\t\225\t\225\t\225\022r\019f\t\225\t\225\t\225\t\225\t\225\t\225\t\225\015b\t\225\t\225\t\225\t\225\t\225\t\225\t\225\t\225\t\225\t\225\t\225\012\173\t\225\t\225\007B\t\225\t\225\022z\005\133\015~\024\186\t\225\t\225\t\225\t\225\t\225\015\130\t\225\t\225\t\225\t\225\t\225\001\206\t\225\t\225\000\238\t\225\t\225\023\014\t\225\t\225\t\225\t\225\t\225\t\225\t\225\t\225\t\225\t\225\t\225\t\225\t\225\023n\001\206\t\225\t\225\t\225\t\225\003\137\003\137\007\177\007B\024\238\003\137\023\222\003\137\003\137\027\031\003\137\003\137\003\137\003\137\025\178\003\137\003\137\007B\003\137\003\137\003\137\025\230\003\137\003\137\026\194\003\137\015\170\003\137\003\137\003\137\003\137\003\137\003\137\003\137\003\137\026\150\015\190\025\002\003\137\015\214\003\137\003\137\003\137\003\137\003\137\015\234\003\137\003\137\016\018\003\137\004E\003\137\003\137\003\137\024\190\016&\003\137\003\137\003\137\003\137\003\137\003\137\003\137\017&\003\137\003\137\003\137\003\137\003\137\003\137\003\137\003\137\003\137\003\137\003\137\0172\t\030\tN\003\218\003\137\003\137\005\234\004\193\017\218\017\242\003\137\003\137\003\137\003\137\003\137\002\194\003\137\003\137\003\137\003\137\t&\024\242\tV\003\137\018z\003\137\003\137\018~\003\137\003\137\003\137\003\137\003\137\003\137\003\137\003\137\003\137\003\137\003\137\003\137\003\137\026\198\003\137\003\137\003\137\003\137\003\137\001\221\001\221\018\182\018\186\018\226\001\221\018\230\002\158\001\221\019\018\002\214\001\221\t6\001\221\019\202\002\218\001\221\019\206\001\221\001\221\001\221\019\242\001\221\001\221\019\246\t>\020\006\002\222\001\221\001\221\001\221\001\221\001\221\tF\001\221\020\022\020\"\020^\002\226\020b\001\221\001\221\001\221\001\221\001\221\020\174\003\014\001\190\020\214\001\221\020\218\001\221\001\221\002\146\020\234\021:\003\026\001\221\001\221\001\221\007\234\007\238\007\250\021Z\0122\005R\001\221\001\221\001\221\001\221\001\221\001\221\001\221\001\221\001\221\021\154\t\030\tN\021\190\001\221\001\221\021\206\021\246\021\250\022\006\005^\005b\001\221\001\221\001\221\022\022\001\221\001\221\001\221\001\221\012:\0222\012\138\001\221\022B\001\221\001\221\022V\001\221\001\221\001\221\001\221\001\221\001\221\005f\b\002\001\221\001\221\001\221\b\026\004.\022\130\022\134\001\221\001\221\001\221\001\221\t\201\t\201\022\146\022\162\022\182\t\201\023\170\002\158\t\201\024\002\002\214\t\201\t\201\t\201\024*\002\218\t\201\024\146\t\201\t\201\t\201\024\162\t\201\t\201\025>\t\201\025F\002\222\t\201\t\201\t\201\t\201\t\201\t\201\t\201\025V\025b\025\198\002\226\025\218\t\201\t\201\t\201\t\201\t\201\026\n\003\014\001\190\026\018\t\201\026N\t\201\t\201\002\146\026v\026\174\003\026\t\201\t\201\t\201\007\234\007\238\007\250\026\222\t\201\005R\t\201\t\201\t\201\t\201\t\201\t\201\t\201\t\201\t\201\026\234\t\201\t\201\026\242\t\201\t\201\026\251\027\011\027+\027w\005^\005b\t\201\t\201\t\201\027\139\t\201\t\201\t\201\t\201\t\201\027\147\t\201\t\201\027\207\t\201\t\201\027\215\t\201\t\201\t\201\t\201\t\201\t\201\005f\b\002\t\201\t\201\t\201\b\026\004.\000\000\000\000\t\201\t\201\t\201\t\201\t\197\t\197\000\000\000\000\000\000\t\197\000\000\002\158\t\197\000\000\002\214\t\197\t\197\t\197\000\000\002\218\t\197\000\000\t\197\t\197\t\197\000\000\t\197\t\197\000\000\t\197\000\000\002\222\t\197\t\197\t\197\t\197\t\197\t\197\t\197\000\000\000\000\000\000\002\226\000\000\t\197\t\197\t\197\t\197\t\197\000\000\003\014\001\190\000\000\t\197\000\000\t\197\t\197\002\146\000\000\000\000\003\026\t\197\t\197\t\197\007\234\007\238\007\250\000\000\t\197\005R\t\197\t\197\t\197\t\197\t\197\t\197\t\197\t\197\t\197\000\000\t\197\t\197\000\000\t\197\t\197\000\000\000\000\000\000\000\000\005^\005b\t\197\t\197\t\197\000\000\t\197\t\197\t\197\t\197\t\197\000\000\t\197\t\197\000\000\t\197\t\197\000\000\t\197\t\197\t\197\t\197\t\197\t\197\005f\b\002\t\197\t\197\t\197\b\026\004.\000\000\000\000\t\197\t\197\t\197\t\197\002)\002)\000\000\000\000\000\000\002)\000\000\002\158\002)\000\000\002\214\002)\t6\002)\000\000\002\218\002)\000\000\002)\002)\002)\000\000\002)\002)\000\000\t>\000\000\002\222\002)\002)\002)\002)\002)\tF\002)\007\161\000\000\000\000\002\226\007\161\002)\002)\002)\002)\002)\000\000\003\014\001\190\000\000\002)\000\000\002)\002)\002\146\000\000\000\000\003\026\002)\002)\002)\007\234\007\238\007\250\000\000\0122\005R\002)\002)\002)\002)\002)\002)\002)\002)\002)\007\161\004\149\002)\000\000\002)\002)\000\000\000\000\004-\000\000\005^\005b\002)\002)\002)\004-\002)\002)\002)\002)\006R\007\161\000\000\002)\004\149\002)\002)\004-\002)\002)\002)\002)\002)\002)\005f\b\002\002)\002)\002)\b\026\004.\000\000\000\000\002)\002)\002)\002)\004-\000\000\004-\000\000\004-\004-\004-\004-\004-\004-\004-\004\218\004-\000\238\004-\004-\000\238\004-\004-\004-\004-\004-\004-\004-\004-\004-\004-\004-\000\000\004-\004-\000\000\000\238\004-\004-\004-\004-\004-\004-\004-\004-\000\000\004-\004-\004-\004-\004-\004-\004-\004-\002\250\004-\004-\004-\004-\004-\004-\004-\004-\000\238\004-\004-\004-\004-\004-\004-\004-\004-\000\000\000\000\004-\006\242\000\000\004-\004-\004-\000\238\004-\000\000\000\000\004-\004-\004-\004-\004-\004-\004-\004-\004-\b6\001\190\004-\004-\003\170\002\209\002\158\004-\002\209\018V\014\"\004-\004-\003\138\0146\014J\014Z\000\000\000\000\004-\004-\004-\007^\000\000\004-\004-\004-\004-\000\000\000\129\004-\000\129\000\n\000\129\000\129\000\129\000\129\000\129\000\129\000\129\000\238\000\129\022\214\000\129\000\129\003\166\000\129\000\129\002\209\000\000\000\129\000\129\002\146\000\129\000\129\000\000\000\129\000\000\000\129\000\129\002\209\002\209\000\129\000\129\000\000\000\129\000\129\000\129\000\000\000\129\015&\000\129\000\129\000\129\000\129\000\129\000\129\000\129\000\129\002\250\006\190\000\129\000\129\012Q\012=\000\129\000\129\000\000\000\129\000\129\000\129\000\129\000\129\000\129\000\129\000\129\000\129\002\209\002\209\000\000\000\000\012Q\000\129\000\000\000\129\000\000\000\129\002\026\006\133\000\000\000\129\000\129\000\129\000\129\000\129\000\129\000\129\000\129\b6\014\154\002\"\000\129\000\n\002&\012=\000\000\000\222\006Z\014\"\b\177\000\129\006\133\0146\014J\014Z\007\186\000\129\000\129\000\129\000\129\000\000\000\000\000\129\000\129\000\129\000\129\002\025\002\025\014z\000\000\002\209\002\025\b\177\002\158\002\025\007\190\002\214\002\025\000\000\002\025\000\000\002\218\002\025\007:\002\025\002\025\002\025\000\000\002\025\002\025\000\000\007B\000\000\002\222\002\025\002\025\002\025\002\025\002\025\007F\002\025\007\174\000\000\000\000\002\226\000\000\002\025\002\025\002\025\002\025\002\025\006\157\003\014\007\254\000\238\002\025\000\000\002\025\002\025\002\146\000\000\000\000\003\026\002\025\002\025\002\025\007\234\007\238\007\250\000\000\006\157\005R\002\025\002\025\002\025\002\025\002\025\002\025\002\025\002\025\002\025\000\000\t\030\tN\015N\002\025\002\025\002b\000\000\000\000\000\000\005^\005b\002\025\002\025\002\025\000\000\002\025\002\025\002\025\002\025\t&\007\194\tV\002\025\000\000\002\025\002\025\000\000\002\025\002\025\002\025\002\025\002\025\002\025\005f\b\002\002\025\002\025\002\025\b\026\004.\000\000\015R\002\025\002\025\002\025\002\025\0025\0025\006\157\000\000\0059\0025\007E\000\000\0025\015^\000\000\0025\007\246\0025\b\181\000\000\0025\000\000\0025\0025\0025\002\158\0025\0025\000\000\000\000\b\165\000\000\0025\0025\0025\0025\0025\000\000\0025\015f\007E\b\181\000\000\000\000\0025\0025\0025\0025\0025\006:\000\000\0059\b\165\0025\007E\0025\0025\007E\bv\005\246\000\000\0025\0025\0025\007E\003\226\025j\017\194\007E\0059\0025\0025\0025\0025\0025\0025\0025\0025\0025\005\250\t\030\tN\015N\0025\0025\002b\000\000\000\000\000\000\000\238\002\250\0025\0025\0025\000\000\0025\0025\0025\0025\t&\000\000\tV\0025\000\000\0025\0025\000\000\0025\0025\0025\0025\0025\0025\bA\000\000\0025\0025\0025\000\238\t\n\000\000\015R\0025\0025\0025\0025\0021\0021\000\000\001\002\001\190\0021\000\000\005\254\0021\015^\005\194\0021\000\000\0021\000\000\b\165\0021\006\n\0021\0021\0021\006\022\0021\0021\bA\000\000\000\000\000\000\0021\0021\0021\0021\0021\000\000\0021\015f\005\254\000\000\000\000\005\194\0021\0021\0021\0021\0021\bA\006\n\000\000\000\000\0021\006\022\0021\0021\000\000\000\000\007\142\006\242\0021\0021\0021\000\000\000\000\021\006\000\000\000\000\000\000\0021\0021\0021\0021\0021\0021\0021\0021\0021\007\146\t\030\tN\bA\0021\0021\000\000\004\218\000\000\000\000\bA\001\206\0021\0021\0021\000\000\0021\0021\0021\0021\t&\007^\tV\0021\000\000\0021\0021\000\000\0021\0021\0021\0021\0021\0021\b=\000\000\0021\0021\0021\000\238\018\130\007\202\006\242\0021\0021\0021\0021\002\029\002\029\002\209\000\000\019\n\002\029\019\014\000\000\002\029\000\000\002\146\002\029\000\000\002\029\007\206\000\000\002\029\019&\002\029\002\029\002\029\000\000\002\029\002\029\b=\000\000\000\n\012\021\002\029\002\029\002\029\002\029\002\029\000\000\002\029\007^\000\000\000\000\000\000\000\000\002\029\002\029\002\029\002\029\002\029\b=\012\021\012\021\000\000\002\029\012\021\002\029\002\029\000\238\002\209\000\000\006\242\002\029\002\029\002\029\000\000\014b\000\000\000\000\000\000\000\000\002\029\002\029\002\029\002\029\002\029\002\029\002\029\002\029\002\029\016V\t\030\tN\b=\002\029\002\029\000\000\004\218\000\000\000\000\b=\000\238\002\029\002\029\002\029\000\000\002\029\002\029\002\029\002\029\t&\007^\tV\002\029\000\000\002\029\002\029\000\000\002\029\002\029\002\029\002\029\002\029\002\029\017\142\000\000\002\029\002\029\002\029\000\238\000\000\012\021\000\000\002\029\002\029\002\029\002\029\002-\002-\002\209\002\209\016\130\002-\nM\000\000\002-\n\178\000\n\002-\000\000\002-\t\030\tN\002-\002\209\002-\002-\002-\000\000\002-\002-\000\000\002\209\002\209\000\n\002-\002-\002-\002-\002-\t&\002-\tV\nM\016Z\002\209\004\153\002-\002-\002-\002-\002-\006V\002\158\000\000\000\000\002-\nM\002-\002-\nM\011R\002\209\000\000\002-\002-\002-\nM\000\000\004\153\000\000\nM\000\000\002-\002-\002-\002-\002-\002-\002-\002-\002-\024\202\006\242\002-\007\173\002-\002-\007\173\000\000\000\000\000\000\000\000\003\226\002-\002-\002-\000\000\002-\002-\002-\002-\024\206\000\000\022*\002-\000\000\002-\002-\000\000\tn\002-\002-\002-\002-\002-\012\029\000\000\002-\002-\002-\000\000\000\000\007^\007\173\002-\002-\002-\002-\b\189\b\189\000\000\000\000\004-\b\189\012\029\012\029\b\189\007\173\012\029\b\189\000\238\b\189\000\000\000\000\t\150\000\000\b\189\t\186\b\189\000\000\b\189\b\189\000\000\000\000\000\000\000\000\t\206\t\230\t\238\t\214\t\246\000\000\b\189\007\173\000\000\006\153\000\000\004-\b\189\b\189\t\254\n\006\b\189\000\000\000\238\004-\000\000\b\189\000\000\n\014\b\189\000\000\000\000\000\000\006\153\b\189\b\189\000\238\006\153\000\000\007\173\000\000\000\000\000\000\b\189\b\189\t\158\t\222\n\022\n\030\n.\b\189\b\189\000\000\012\029\b\189\000\000\b\189\n6\000\000\000\000\000\000\000\000\0121\000\000\b\189\b\189\n>\000\000\b\189\b\189\b\189\b\189\000\000\000\238\0121\b\189\000\000\b\189\b\189\000\000\n^\b\189\nf\n&\b\189\b\189\012\025\000\000\b\189\nF\b\189\021\178\000\000\000\000\006\242\b\189\b\189\nN\nV\002a\002a\000\000\0121\006\153\002a\012\025\012\025\002a\000\000\012\025\002a\000\000\002a\007\154\000\000\002a\000\000\002a\002a\002a\000\000\002a\002a\000\000\000\000\000\000\000\000\002a\002a\002a\002a\002a\0121\002a\007^\0121\006\173\000\000\000\000\002a\002a\002a\002a\002a\000\000\000\238\000\000\000\000\002a\000\000\002a\002a\000\238\000\000\001*\006\173\002a\002a\002a\006\173\002\209\002\209\002\134\000\000\000\000\002a\002a\t\158\002a\002a\002a\002a\002a\002a\000\000\012\025\002a\000\000\002a\002a\000\000\000\000\000\000\000\000\000\238\000\n\002a\002a\002a\000\000\002a\002a\002a\002a\000\000\000\000\001\206\002a\000\000\002a\002a\000\000\002a\002a\002a\002a\002a\002a\025\250\000\000\002a\002a\002a\002\209\011f\000\000\000\000\002a\002a\002a\002a\002I\002I\000\000\000\000\005B\002I\000\238\011n\002I\000\000\011z\002I\000\000\002I\000\000\002z\002I\011\134\002I\002I\002I\011\146\002I\002I\000\000\000\000\000\000\000\000\002I\002I\002I\002I\002I\000\000\002I\000\000\007=\000\000\000\000\000\000\002I\002I\002I\002I\002I\004v\000\000\000\000\004\197\002I\007=\002I\002I\005\194\000\000\000\000\000\000\002I\002I\002I\007=\000\000\000\000\000\000\007=\000\000\002I\002I\t\158\002I\002I\002I\002I\002I\002I\000\000\006\242\002I\000\000\002I\002I\000\000\000\000\000\000\000\000\007U\007\157\002I\002I\002I\007\157\002I\002I\002I\002I\bb\000\000\000\000\002I\000\000\002I\002I\000\000\002I\002I\002I\002I\002I\002I\000\000\000\000\002I\002I\002I\004-\007U\007^\000\000\002I\002I\002I\002I\002U\002U\000\000\000\000\007\157\002U\000\238\007U\002U\000\000\005\194\002U\000\238\002U\004-\000\000\t\150\007U\002U\002U\002U\007U\002U\002U\000\000\007\157\000\000\000\000\002U\002U\002U\t\214\002U\000\000\002U\004-\007q\000\000\000\000\000\000\002U\002U\002U\002U\002U\000\000\000\000\000\238\000\000\002U\005\254\002U\002U\005\194\000\000\000\000\006\242\002U\002U\002U\007q\000\000\004\218\000\000\007q\000\000\002U\002U\t\158\t\222\002U\002U\002U\002U\002U\016F\006\242\002U\000\000\002U\002U\000\000\000\000\000\000\000\000\007i\000\000\002U\002U\002U\000\000\002U\002U\002U\002U\016b\007^\000\000\002U\000\000\002U\002U\022\"\002U\002U\002U\002U\002U\002U\000\000\000\000\002U\002U\002U\000\238\007i\007^\000\000\002U\002U\002U\002U\002e\002e\000\000\000\000\000\000\002e\000\238\011\170\002e\000\000\007i\002e\000\238\002e\000\000\000\000\002e\007i\002e\002e\002e\007i\002e\002e\000\000\000\000\000\000\000\000\002e\002e\002e\002e\002e\000\000\002e\000\000\0079\000\000\000\000\000\000\002e\002e\002e\002e\002e\000\000\000\000\000\000\000\000\002e\0079\002e\002e\005\194\000\000\000\000\006\242\002e\002e\002e\0079\000\000\000\000\000\000\0079\000\000\002e\002e\t\158\002e\002e\002e\002e\002e\002e\025*\006\242\002e\000\000\002e\002e\000\000\000\000\000\000\000\000\000\238\000\000\002e\002e\002e\000\000\002e\002e\002e\002e\026\206\007^\000\000\002e\000\000\002e\002e\000\000\002e\002e\002e\002e\002e\002e\000\000\000\000\002e\002e\002e\000\238\r\242\007^\000\000\002e\002e\002e\002e\002E\002E\000\000\000\000\000\000\002E\000\000\011n\002E\000\000\011z\002E\000\238\002E\000\000\000\000\002E\011\134\002E\002E\002E\011\146\002E\002E\000\000\000\000\000\000\006\189\002E\002E\002E\002E\002E\000\000\002E\000\000\000\000\006\157\000\000\000\000\002E\002E\002E\002E\002E\000\000\006\189\000\000\000\000\002E\006\189\002E\002E\000\000\000\000\000\000\006\157\002E\002E\002E\006\157\000\000\000\000\000\000\000\000\000\000\002E\002E\t\158\002E\002E\002E\002E\002E\002E\000\000\000\000\002E\000\000\002E\002E\000\000\000\000\000\000\000\000\000\238\000\000\002E\002E\002E\000\000\002E\002E\002E\002E\000\000\000\000\000\000\002E\000\000\002E\002E\000\000\002E\002E\002E\002E\002E\002E\000\000\000\000\002E\002E\002E\000\000\000\000\006\189\027;\002E\002E\002E\002E\002Q\002Q\000\000\000\000\007\246\002Q\000\000\005\254\002Q\n\154\005\194\002Q\n\166\002Q\000\000\000\000\t\150\006\n\002Q\002Q\002Q\006\022\002Q\002Q\000\000\000\000\000\000\006\149\002Q\002Q\002Q\t\214\002Q\000\000\002Q\000\000\000\000\000\000\000\000\000\000\002Q\002Q\002Q\002Q\002Q\000\000\006\149\000\000\000\000\002Q\006\149\002Q\002Q\000\000\000\000\000\000\000\000\002Q\002Q\002Q\000\000\000\000\000\000\000\000\000\000\000\000\002Q\002Q\t\158\t\222\002Q\002Q\002Q\002Q\002Q\000\000\002\250\002Q\000\000\002Q\002Q\000\000\000\000\000\000\000\000\000\000\000\000\002Q\002Q\002Q\000\000\002Q\002Q\002Q\002Q\000\000\000\000\000\000\002Q\000\000\002Q\002Q\000\000\002Q\002Q\002Q\002Q\002Q\002Q\000\000\000\000\002Q\002Q\002Q\000\000\005\150\006\149\000\000\002Q\002Q\002Q\002Q\002M\002M\000\000\003\210\000\000\002M\000\000\006\"\002M\003\222\000\000\002M\004\002\002M\000\000\000\000\t\150\000\000\002M\002M\002M\000\000\002M\002M\000\000\000\000\000\000\000\000\002M\002M\002M\t\214\002M\000\000\002M\000\000\000\000\000\000\000\000\000\000\002M\002M\002M\002M\002M\000\000\000\000\000\000\000\000\002M\000\000\002M\002M\000\000\000\000\000\000\000\000\002M\002M\002M\000\000\000\000\000\000\000\000\000\000\000\000\002M\002M\t\158\t\222\002M\002M\002M\002M\002M\000\000\002\158\002M\000\000\002M\002M\000\000\000\000\000\000\000\000\000\000\000\000\002M\002M\002M\000\000\002M\002M\002M\002M\000\000\000\000\000\000\002M\000\000\002M\002M\000\000\002M\002M\002M\002M\002M\002M\000\000\000\000\002M\002M\002M\000\000\tZ\003\226\000\000\002M\002M\002M\002M\002u\002u\000\000\000\000\000\000\002u\000\000\011\202\002u\011\218\000\000\002u\000\000\002u\000\000\000\000\t\150\000\000\002u\002u\002u\000\000\002u\002u\000\000\000\000\000\000\000\000\t\206\t\230\t\238\t\214\t\246\000\000\002u\000\000\000\000\000\000\000\000\000\000\002u\002u\t\254\n\006\002u\000\000\000\000\000\000\000\000\002u\000\000\n\014\002u\000\000\000\000\000\000\000\000\002u\002u\000\238\000\000\000\000\000\000\000\000\000\000\000\000\002u\002u\t\158\t\222\n\022\n\030\n.\002u\002u\000\000\002\158\002u\000\000\002u\n6\000\000\000\000\000\000\000\000\000\000\000\000\002u\002u\n>\000\000\002u\002u\002u\002u\000\000\000\000\000\000\002u\000\000\002u\002u\000\000\002u\002u\002u\n&\002u\002u\000\000\000\000\002u\nF\002u\000\000\012\142\003\226\000\000\002u\002u\nN\nV\002]\002]\000\000\000\000\000\000\002]\000\000\012\162\002]\012\182\000\000\002]\000\000\002]\000\000\000\000\t\150\000\000\002]\002]\002]\000\000\002]\002]\000\000\000\000\000\000\000\000\002]\002]\002]\t\214\002]\000\000\002]\000\000\000\000\000\000\000\000\000\000\002]\002]\002]\002]\002]\000\000\000\000\000\000\000\000\002]\000\000\002]\002]\000\000\000\000\000\000\000\000\002]\002]\002]\000\000\000\000\000\000\000\000\000\000\000\000\002]\002]\t\158\t\222\002]\002]\002]\002]\002]\000\000\000\000\002]\000\000\002]\002]\000\000\000\000\000\000\000\000\000\000\000\000\002]\002]\002]\000\000\002]\002]\002]\002]\000\000\000\000\000\000\002]\000\000\002]\002]\000\000\002]\002]\002]\002]\002]\002]\000\000\000\000\002]\002]\002]\000\000\000\000\000\000\000\000\002]\002]\002]\002]\002Y\002Y\000\000\000\000\000\000\002Y\000\000\000\000\002Y\000\000\000\000\002Y\000\000\002Y\000\000\000\000\t\150\000\000\002Y\002Y\002Y\000\000\002Y\002Y\000\000\000\000\000\000\000\000\002Y\002Y\002Y\t\214\002Y\000\000\002Y\000\000\000\000\000\000\000\000\000\000\002Y\002Y\002Y\002Y\002Y\000\000\000\000\000\000\000\000\002Y\000\000\002Y\002Y\000\000\000\000\000\000\000\000\002Y\002Y\002Y\000\000\000\000\000\000\000\000\000\000\000\000\002Y\002Y\t\158\t\222\002Y\002Y\002Y\002Y\002Y\000\000\000\000\002Y\000\000\002Y\002Y\000\000\000\000\000\000\000\000\000\000\000\000\002Y\002Y\002Y\000\000\002Y\002Y\002Y\002Y\000\000\000\000\000\000\002Y\000\000\002Y\002Y\000\000\002Y\002Y\002Y\002Y\002Y\002Y\000\000\000\000\002Y\002Y\002Y\000\000\000\000\000\000\000\000\002Y\002Y\002Y\002Y\002m\002m\000\000\000\000\000\000\002m\000\000\000\000\002m\000\000\000\000\002m\000\000\002m\000\000\000\000\t\150\000\000\002m\002m\002m\000\000\002m\002m\000\000\000\000\000\000\000\000\t\206\t\230\t\238\t\214\002m\000\000\002m\000\000\000\000\000\000\000\000\000\000\002m\002m\t\254\n\006\002m\000\000\000\000\000\000\000\000\002m\000\000\002m\002m\000\000\000\000\000\000\000\000\002m\002m\000\238\000\000\000\000\000\000\000\000\000\000\000\000\002m\002m\t\158\t\222\n\022\n\030\002m\002m\002m\000\000\000\000\002m\000\000\002m\002m\000\000\000\000\000\000\000\000\000\000\000\000\002m\002m\002m\000\000\002m\002m\002m\002m\000\000\000\000\000\000\002m\000\000\002m\002m\000\000\002m\002m\002m\n&\002m\002m\000\000\000\000\002m\002m\002m\000\000\000\000\000\000\000\000\002m\002m\002m\002m\002A\002A\000\000\000\000\000\000\002A\000\000\000\000\002A\000\000\000\000\002A\000\000\002A\000\000\000\000\t\150\000\000\002A\002A\002A\000\000\002A\002A\000\000\000\000\000\000\000\000\002A\002A\002A\t\214\002A\000\000\002A\000\000\000\000\000\000\000\000\000\000\002A\002A\002A\002A\002A\000\000\000\000\000\000\000\000\002A\000\000\002A\002A\000\000\000\000\000\000\000\000\002A\002A\002A\000\000\000\000\000\000\000\000\000\000\000\000\002A\002A\t\158\t\222\002A\002A\002A\002A\002A\000\000\000\000\002A\000\000\002A\002A\000\000\000\000\000\000\000\000\000\000\000\000\002A\002A\002A\000\000\002A\002A\002A\002A\000\000\000\000\000\000\002A\000\000\002A\002A\000\000\002A\002A\002A\002A\002A\002A\000\000\000\000\002A\002A\002A\000\000\000\000\000\000\000\000\002A\002A\002A\002A\002=\002=\000\000\000\000\000\000\002=\000\000\000\000\002=\000\000\000\000\002=\000\000\002=\000\000\000\000\t\150\000\000\002=\002=\002=\000\000\002=\002=\000\000\000\000\000\000\000\000\t\206\t\230\t\238\t\214\002=\000\000\002=\000\000\000\000\000\000\000\000\000\000\002=\002=\t\254\n\006\002=\000\000\000\000\000\000\000\000\002=\000\000\002=\002=\000\000\000\000\000\000\000\000\002=\002=\000\238\000\000\000\000\000\000\000\000\000\000\000\000\002=\002=\t\158\t\222\n\022\n\030\002=\002=\002=\000\000\000\000\002=\000\000\002=\002=\000\000\000\000\000\000\000\000\000\000\000\000\002=\002=\002=\000\000\002=\002=\002=\002=\000\000\000\000\000\000\002=\000\000\002=\002=\000\000\002=\002=\002=\n&\002=\002=\000\000\000\000\002=\002=\002=\000\000\000\000\000\000\000\000\002=\002=\002=\002=\002\153\002\153\000\000\000\000\000\000\002\153\000\000\000\000\002\153\000\000\000\000\002\153\000\000\002\153\000\000\000\000\t\150\000\000\002\153\002\153\002\153\000\000\002\153\002\153\000\000\000\000\000\000\000\000\t\206\t\230\t\238\t\214\002\153\000\000\002\153\000\000\000\000\000\000\000\000\000\000\002\153\002\153\t\254\n\006\002\153\000\000\000\000\000\000\000\000\002\153\000\000\002\153\002\153\000\000\000\000\000\000\000\000\002\153\002\153\002\153\000\000\000\000\000\000\000\000\000\000\000\000\002\153\002\153\t\158\t\222\n\022\002\153\002\153\002\153\002\153\000\000\000\000\002\153\000\000\002\153\002\153\000\000\000\000\000\000\000\000\000\000\000\000\002\153\002\153\002\153\000\000\002\153\002\153\002\153\002\153\000\000\000\000\000\000\002\153\000\000\002\153\002\153\000\000\002\153\002\153\002\153\n&\002\153\002\153\000\000\000\000\002\153\002\153\002\153\000\000\000\000\000\000\000\000\002\153\002\153\002\153\002\153\0029\0029\000\000\000\000\000\000\0029\000\000\000\000\0029\000\000\000\000\0029\000\000\0029\000\000\000\000\t\150\000\000\0029\0029\0029\000\000\0029\0029\000\000\000\000\000\000\000\000\t\206\t\230\t\238\t\214\0029\000\000\0029\000\000\000\000\000\000\000\000\000\000\0029\0029\t\254\n\006\0029\000\000\000\000\000\000\000\000\0029\000\000\0029\0029\000\000\000\000\000\000\000\000\0029\0029\000\238\000\000\000\000\000\000\000\000\000\000\000\000\0029\0029\t\158\t\222\n\022\n\030\0029\0029\0029\000\000\000\000\0029\000\000\0029\0029\000\000\000\000\000\000\000\000\000\000\000\000\0029\0029\0029\000\000\0029\0029\0029\0029\000\000\000\000\000\000\0029\000\000\0029\0029\000\000\0029\0029\0029\n&\0029\0029\000\000\000\000\0029\0029\0029\000\000\000\000\000\000\000\000\0029\0029\0029\0029\002q\002q\000\000\000\000\000\000\002q\000\000\000\000\002q\000\000\000\000\002q\000\000\002q\000\000\000\000\t\150\000\000\002q\002q\002q\000\000\002q\002q\000\000\000\000\000\000\000\000\t\206\t\230\t\238\t\214\002q\000\000\002q\000\000\000\000\000\000\000\000\000\000\002q\002q\t\254\n\006\002q\000\000\000\000\000\000\000\000\002q\000\000\002q\002q\000\000\000\000\000\000\000\000\002q\002q\000\238\000\000\000\000\000\000\000\000\000\000\000\000\002q\002q\t\158\t\222\n\022\n\030\002q\002q\002q\000\000\000\000\002q\000\000\002q\002q\000\000\000\000\000\000\000\000\000\000\000\000\002q\002q\002q\000\000\002q\002q\002q\002q\000\000\000\000\000\000\002q\000\000\002q\002q\000\000\002q\002q\002q\n&\002q\002q\000\000\000\000\002q\002q\002q\000\000\000\000\000\000\000\000\002q\002q\002q\002q\002i\002i\000\000\000\000\000\000\002i\000\000\000\000\002i\000\000\000\000\002i\000\000\002i\000\000\000\000\t\150\000\000\002i\002i\002i\000\000\002i\002i\000\000\000\000\000\000\000\000\t\206\t\230\t\238\t\214\002i\000\000\002i\000\000\000\000\000\000\000\000\000\000\002i\002i\t\254\n\006\002i\000\000\000\000\000\000\000\000\002i\000\000\002i\002i\000\000\000\000\000\000\000\000\002i\002i\000\238\000\000\000\000\000\000\000\000\000\000\000\000\002i\002i\t\158\t\222\n\022\n\030\002i\002i\002i\000\000\000\000\002i\000\000\002i\002i\000\000\000\000\000\000\000\000\000\000\000\000\002i\002i\002i\000\000\002i\002i\002i\002i\000\000\000\000\000\000\002i\000\000\002i\002i\000\000\002i\002i\002i\n&\002i\002i\000\000\000\000\002i\002i\002i\000\000\000\000\000\000\000\000\002i\002i\002i\002i\002y\002y\000\000\000\000\000\000\002y\000\000\000\000\002y\000\000\000\000\002y\000\000\002y\000\000\000\000\t\150\000\000\002y\002y\002y\000\000\002y\002y\000\000\000\000\000\000\000\000\t\206\t\230\t\238\t\214\t\246\000\000\002y\000\000\000\000\000\000\000\000\000\000\002y\002y\t\254\n\006\002y\000\000\000\000\000\000\000\000\002y\000\000\n\014\002y\000\000\000\000\000\000\000\000\002y\002y\000\238\000\000\000\000\000\000\000\000\000\000\000\000\002y\002y\t\158\t\222\n\022\n\030\n.\002y\002y\000\000\000\000\002y\000\000\002y\n6\000\000\000\000\000\000\000\000\000\000\000\000\002y\002y\n>\000\000\002y\002y\002y\002y\000\000\000\000\000\000\002y\000\000\002y\002y\000\000\002y\002y\002y\n&\002y\002y\000\000\000\000\002y\nF\002y\000\000\000\000\000\000\000\000\002y\002y\nN\nV\002}\002}\000\000\000\000\000\000\002}\000\000\000\000\002}\000\000\000\000\002}\000\000\002}\000\000\000\000\t\150\000\000\002}\002}\002}\000\000\002}\002}\000\000\000\000\000\000\000\000\t\206\t\230\t\238\t\214\002}\000\000\002}\000\000\000\000\000\000\000\000\000\000\002}\002}\t\254\n\006\002}\000\000\000\000\000\000\000\000\002}\000\000\n\014\002}\000\000\000\000\000\000\000\000\002}\002}\000\238\000\000\000\000\000\000\000\000\000\000\000\000\002}\002}\t\158\t\222\n\022\n\030\n.\002}\002}\000\000\000\000\002}\000\000\002}\n6\000\000\000\000\000\000\000\000\000\000\000\000\002}\002}\n>\000\000\002}\002}\002}\002}\000\000\000\000\000\000\002}\000\000\002}\002}\000\000\002}\002}\002}\n&\002}\002}\000\000\000\000\002}\002}\002}\000\000\000\000\000\000\000\000\002}\002}\nN\nV\002\129\002\129\000\000\000\000\000\000\002\129\000\000\000\000\002\129\000\000\000\000\002\129\000\000\002\129\000\000\000\000\t\150\000\000\002\129\002\129\002\129\000\000\002\129\002\129\000\000\000\000\000\000\000\000\t\206\t\230\t\238\t\214\002\129\000\000\002\129\000\000\000\000\000\000\000\000\000\000\002\129\002\129\t\254\n\006\002\129\000\000\000\000\000\000\000\000\002\129\000\000\n\014\002\129\000\000\000\000\000\000\000\000\002\129\002\129\000\238\000\000\000\000\000\000\000\000\000\000\000\000\002\129\002\129\t\158\t\222\n\022\n\030\n.\002\129\002\129\000\000\000\000\002\129\000\000\002\129\n6\000\000\000\000\000\000\000\000\000\000\000\000\002\129\002\129\n>\000\000\002\129\002\129\002\129\002\129\000\000\000\000\000\000\002\129\000\000\002\129\002\129\000\000\002\129\002\129\002\129\n&\002\129\002\129\000\000\000\000\002\129\002\129\002\129\000\000\000\000\000\000\000\000\002\129\002\129\nN\nV\by\by\000\000\000\000\000\000\by\000\000\000\000\by\000\000\000\000\by\000\000\by\000\000\000\000\t\150\000\000\by\by\by\000\000\by\by\000\000\000\000\000\000\000\000\t\206\t\230\t\238\t\214\t\246\000\000\by\000\000\000\000\000\000\000\000\000\000\by\by\t\254\n\006\by\000\000\000\000\000\000\000\000\by\000\000\n\014\by\000\000\000\000\000\000\000\000\by\by\000\238\000\000\000\000\000\000\000\000\000\000\000\000\by\by\t\158\t\222\n\022\n\030\n.\by\by\000\000\000\000\by\000\000\by\n6\000\000\000\000\000\000\000\000\000\000\000\000\by\by\n>\000\000\by\by\by\by\000\000\000\000\000\000\by\000\000\by\by\000\000\by\by\by\n&\by\by\000\000\000\000\by\nF\by\000\000\000\000\000\000\000\000\by\by\nN\nV\002\133\002\133\000\000\000\000\000\000\002\133\000\000\000\000\002\133\000\000\000\000\002\133\000\000\002\133\000\000\000\000\t\150\000\000\002\133\002\133\002\133\000\000\002\133\002\133\000\000\000\000\000\000\000\000\t\206\t\230\t\238\t\214\t\246\000\000\002\133\000\000\000\000\000\000\000\000\000\000\002\133\002\133\t\254\n\006\002\133\000\000\000\000\000\000\000\000\002\133\000\000\n\014\002\133\000\000\000\000\000\000\000\000\002\133\002\133\000\238\000\000\000\000\000\000\000\000\000\000\000\000\002\133\002\133\t\158\t\222\n\022\n\030\n.\002\133\002\133\000\000\000\000\002\133\000\000\002\133\n6\000\000\000\000\000\000\000\000\000\000\000\000\002\133\002\133\n>\000\000\002\133\002\133\002\133\002\133\000\000\000\000\000\000\002\133\000\000\002\133\002\133\000\000\n^\002\133\nf\n&\002\133\002\133\000\000\000\000\002\133\nF\002\133\000\000\000\000\000\000\000\000\002\133\002\133\nN\nV\bu\bu\000\000\000\000\000\000\bu\000\000\000\000\bu\000\000\000\000\bu\000\000\bu\000\000\000\000\t\150\000\000\bu\bu\bu\000\000\bu\bu\000\000\000\000\000\000\000\000\t\206\t\230\t\238\t\214\t\246\000\000\bu\000\000\000\000\000\000\000\000\000\000\bu\bu\t\254\n\006\bu\000\000\000\000\000\000\000\000\bu\000\000\n\014\bu\000\000\000\000\000\000\000\000\bu\bu\000\238\000\000\000\000\000\000\000\000\000\000\000\000\bu\bu\t\158\t\222\n\022\n\030\n.\bu\bu\000\000\000\000\bu\000\000\bu\n6\000\000\000\000\000\000\000\000\000\000\000\000\bu\bu\n>\000\000\bu\bu\bu\bu\000\000\000\000\000\000\bu\000\000\bu\bu\000\000\bu\bu\bu\n&\bu\bu\000\000\000\000\bu\nF\bu\000\000\000\000\000\000\000\000\bu\bu\nN\nV\002\181\002\181\000\000\000\000\000\000\002\181\000\000\000\000\002\181\000\000\000\000\002\181\000\000\002\181\000\000\000\000\t\150\000\000\002\181\002\181\002\181\000\000\002\181\002\181\000\000\000\000\000\000\000\000\t\206\t\230\t\238\t\214\t\246\000\000\002\181\000\000\000\000\000\000\000\000\000\000\002\181\002\181\t\254\n\006\002\181\000\000\000\000\000\000\000\000\002\181\000\000\n\014\002\181\000\000\000\000\000\000\000\000\002\181\002\181\000\238\000\000\000\000\000\000\000\000\000\000\000\000\002\181\002\181\t\158\t\222\n\022\n\030\n.\002\181\002\181\000\000\000\000\002\181\000\000\002\181\n6\000\000\000\000\000\000\000\000\000\000\000\000\002\181\002\181\n>\000\000\002\181\002\181\002\181\002\181\000\000\000\000\000\000\002\181\000\000\002\181\002\181\000\000\n^\002\181\nf\n&\002\181\002\181\000\000\000\000\002\181\nF\002\181\000\000\000\000\000\000\000\000\002\181\002\181\nN\nV\002\177\002\177\000\000\000\000\000\000\002\177\000\000\000\000\002\177\000\000\000\000\002\177\000\000\002\177\000\000\000\000\t\150\000\000\002\177\002\177\002\177\000\000\002\177\002\177\000\000\000\000\000\000\000\000\t\206\t\230\t\238\t\214\t\246\000\000\002\177\000\000\000\000\000\000\000\000\000\000\002\177\002\177\t\254\n\006\002\177\000\000\000\000\000\000\000\000\002\177\000\000\n\014\002\177\000\000\000\000\000\000\000\000\002\177\002\177\000\238\000\000\000\000\000\000\000\000\000\000\000\000\002\177\002\177\t\158\t\222\n\022\n\030\n.\002\177\002\177\000\000\000\000\002\177\000\000\002\177\n6\000\000\000\000\000\000\000\000\000\000\000\000\002\177\002\177\n>\000\000\002\177\002\177\002\177\002\177\000\000\000\000\000\000\002\177\000\000\002\177\002\177\000\000\n^\002\177\nf\n&\002\177\002\177\000\000\000\000\002\177\nF\002\177\000\000\000\000\000\000\000\000\002\177\002\177\nN\nV\002\185\002\185\000\000\000\000\000\000\002\185\000\000\000\000\002\185\000\000\000\000\002\185\000\000\002\185\000\000\000\000\t\150\000\000\002\185\002\185\002\185\000\000\002\185\002\185\000\000\000\000\000\000\000\000\t\206\t\230\t\238\t\214\t\246\000\000\002\185\000\000\000\000\000\000\000\000\000\000\002\185\002\185\t\254\n\006\002\185\000\000\000\000\000\000\000\000\002\185\000\000\n\014\002\185\000\000\000\000\000\000\000\000\002\185\002\185\000\238\000\000\000\000\000\000\000\000\000\000\000\000\002\185\002\185\t\158\t\222\n\022\n\030\n.\002\185\002\185\000\000\000\000\002\185\000\000\002\185\n6\000\000\000\000\000\000\000\000\000\000\000\000\002\185\002\185\n>\000\000\002\185\002\185\002\185\002\185\000\000\000\000\000\000\002\185\000\000\002\185\002\185\000\000\n^\002\185\nf\n&\002\185\002\185\000\000\000\000\002\185\nF\002\185\000\000\000\000\000\000\000\000\002\185\002\185\nN\nV\002\165\002\165\000\000\000\000\000\000\002\165\000\000\000\000\002\165\000\000\000\000\002\165\000\000\002\165\000\000\000\000\t\150\000\000\002\165\002\165\002\165\000\000\002\165\002\165\000\000\000\000\000\000\000\000\t\206\t\230\t\238\t\214\t\246\000\000\002\165\000\000\000\000\000\000\000\000\000\000\002\165\002\165\t\254\n\006\002\165\000\000\000\000\000\000\000\000\002\165\000\000\n\014\002\165\000\000\000\000\000\000\000\000\002\165\002\165\000\238\000\000\000\000\000\000\000\000\000\000\000\000\002\165\002\165\t\158\t\222\n\022\n\030\n.\002\165\002\165\000\000\000\000\002\165\000\000\002\165\n6\000\000\000\000\000\000\000\000\000\000\000\000\002\165\002\165\n>\000\000\002\165\002\165\002\165\002\165\000\000\000\000\000\000\002\165\000\000\002\165\002\165\000\000\n^\002\165\nf\n&\002\165\002\165\000\000\000\000\002\165\nF\002\165\000\000\000\000\000\000\000\000\002\165\002\165\nN\nV\002\169\002\169\000\000\000\000\000\000\002\169\000\000\000\000\002\169\000\000\000\000\002\169\000\000\002\169\000\000\000\000\t\150\000\000\002\169\002\169\002\169\000\000\002\169\002\169\000\000\000\000\000\000\000\000\t\206\t\230\t\238\t\214\t\246\000\000\002\169\000\000\000\000\000\000\000\000\000\000\002\169\002\169\t\254\n\006\002\169\000\000\000\000\000\000\000\000\002\169\000\000\n\014\002\169\000\000\000\000\000\000\000\000\002\169\002\169\000\238\000\000\000\000\000\000\000\000\000\000\000\000\002\169\002\169\t\158\t\222\n\022\n\030\n.\002\169\002\169\000\000\000\000\002\169\000\000\002\169\n6\000\000\000\000\000\000\000\000\000\000\000\000\002\169\002\169\n>\000\000\002\169\002\169\002\169\002\169\000\000\000\000\000\000\002\169\000\000\002\169\002\169\000\000\n^\002\169\nf\n&\002\169\002\169\000\000\000\000\002\169\nF\002\169\000\000\000\000\000\000\000\000\002\169\002\169\nN\nV\002\173\002\173\000\000\000\000\000\000\002\173\000\000\000\000\002\173\000\000\000\000\002\173\000\000\002\173\000\000\000\000\t\150\000\000\002\173\002\173\002\173\000\000\002\173\002\173\000\000\000\000\000\000\000\000\t\206\t\230\t\238\t\214\t\246\000\000\002\173\000\000\000\000\000\000\000\000\000\000\002\173\002\173\t\254\n\006\002\173\000\000\000\000\000\000\000\000\002\173\000\000\n\014\002\173\000\000\000\000\000\000\000\000\002\173\002\173\000\238\000\000\000\000\000\000\000\000\000\000\000\000\002\173\002\173\t\158\t\222\n\022\n\030\n.\002\173\002\173\000\000\000\000\002\173\000\000\002\173\n6\000\000\000\000\000\000\000\000\000\000\000\000\002\173\002\173\n>\000\000\002\173\002\173\002\173\002\173\000\000\000\000\000\000\002\173\000\000\002\173\002\173\000\000\n^\002\173\nf\n&\002\173\002\173\000\000\000\000\002\173\nF\002\173\000\000\000\000\000\000\000\000\002\173\002\173\nN\nV\002\193\002\193\000\000\000\000\000\000\002\193\000\000\000\000\002\193\000\000\000\000\002\193\000\000\002\193\000\000\000\000\t\150\000\000\002\193\002\193\002\193\000\000\002\193\002\193\000\000\000\000\000\000\000\000\t\206\t\230\t\238\t\214\t\246\000\000\002\193\000\000\000\000\000\000\000\000\000\000\002\193\002\193\t\254\n\006\002\193\000\000\000\000\000\000\000\000\002\193\000\000\n\014\002\193\000\000\000\000\000\000\000\000\002\193\002\193\000\238\000\000\000\000\000\000\000\000\000\000\000\000\002\193\002\193\t\158\t\222\n\022\n\030\n.\002\193\002\193\000\000\000\000\002\193\000\000\002\193\n6\000\000\000\000\000\000\000\000\000\000\000\000\002\193\002\193\n>\000\000\002\193\002\193\002\193\002\193\000\000\000\000\000\000\002\193\000\000\002\193\002\193\000\000\n^\002\193\nf\n&\002\193\002\193\000\000\000\000\002\193\nF\002\193\000\000\000\000\000\000\000\000\002\193\002\193\nN\nV\002\189\002\189\000\000\000\000\000\000\002\189\000\000\000\000\002\189\000\000\000\000\002\189\000\000\002\189\000\000\000\000\t\150\000\000\002\189\002\189\002\189\000\000\002\189\002\189\000\000\000\000\000\000\000\000\t\206\t\230\t\238\t\214\t\246\000\000\002\189\000\000\000\000\000\000\000\000\000\000\002\189\002\189\t\254\n\006\002\189\000\000\000\000\000\000\000\000\002\189\000\000\n\014\002\189\000\000\000\000\000\000\000\000\002\189\002\189\000\238\000\000\000\000\000\000\000\000\000\000\000\000\002\189\002\189\t\158\t\222\n\022\n\030\n.\002\189\002\189\000\000\000\000\002\189\000\000\002\189\n6\000\000\000\000\000\000\000\000\000\000\000\000\002\189\002\189\n>\000\000\002\189\002\189\002\189\002\189\000\000\000\000\000\000\002\189\000\000\002\189\002\189\000\000\n^\002\189\nf\n&\002\189\002\189\000\000\000\000\002\189\nF\002\189\000\000\000\000\000\000\000\000\002\189\002\189\nN\nV\002\197\002\197\000\000\000\000\000\000\002\197\000\000\000\000\002\197\000\000\000\000\002\197\000\000\002\197\000\000\000\000\t\150\000\000\002\197\002\197\002\197\000\000\002\197\002\197\000\000\000\000\000\000\000\000\t\206\t\230\t\238\t\214\t\246\000\000\002\197\000\000\000\000\000\000\000\000\000\000\002\197\002\197\t\254\n\006\002\197\000\000\000\000\000\000\000\000\002\197\000\000\n\014\002\197\000\000\000\000\000\000\000\000\002\197\002\197\000\238\000\000\000\000\000\000\000\000\000\000\000\000\002\197\002\197\t\158\t\222\n\022\n\030\n.\002\197\002\197\000\000\000\000\002\197\000\000\002\197\n6\000\000\000\000\000\000\000\000\000\000\000\000\002\197\002\197\n>\000\000\002\197\002\197\002\197\002\197\000\000\000\000\000\000\002\197\000\000\002\197\002\197\000\000\n^\002\197\nf\n&\002\197\002\197\000\000\000\000\002\197\nF\002\197\000\000\000\000\000\000\000\000\002\197\002\197\nN\nV\002\161\002\161\000\000\000\000\000\000\002\161\000\000\000\000\002\161\000\000\000\000\002\161\000\000\002\161\000\000\000\000\t\150\000\000\002\161\002\161\002\161\000\000\002\161\002\161\000\000\000\000\000\000\000\000\t\206\t\230\t\238\t\214\t\246\000\000\002\161\000\000\000\000\000\000\000\000\000\000\002\161\002\161\t\254\n\006\002\161\000\000\000\000\000\000\000\000\002\161\000\000\n\014\002\161\000\000\000\000\000\000\000\000\002\161\002\161\000\238\000\000\000\000\000\000\000\000\000\000\000\000\002\161\002\161\t\158\t\222\n\022\n\030\n.\002\161\002\161\000\000\000\000\002\161\000\000\002\161\n6\000\000\000\000\000\000\000\000\000\000\000\000\002\161\002\161\n>\000\000\002\161\002\161\002\161\002\161\000\000\000\000\000\000\002\161\000\000\002\161\002\161\000\000\n^\002\161\nf\n&\002\161\002\161\000\000\000\000\002\161\nF\002\161\000\000\000\000\000\000\000\000\002\161\002\161\nN\nV\001\241\001\241\000\000\000\000\000\000\001\241\000\000\000\000\001\241\000\000\000\000\001\241\000\000\001\241\000\000\000\000\001\241\000\000\001\241\001\241\001\241\000\000\001\241\001\241\000\000\000\000\000\000\000\000\001\241\001\241\001\241\001\241\001\241\000\000\001\241\000\000\000\000\000\000\000\000\000\000\001\241\001\241\001\241\001\241\001\241\000\000\000\000\000\000\000\000\001\241\000\000\001\241\001\241\000\000\000\000\000\000\000\000\001\241\001\241\001\241\000\000\000\000\000\000\000\000\000\000\000\000\001\241\001\241\001\241\001\241\001\241\001\241\001\241\001\241\001\241\000\000\000\000\001\241\000\000\001\241\001\241\000\000\000\000\000\000\000\000\000\000\000\000\001\241\001\241\001\241\000\000\001\241\001\241\001\241\001\241\000\000\000\000\000\000\001\241\000\000\001\241\001\241\000\000\001\241\001\241\001\241\001\241\001\241\001\241\000\000\000\000\001\241\001\241\r\202\000\000\000\000\000\000\000\000\001\241\001\241\001\241\001\241\002\r\002\r\000\000\000\000\000\000\002\r\000\000\000\000\002\r\000\000\000\000\002\r\000\000\002\r\000\000\000\000\t\150\000\000\002\r\002\r\002\r\000\000\002\r\002\r\000\000\000\000\000\000\000\000\t\206\t\230\t\238\t\214\t\246\000\000\002\r\000\000\000\000\000\000\000\000\000\000\002\r\002\r\t\254\n\006\002\r\000\000\000\000\000\000\000\000\002\r\000\000\n\014\002\r\000\000\000\000\000\000\000\000\002\r\002\r\000\238\000\000\000\000\000\000\000\000\000\000\000\000\002\r\002\r\t\158\t\222\n\022\n\030\n.\002\r\002\r\000\000\000\000\002\r\000\000\002\r\n6\000\000\000\000\000\000\000\000\000\000\000\000\002\r\002\r\n>\000\000\002\r\002\r\r\226\002\r\000\000\000\000\000\000\002\r\000\000\002\r\002\r\000\000\n^\002\r\nf\n&\002\r\002\r\000\000\000\000\002\r\nF\002\r\000\000\000\000\000\000\000\000\002\r\002\r\nN\nV\002\t\002\t\000\000\000\000\000\000\002\t\000\000\000\000\002\t\000\000\000\000\002\t\000\000\002\t\000\000\000\000\t\150\000\000\002\t\002\t\002\t\000\000\002\t\002\t\000\000\000\000\000\000\000\000\t\206\t\230\t\238\t\214\t\246\000\000\002\t\000\000\000\000\000\000\000\000\000\000\002\t\002\t\t\254\n\006\002\t\000\000\000\000\000\000\000\000\002\t\000\000\n\014\002\t\000\000\000\000\000\000\000\000\002\t\002\t\000\238\000\000\000\000\000\000\000\000\000\000\000\000\002\t\002\t\t\158\t\222\n\022\n\030\n.\002\t\002\t\000\000\000\000\002\t\000\000\002\t\n6\000\000\000\000\000\000\000\000\000\000\000\000\002\t\002\t\n>\000\000\002\t\002\t\002\t\002\t\000\000\000\000\000\000\002\t\000\000\002\t\002\t\000\000\n^\002\t\nf\n&\002\t\002\t\000\000\000\000\002\t\nF\002\t\000\000\000\000\000\000\000\000\002\t\002\t\nN\nV\002\157\002\157\000\000\000\000\000\000\002\157\000\000\000\000\002\157\000\000\000\000\002\157\000\000\002\157\000\000\000\000\t\150\000\000\002\157\002\157\002\157\000\000\002\157\002\157\000\000\000\000\000\000\000\000\t\206\t\230\t\238\t\214\t\246\000\000\002\157\000\000\000\000\000\000\000\000\000\000\002\157\002\157\t\254\n\006\002\157\000\000\000\000\000\000\000\000\002\157\000\000\n\014\002\157\000\000\000\000\000\000\000\000\002\157\002\157\000\238\000\000\000\000\000\000\000\000\000\000\000\000\002\157\002\157\t\158\t\222\n\022\n\030\n.\002\157\002\157\000\000\000\000\002\157\000\000\002\157\n6\000\000\000\000\000\000\000\000\000\000\000\000\002\157\002\157\n>\000\000\002\157\002\157\002\157\002\157\000\000\000\000\000\000\002\157\000\000\002\157\002\157\000\000\n^\002\157\nf\n&\002\157\002\157\000\000\000\000\002\157\nF\002\157\000\000\000\000\000\000\000\000\002\157\002\157\nN\nV\001\253\001\253\000\000\000\000\000\000\001\253\000\000\000\000\001\253\000\000\000\000\001\253\000\000\001\253\000\000\000\000\001\253\000\000\001\253\001\253\001\253\000\000\001\253\001\253\000\000\000\000\000\000\000\000\001\253\001\253\001\253\001\253\001\253\000\000\001\253\000\000\000\000\000\000\000\000\000\000\001\253\001\253\001\253\001\253\001\253\000\000\000\000\000\000\000\000\001\253\000\000\001\253\001\253\000\000\000\000\000\000\000\000\001\253\001\253\001\253\000\000\000\000\000\000\000\000\000\000\000\000\001\253\001\253\001\253\001\253\001\253\001\253\001\253\001\253\001\253\000\000\000\000\001\253\000\000\001\253\001\253\000\000\000\000\000\000\000\000\000\000\000\000\001\253\001\253\001\253\000\000\001\253\001\253\001\253\001\253\000\000\000\000\000\000\001\253\000\000\001\253\001\253\000\000\001\253\001\253\001\253\001\253\001\253\001\253\000\000\000\000\001\253\001\253\r\202\000\000\000\000\000\000\000\000\001\253\001\253\001\253\001\253\002\001\002\001\000\000\000\000\000\000\002\001\000\000\000\000\002\001\000\000\000\000\002\001\000\000\002\001\000\000\000\000\002\001\000\000\002\001\002\001\002\001\000\000\002\001\002\001\000\000\000\000\000\000\006\177\002\001\002\001\002\001\002\001\002\001\000\000\002\001\000\000\000\000\000\000\000\000\000\000\002\001\002\001\002\001\002\001\002\001\000\000\006\177\003\233\000\000\002\001\006\177\002\001\002\001\000\000\000\000\000\000\000\000\002\001\002\001\002\001\000\000\000\000\000\000\000\000\000\000\000\000\002\001\002\001\002\001\002\001\002\001\002\001\002\001\002\001\002\001\000\000\000\000\002\001\000\000\002\001\002\001\000\000\000\000\000\000\000\000\000\000\000\238\002\001\002\001\002\001\000\000\002\001\002\001\002\001\002\001\000\000\000\000\000\000\002\001\000\000\002\001\002\001\000\000\002\001\002\001\002\001\002\001\002\001\002\001\000\000\b\162\002\001\002\001\r\202\000\000\000\000\003\233\000\000\002\001\002\001\002\001\002\001\001\006\000\000\000\006\000\000\000\000\024\214\002\154\002\158\005\254\002\202\002\214\005\194\b\194\000\000\000\000\002\218\001\n\000\000\006\n\000\000\003\018\000\000\006\022\000\000\000\000\000\000\r\182\003\022\001\018\b>\bB\001\030\001\"\000\000\000\000\000\000\003&\000\000\002\226\000\000\025\n\000\000\bf\bj\000\238\003\186\003\014\003\198\bn\006\170\bZ\001:\000\000\002\146\002\002\000\000\003\026\002\002\000\000\000\000\007\234\007\238\007\250\b\014\002\006\005R\000\000\002\006\001>\001B\001F\001J\001N\000\000\000\000\b\130\001R\000\000\000\000\000\000\001V\000\000\b\142\b\166\b\250\005^\005b\003z\005\254\001Z\003z\005\194\024\218\006\214\001\218\001^\006\214\001\218\006\n\000\000\002\146\000\000\006\022\002\146\000\000\001\154\n\222\000\000\000\000\005f\b\002\000\000\001\158\000\000\014\018\004.\t\014\001\006\001\166\000\006\001\170\001\174\000\000\002\154\002\158\000\000\002\202\002\214\006\218\000\000\000\000\006\218\002\218\001\n\000\000\000\000\000\000\b:\000\000\000\000\000\000\000\000\000\000\000\000\003\022\001\018\b>\bB\001\030\001\"\000\000\000\000\000\000\003&\000\000\002\226\000\000\bF\000\000\bf\bj\000\000\003\186\003\014\003\198\bn\006\170\000\000\001:\000\000\002\146\000\000\000\000\003\026\000\000\000\000\000\000\007\234\007\238\007\250\b\014\000\000\005R\000\000\000\000\001>\001B\001F\001J\001N\000\000\000\000\b\130\001R\000\000\000\000\000\000\001V\000\000\b\142\b\166\b\250\005^\005b\000\000\000\000\001Z\000\000\000\000\000\000\000\000\000\000\001^\000\000\000\241\003\170\000\000\002\158\000\000\000\241\000\000\000\000\001\154\005\234\003\138\000\000\005f\b\002\000\000\001\158\007\178\014\018\004.\t\014\n\234\001\166\000\000\001\170\001\174\000\014\000\018\000\022\000\026\000\030\000\000\000\"\000&\000*\000.\0002\000\000\0006\000:\000\000\n\238\000>\003\166\002\158\000\241\000B\0032\000\000\000\000\002\146\000F\000\000\000\241\000\000\000\000\000\000\000J\000\241\000N\000R\000V\000Z\000^\000b\000f\000\000\000\241\000\241\000j\000n\000\000\000r\021\162\000v\000\000\000\000\000\000\006\190\000\000\000\238\000\000\000\000\022\222\002\238\000\000\022\226\000\000\000z\000\000\002\146\000~\000\130\000\241\000\000\000\000\000\000\023\018\000\134\000\138\000\142\000\000\000\241\000\000\000\000\000\000\000\146\000\150\000\154\000\158\000\000\000\162\000\166\000\170\000\000\000\000\000\000\000\174\000\178\000\182\023\"\000\000\000\000\000\186\005\254\000\190\000\194\005\194\n\242\016>\000\000\000\000\000\000\000\198\006\n\000\202\002\002\000\000\006\022\000\000\000\000\000\206\000\210\004Y\000\214\000\006\002\006\000\000\000\246\002\154\002\158\002\162\002\202\002\214\000\000\000\000\000\000\000\000\002\218\000\000\000\000\003\146\000\000\000\000\000\000\004Y\000\000\016N\016\234\003z\002\222\000\000\003\030\003\"\002\002\006\214\001\218\003\150\000\000\003&\000\000\002\226\002\146\016~\002\006\003\178\003\182\000\000\003\186\003\014\003\198\003\206\006\170\000\000\000\000\016\226\002\146\000\000\000\000\003\026\016\250\000\000\000\000\007\234\007\238\007\250\b\014\003z\005R\000\000\006\218\000\000\000\000\006\214\001\218\000\000\017\002\000\000\b\130\000\000\002\146\000\000\000\000\000\000\000\000\b\142\b\166\b\250\005^\005b\017\022\017B\000\000\000\000\004Y\004Y\000\000\000\000\001\202\001\206\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\218\000\000\017\130\021\134\005f\b\002\024\246\000\141\001\210\b\026\004.\t\014\000\141\000\000\002\158\000\141\000\000\002\214\004E\t6\000\000\000\000\002\218\004E\000\000\000\141\000\000\000\141\000\000\000\141\001\242\002z\t>\000\000\002\222\002~\000\000\002\146\004\006\004\018\tF\000\141\000\000\000\000\004\030\002\226\015r\000\141\000\000\000\000\000\000\000\141\000\000\003\014\001\190\000\000\000\141\000\000\000\000\000\141\002\146\004\"\004E\003\026\000\141\000\141\000\141\007\234\007\238\007\250\004E\0122\005R\000\141\000\141\004E\002\194\000\238\000\000\000\000\000\141\000\000\000\000\000\000\000\141\004E\000\000\000\000\000\000\000\000\000\000\000\000\005^\005b\000\141\000\141\000\000\000\000\000\141\000\141\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\141\002\209\004E\000\000\002\209\000\000\000\141\000\141\005f\b\002\000\000\004E\000\165\b\026\004.\000\000\000\141\000\165\000\141\002\158\000\165\000\000\002\214\000\000\t6\000\n\000\000\002\218\015N\001*\000\165\002b\000\165\000\000\000\165\000\000\002\209\t>\000\000\002\222\002\209\000\000\003:\002\209\000\000\tF\000\165\021.\000\000\000\000\002\226\000\000\000\165\002\209\002\209\003F\000\165\000\000\003\014\001\190\000\n\000\165\000\000\000\000\000\165\002\146\000\000\015R\003\026\000\165\000\165\000\165\007\234\007\238\007\250\002\209\0122\005R\000\165\000\165\002\209\015^\002\209\021R\000\000\000\165\000\000\000\000\002\209\000\165\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005^\005b\000\165\000\165\000\000\000\000\000\165\000\165\000\000\000\000\015f\001\006\000\000\002\209\000\000\000\000\000\165\0036\002\158\b\226\021^\002\214\000\165\000\165\005f\b\002\002\218\001\n\000\000\b\026\004.\003\018\000\165\000\000\000\165\000\000\016\242\020\242\001\014\001\018\001\022\003V\001\030\001\"\000\000\000\000\003\154\000\000\000\000\000\000\000\000\003Z\000\000\001.\n\218\007\141\000\000\003R\001\190\0016\000\000\000\249\001:\000\000\002\146\000\000\000\249\003\210\025\"\000\000\000\000\003\214\000\000\003\222\005F\002\002\005R\000\000\000\000\001>\001B\001F\001J\001N\000\000\002\006\000\000\001R\005V\000\000\000\000\001V\000\238\000\000\000\000\000\000\005^\005b\000\000\005\162\001Z\000\000\000\000\000\000\000\000\000\249\001^\018\138\003z\000\000\000\000\000\000\000\000\000\249\006\214\001\218\001\154\n\222\000\249\004E\005f\002\146\000\000\001\158\004E\001\162\004.\001\006\000\249\001\166\000\000\001\170\001\174\0036\002\158\n~\005\254\002\214\000\000\005\194\000\000\000\000\002\218\001\n\000\000\000\000\006\n\003\018\000\000\006\218\006\022\000\000\000\000\000\249\001\014\001\018\001\022\003V\001\030\001\"\000\000\000\000\000\249\004E\000\000\000\000\000\000\003Z\000\000\001.\n\218\004E\000\000\003R\001\190\0016\004E\002\194\001:\000\000\002\146\000\000\000\000\003\210\000\000\004E\004E\003\214\000\000\003\222\005F\000\000\005R\000\000\000\000\001>\001B\001F\001J\001N\004q\000\000\000\000\001R\005V\021\174\000\000\001V\000\000\000\000\000\000\004E\005^\005b\000\000\005\162\001Z\000\000\000\000\000\000\004E\000\000\001^\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\209\000\000\001\154\n\222\000\000\000\000\005f\002\209\000\000\001\158\000\000\001\162\004.\001\006\022\030\001\166\000\000\001\170\001\174\0036\002\158\rv\016\226\002\214\000\n\000\000\000\000\016\250\002\218\001\n\000\000\000\000\000\000\003\018\000\000\000\000\022\194\022\210\000\000\002\209\001\014\001\018\001\022\003V\001\030\001\"\002\209\000\000\000\000\000\000\000\000\000\000\002\209\003Z\000\000\001.\n\218\000\000\000\000\003R\001\190\0016\004q\000\000\001:\000\000\002\146\000\000\000\000\003\210\000\000\023\198\000\000\003\214\002\209\003\222\005F\000\000\005R\000\000\000\000\001>\001B\001F\001J\001N\000\000\000\000\000\000\001R\005V\000\000\000\000\001V\000\000\000\000\000\000\000\000\005^\005b\000\000\005\162\001Z\000\000\000\000\000\000\000\000\006\178\001^\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\154\n\222\000\000\000\000\005f\000\000\000\000\001\158\000\000\001\162\004.\000\000\b\145\001\166\000\006\001\170\001\174\000\246\002\154\002\158\002\162\002\202\002\214\000\000\000\000\000\000\000\000\002\218\000\000\000\000\004y\000\000\b\145\000\000\b\145\b\145\000\000\000\000\000\000\002\222\000\000\003\030\003\"\000\000\000\000\000\000\003\150\000\000\003&\000\000\002\226\000\000\016~\000\000\003\178\003\182\000\000\003\186\003\014\003\198\003\206\006\170\000\000\000\000\016\226\002\146\000\000\000\000\003\026\016\250\001\202\001\206\007\234\007\238\007\250\b\014\000\000\005R\000\000\000\000\000\000\000\000\000\000\000\000\000\000\017\002\000\000\b\130\001\210\027F\000\000\000\000\000\000\000\000\b\142\b\166\b\250\005^\005b\017\022\017B\000\000\000\000\027k\014\166\000\000\000\000\000\000\000\000\000\000\001\242\002\130\000\000\000\000\000\000\002~\000\000\002\146\004\006\004\018\021\134\005f\b\002\b\145\004\030\000\000\b\026\004.\t\014\000\006\000\000\000\000\000\246\002\154\002\158\002\162\002\202\002\214\000\000\000\000\000\000\004\"\002\218\000\000\026\002\027\154\000\000\000\000\000\000\003\218\000\000\000\000\000\000\000\000\002\222\000\000\003\030\003\"\000\000\000\000\025\238\003\150\000\000\003&\000\000\002\226\000\000\016~\000\000\003\178\003\182\000\000\003\186\003\014\003\198\003\206\006\170\000\000\000\000\016\226\002\146\000\000\000\000\003\026\016\250\000\000\000\000\007\234\007\238\007\250\b\014\000\000\005R\000\000\000\000\000\000\000\000\000\000\000\000\000\000\017\002\000\000\b\130\000\000\027F\000\000\000\000\000\000\000\000\b\142\b\166\b\250\005^\005b\017\022\017B\000\000\000\000\004\129\000\246\000\000\000\000\002\162\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004y\000\000\000\000\021\134\005f\b\002\014&\0121\0121\b\026\004.\t\014\0121\000\000\0121\0121\003\150\000\000\000\000\000\000\000\000\000\000\016~\0121\000\000\0121\0121\0121\000\000\0121\0121\024F\000\000\000\000\016\226\000\000\000\000\000\000\000\000\016\250\000\000\0121\000\000\000\000\000\000\000\000\000\000\0121\0121\000\000\000\000\0121\000\000\000\000\0121\017\002\0121\000\000\000\000\0121\000\000\000\000\000\000\000\000\0121\0121\0121\000\000\000\000\017\022\017B\000\000\000\000\0121\0121\000\000\000\000\000\000\000\000\000\000\0121\000\000\000\000\000\000\0121\000\000\000\000\0121\000\246\000\000\021\134\002\014\000\000\000\000\0121\0121\0121\000\000\0121\0121\000\000\017\134\000\000\000\000\000\000\000\000\000\000\000\000\0121\000\000\0121\0121\000\000\000\000\002v\0121\000\000\017\138\000\000\000\000\0121\000\000\ne\017\178\0121\ne\0121\0121\ne\ne\000\000\000\000\ne\000\000\ne\016\226\000\000\ne\000\000\000\000\016\250\ne\ne\000\000\ne\ne\000\000\ne\001\202\001\206\000\000\000\000\ne\000\000\000\000\ne\018.\000\000\000\000\000\000\000\000\000\000\000\000\ne\000\000\ne\001\210\000\000\ne\ne\017\022\018B\000\000\000\000\004M\ne\000\000\000\000\ne\000\000\000\000\ne\ne\000\000\ne\000\000\ne\ne\001\242\002\130\000\000\018R\000\000\002~\000\000\002\146\004\006\004\018\000\000\ne\000\000\000\000\004\030\000\000\000\000\000\000\000\000\ne\ne\006\141\000\000\ne\000\000\ne\006\141\000\000\000\000\000\000\005~\004\"\000\000\000\000\004\185\000\000\000\000\ne\ne\000\000\ne\ne\000\000\ne\000\000\ne\000\000\ne\000\000\ne\025\238\ne\b}\b}\000\000\000\000\000\000\b}\000\000\001\206\b}\000\000\000\000\000\000\000\000\006\141\012Q\012=\b}\000\000\b}\b}\b}\006\141\b}\b}\000\000\000\000\006\141\006\141\000\238\000\000\000\000\000\000\012Q\000\000\b}\006\141\006\141\000\000\002\026\000\000\b}\b}\000\000\000\000\b}\002\030\000\000\002z\000\000\b}\000\000\002\"\b}\000\000\002&\012=\000\000\b}\b}\b}\000\000\006\141\000\000\000\000\000\000\000\000\b}\b}\000\000\000\000\006\141\000\000\000\000\b}\000\000\000\000\000\000\004v\000\000\000\000\b}\000\000\000\000\000\000\000\000\000\000\023\166\b}\b}\b}\000\000\b}\b}\000\000\000\000\003\129\012e\000\000\000\000\n\170\000\000\b}\000\000\b}\b}\001\202\001\206\011\n\b}\000\000\000\000\000\000\000\000\b}\003\129\000\000\000\000\b}\003\129\b}\b}\012\r\012\r\002\138\001\226\000\000\012\r\000\000\001\206\012\r\000\000\000\000\001\238\000\000\000\000\000\000\000\000\004\150\000\000\012\r\012\r\012\r\000\000\012\r\012\r\001\242\002r\000\000\000\000\000\000\002~\000\000\002\146\004\006\004\018\012\r\000\000\000\000\000\000\004\030\000\000\012\r\012\r\000\000\000\000\012\r\000\000\000\000\002z\000\000\012\r\012e\012e\012\r\000\000\000\000\004\"\000\000\012\r\012\r\012\r\000\000\000\000\000\000\003\129\000\000\000\000\012\r\012\r\000\000\012e\000\000\012e\000\000\012\r\000\000\000\000\000\000\004v\003\129\000\000\012\r\003\129\000\000\000\000\000\000\000\000\000\000\012\r\012\r\012\r\000\000\012\r\012\r\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012\r\000\000\012\r\012\r\001\202\001\206\000\000\012\r\000\000\000\000\000\000\000\000\012\r\000\000\000\000\000\000\012\r\000\000\012\r\012\r\b\129\b\129\001\210\001\226\002\209\b\129\000\000\001\206\b\129\002\209\000\000\001\238\000\000\000\000\018\130\000\000\b\129\000\000\b\129\b\129\b\129\000\000\b\129\b\129\001\242\019\250\000\000\019\014\000\000\002~\000\000\002\146\004\006\004\018\b\129\000\n\000\000\000\000\020\n\000\000\b\129\b\129\000\000\000\000\b\129\000\000\000\000\002z\002\209\b\129\002\209\000\000\b\129\000\000\000\000\004\"\002\209\b\129\b\129\b\129\000\000\002\209\000\000\002\209\000\000\000\000\b\129\b\129\000\000\000\000\002\209\002\209\000\000\b\129\002\209\002\209\002\209\004v\002\209\000\000\b\129\000\000\000\000\002\209\000\000\000\000\002\209\b\129\b\129\b\129\000\000\b\129\b\129\000\000\000\000\002\209\002\209\000\000\002\209\000\n\000\n\b\129\002\209\b\129\b\129\002\209\002\209\002\209\b\129\002\209\002\209\002\209\002\209\b\129\002\209\002\209\002\209\b\129\000\000\b\129\b\129\002\209\002\209\000\000\002\209\002\209\000\000\002\209\002\209\002\209\002\209\000\n\000\000\002\209\006\174\000\000\002\209\002\209\002\209\000\000\015\006\000\000\002\209\002\209\000\000\002\209\002\209\002\209\002\209\002\209\002\209\000\000\000\000\002\209\002\209\000\000\002\209\000\000\000\000\002\209\002\209\002\209\002\209\002\209\002\209\002\209\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\209\000\000\002\209\002\209\000\000\000\000\000\000\002\209\002\209\002\209\002\209\002\209\000\000\015B\000\000\000\000\006=\002\209\000!\000\000\000\000\000\000\000!\000!\000\000\000!\000!\000\000\000\000\015N\000\000\000!\002b\000\000\002\209\002\209\006=\000\000\000\000\002\209\002\209\002\209\000\000\000!\000\000\000!\000!\000\000\000\000\000\000\000\000\000\000\000!\000\000\000!\000\000\000\000\000\000\000!\000!\000\000\000!\000!\000!\000!\000!\000\000\000\000\015R\000!\007\025\000\000\000!\007\025\000\000\000\000\000!\000!\000!\000!\000\000\000!\015^\000\000\0212\000\000\000\000\000\000\000\000\007\025\007\025\000!\007\025\007\025\000\000\000\000\000\000\000\000\000!\000!\000!\000!\000!\000\000\000\000\000\000\000\000\0069\015f\000\029\000\000\007\025\000\000\000\029\000\029\000\000\000\029\000\029\021>\000\000\000\000\000\000\000\029\000\000\000\000\000!\000!\0069\000\000\007\025\000!\000!\000!\000\000\000\029\020\242\000\029\000\029\000\000\000\000\000\000\000\000\000\000\000\029\000\000\000\029\000\000\000\000\000\000\000\029\000\029\000\000\000\029\000\029\000\029\000\029\000\029\000\000\000\000\007\025\000\029\007\025\000\000\000\029\000\000\000\000\000\000\000\029\000\029\000\029\000\029\000\000\000\029\005\186\000\000\000\000\007\025\007\025\000\000\000\000\000\000\007\025\000\029\007\025\000\000\000\000\000\000\007\025\000\000\000\029\000\029\000\029\000\029\000\029\000\000\000\000\000\000\000\000\006I\000\000\011\213\000\000\000\000\000\000\011\213\011\213\000\000\011\213\011\213\000\000\000\000\000\000\000\000\011\213\000\000\000\000\000\029\000\029\006I\000\000\000\000\000\029\000\029\000\029\000\000\011\213\000\000\011\213\011\213\000\000\000\000\000\000\000\000\000\000\011\213\000\000\011\213\000\000\000\000\000\000\011\213\011\213\000\000\011\213\011\213\011\213\011\213\011\213\000\000\000\000\000\000\011\213\007-\000\000\011\213\007-\000\000\000\000\011\213\011\213\011\213\011\213\000\000\011\213\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007-\007-\011\213\007-\007-\000\000\000\000\000\000\000\000\011\213\011\213\011\213\011\213\011\213\000\000\000\000\000\000\000\000\006E\000\000\011\209\000\000\007-\000\000\011\209\011\209\000\000\011\209\011\209\000\000\000\000\000\000\000\000\011\209\000\000\000\000\011\213\011\213\006E\000\000\000\238\011\213\011\213\011\213\000\000\011\209\000\000\011\209\011\209\000\000\000\000\000\000\000\000\000\000\011\209\000\000\011\209\000\000\000\000\000\000\011\209\011\209\000\000\011\209\011\209\011\209\011\209\011\209\000\000\000\000\007-\011\209\007-\000\000\011\209\000\000\000\000\000\000\011\209\011\209\011\209\011\209\000\000\011\209\007-\000\000\000\000\005\194\007-\000\000\000\000\000\000\007-\011\209\007-\000\000\000\000\000\000\007-\000\000\011\209\011\209\011\209\011\209\011\209\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004M\000\000\000\000\000\000\000\000\000\246\000\000\000\000\002\014\012\017\012\017\000\000\000\000\000\000\012\017\011\209\011\209\012\017\017\134\000\000\011\209\011\209\011\209\012Q\012=\004F\000\000\012\017\012\017\012\017\000\000\012\017\012\017\000\000\017\138\000\000\000\000\000\000\000\000\000\000\017\178\012Q\000\000\012\017\000\000\000\000\000\000\002\026\000\000\012\017\012\017\000\000\016\226\012\017\002\174\000\000\000\000\016\250\012\017\000\000\002\"\012\017\000\000\002&\012=\000\000\012\017\012\017\012\017\000\000\000\000\000\000\000\000\018.\000\000\012\017\012\017\000\000\000\000\000\000\000\000\000\000\012\017\000\000\000\000\000\000\012\017\017\022\018B\012\017\000\000\000\000\004M\000\000\000\000\000\000\012\017\012\017\012\017\000\000\012\017\012\017\000\000\000\000\000\000\000\000\000\000\000\000\018R\007\153\012\017\000\006\012\017\012\017\007\153\002\154\002\158\012\017\002\202\002\214\000\000\000\000\012\017\000\000\002\218\000\000\012\017\000\000\012\017\012\017\000\000\014:\000\000\000\000\000\000\000\000\002\222\000\000\003\030\003\"\000\000\000\000\000\000\000\000\000\000\003&\000\000\002\226\000\000\000\000\000\000\003\178\003\182\007\153\003\186\003\014\003\198\003\206\006\170\000\000\000\000\007\153\002\146\000\000\000\000\003\026\007\153\007\153\000\238\007\234\007\238\007\250\b\014\000\000\005R\007\153\007\153\001\181\000\000\000\000\000\000\000\000\001\181\000\000\b\130\000\000\000\000\000\000\000\000\000\000\000\000\b\142\b\166\b\250\005^\005b\000\000\000\000\007\153\000\000\000\000\007\153\000\000\000\000\000\000\000\000\000\000\000\000\003\t\003\t\007\153\000\000\000\000\003\t\000\000\000\000\003\t\000\000\005f\b\002\000\000\001\181\000\000\b\026\004.\t\014\003\t\003\t\003\t\001\181\003\t\003\t\000\000\000\000\001\181\001\181\000\238\000\000\000\000\000\000\000\000\000\000\003\t\001\181\001\181\000\000\000\000\000\000\003\t\004>\000\000\000\000\003\t\000\000\000\000\000\000\000\000\003\t\000\000\000\000\003\t\000\000\000\000\000\000\000\000\003\t\003\t\003\t\000\000\001\181\000\000\000\000\000\000\000\000\003\t\003\t\000\000\000\000\001\181\000\000\000\000\003\t\000\000\nq\000\000\003\t\nq\000\000\003\t\0036\002\158\000\000\000\000\002\214\000\000\003\t\003\t\003\t\002\218\003\t\003\t\000\000\nq\nq\000\000\nq\nq\000\000\000\000\003\t\000\000\003\t\003\t\003:\000\000\000\000\003\t\000\000\000\000\000\000\000\000\003\t\000\000\000\000\nq\003\t\003F\003\t\003\t\003R\001\190\003\133\012e\000\000\000\000\000\000\002\146\000\000\000\000\003\210\000\000\000\000\nq\003\214\000\000\003\222\005F\000\000\005R\000\000\003\133\000\000\000\000\000\000\003\133\000\000\000\000\000\000\000\000\000\000\005V\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005^\005b\000\000\005\162\nq\000\000\nq\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\nq\000\000\000\000\nq\nq\000\000\005f\000\000\nq\000\000\nq\000\000\004.\nm\nq\000\000\nm\000\000\000\000\0036\002\158\012e\012e\002\214\000\000\006z\000\000\000\000\002\218\000\000\000\000\000\000\nm\nm\003\133\nm\nm\000\000\006\154\000\000\012e\000\000\012e\003:\000\000\000\000\b\178\000\000\000\000\003\133\000\000\000\000\003\133\000\000\nm\000\000\003F\000\000\000\000\003R\001\190\000\000\000\000\000\000\000\000\000\000\002\146\000\000\000\000\003\210\000\000\000\000\nm\003\214\000\000\003\222\005F\n\138\005R\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004i\005V\000\000\000\000\000\000\018\154\001\205\001\205\000\000\005^\005b\001\205\005\162\nm\001\205\nm\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\205\001\205\001\205\nm\001\205\001\205\nm\nm\000\000\005f\000\000\nm\000\000\nm\000\000\004.\001\205\nm\000\000\000\000\018\198\000\000\001\205\001\205\000\000\000\000\001\205\000\000\016\226\000\000\000\000\001\205\000\000\016\250\001\205\000\000\000\000\000\000\000\000\001\205\001\205\001\205\000\000\019\002\000\000\000\000\000\000\000\000\001\205\001\205\000\000\000\000\000\000\000\000\000\000\001\205\000\000\0036\002\158\001\205\000\000\002\214\001\205\006z\000\000\000\000\002\218\000\000\004i\001\205\001\205\001\205\000\000\001\205\001\205\000\000\006\154\019v\000\000\000\000\000\000\003:\000\000\001\205\b\178\001\205\001\205\000\000\000\000\000\000\001\205\000\000\000\000\000\000\003F\001\205\000\000\nz\001\190\004\218\000\000\001\205\000\000\000\000\002\146\000\000\000\000\003\210\000\000\000\000\nI\003\214\000\000\003\222\000\000\n\138\005R\000\000\000\000\012\129\000\000\000\000\000\000\000\000\012\129\000\000\000\000\000\000\005V\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005^\005b\000\000\000\000\n\146\000\000\000\000\0036\002\158\000\000\000\000\002\214\000\000\006z\000\000\000\000\002\218\000\000\nI\n\154\000\000\nI\011\006\000\000\005f\000\000\006\154\012\129\nI\000\000\004.\003:\nI\000\000\b\178\012\129\007\005\000\000\000\000\007\005\012\129\012\129\000\238\000\000\003F\000\000\000\000\nz\001\190\012\129\012\129\000\000\000\000\000\000\002\146\007\005\007\005\003\210\007\005\007\005\nI\003\214\000\000\003\222\000\000\n\138\005R\000\000\000\000\000\000\000\000\005)\005)\000\000\000\000\012\129\005)\007\005\005V\005)\000\000\000\000\000\000\000\000\012\129\000\000\005^\005b\000\000\005)\n\146\005)\000\000\005)\000\000\007\005\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\nI\005)\000\000\nI\nI\000\000\005f\005)\005)\000\000\nI\000\000\004.\005)\nI\000\000\005)\000\000\000\000\005)\000\000\007\005\000\000\007\005\005)\005)\005)\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\005\000\000\000\000\005\194\007\005\005)\005)\000\000\007\005\005)\007\005\000\000\000\000\000\000\007\005\b\141\000\000\000\000\000\000\005)\005)\005)\000\000\005)\005)\000\000\000\000\000\000\000\000\007B\000\000\t\150\000\000\000\000\012\006\b\141\005)\b\141\b\141\005)\005)\000\000\000\000\t\206\t\230\t\238\t\214\t\246\000\000\000\000\000\000\005)\001\202\002^\000\000\000\000\002b\t\254\n\006\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\014\000\000\000\000\000\000\001\210\001\226\002f\000\000\000\238\000\000\000\000\000\000\000\000\001\238\000\000\000\000\001\006\t\158\t\222\n\022\n\030\n.\000\000\000\000\000\000\000\000\002j\002r\000\000\n6\000\000\002~\001\n\002\146\004\006\004\018\000\000\000\000\n>\000\000\020\222\000\000\020\226\001\014\001\018\001\022\001\026\001\030\001\"\000\000\000\000\000\000\n^\000\000\nf\n&\001&\004\"\001.\0012\b\141\nF\000\000\000\000\0016\000\000\015f\001:\000\000\nN\nV\000\000\000\000\000\000\000\000\000\000\020\238\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001>\001B\001F\001J\001N\000\000\000\000\000\000\001R\020\242\000\000\000\000\001V\000\000\005\029\005\029\000\000\000\000\000\000\005\029\000\000\001Z\005\029\000\000\000\000\000\000\000\000\001^\000\000\000\000\000\000\000\000\005\029\000\000\005\029\000\000\005\029\001\154\000\000\000\000\000\000\000\000\000\000\000\000\001\158\000\000\001\162\000\000\005\029\000\000\001\166\000\000\001\170\001\174\005\029\005\029\000\000\000\000\000\000\000\000\007\174\000\000\000\000\005\029\000\000\000\000\005\029\000\000\000\000\000\000\000\000\005\029\005\029\000\238\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\029\005\029\003I\003I\005\029\000\000\000\000\003I\000\000\000\000\003I\000\000\000\000\000\000\005\029\005\029\005\029\000\000\005\029\005\029\003I\000\000\003I\000\000\003I\000\000\000\000\000\000\000\000\000\000\000\000\005\029\000\000\000\000\005\029\005\029\003I\000\000\000\000\000\000\000\000\000\000\003I\003I\000\000\000\000\005\029\000\000\004\233\000\000\000\000\003I\000\000\000\000\003I\000\000\000\000\000\000\000\000\003I\003I\003I\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003I\000\000\000\000\000\000\003I\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003I\003I\003I\000\000\003I\003I\b\t\b\t\000\000\000\000\004\233\b\t\000\000\000\000\b\t\000\000\000\000\003I\000\000\000\000\000\000\003I\000\000\000\000\b\t\000\000\b\t\000\000\b\t\000\000\000\000\000\000\003I\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\t\000\000\000\000\000\000\000\000\000\000\b\t\b\t\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\t\000\000\000\000\b\t\000\000\000\000\000\000\000\000\b\t\b\t\b\t\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\t\000\000\012\193\012\193\b\t\000\000\000\000\012\193\000\000\000\000\012\193\000\000\000\000\000\000\b\t\b\t\b\t\000\000\b\t\b\t\012\193\000\000\012\193\000\000\012\193\000\000\000\000\000\000\b\t\000\000\000\000\b\t\000\000\000\000\000\000\b\t\012\193\000\000\000\000\000\000\000\000\000\000\012\193\012\193\004\218\000\000\b\t\000\000\004N\000\000\000\000\012\193\000\000\000\000\012\193\000\000\000\000\000\000\000\000\012\193\012\193\012\193\000\000\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\193\000\000\000\000\000\000\012\193\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012\193\012\193\012\193\000\000\012\193\012\193\012\197\012\197\000\000\000\000\004^\012\197\000\000\000\000\012\197\000\000\000\000\012\193\000\000\000\000\000\000\012\193\000\000\000\000\012\197\000\000\012\197\000\000\012\197\000\000\000\000\000\000\012\193\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012\197\000\000\000\000\000\000\000\000\000\000\012\197\012\197\000\000\000\000\000\000\000\000\004N\000\000\000\000\012\197\000\000\000\000\012\197\000\000\000\000\000\000\000\000\012\197\012\197\012\197\000\000\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\197\000\000\000\000\000\000\012\197\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012\197\012\197\012\197\000\000\012\197\012\197\003I\003I\000\000\000\000\004^\003I\000\000\000\000\003I\000\000\000\000\012\197\000\000\000\000\000\000\012\197\000\000\000\000\003I\000\000\003I\000\000\003I\000\000\000\000\000\000\012\197\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003I\000\000\000\000\000\000\000\000\000\000\003I\003I\000\000\000\000\000\000\000\000\004\237\000\000\000\000\003I\000\000\000\000\003I\000\000\000\000\000\000\000\000\003I\003I\003I\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003I\000\000\000\000\000\000\003I\007\149\000\000\000\000\000\000\006\161\007\149\000\000\000\000\000\000\003I\003I\003I\000\000\003I\003I\000\000\000\000\000\000\000\000\004\237\t\150\000\000\000\000\006\161\000\000\000\000\003I\006\161\000\000\000\000\003I\000\000\t\206\t\230\t\238\t\214\t\246\000\000\000\000\000\000\000\000\003I\000\000\000\000\007\149\000\000\t\254\n\006\000\000\000\000\000\000\000\000\007\149\000\000\000\000\n\014\000\000\007\149\007\149\000\238\000\000\000\000\000\000\000\238\000\000\000\000\007\149\007\149\000\000\000\000\000\000\000\000\t\158\t\222\n\022\n\030\n.\000\000\000\000\000\000\001\189\000\000\000\000\006\161\n6\001\189\000\000\001\206\001\189\007\149\000\000\000\000\007\149\n>\000\000\000\000\bi\000\000\001\189\000\000\000\000\007\149\001\189\000\000\000\000\000\000\000\000\n^\000\000\nf\n&\000\000\000\000\000\000\001\189\000\000\nF\000\000\012)\000\000\001\189\001\189\000\000\012)\nN\nV\012)\002z\000\000\001\189\000\000\000\000\001\189\000\000\000\000\000\000\012)\001\189\001\189\001\189\012)\000\000\000\000\003-\000\000\000\000\0121\000\000\003-\000\000\001\206\003-\012)\001\189\001\189\000\000\000\000\004v\012)\be\000\000\003-\000\000\000\000\000\000\003-\000\000\001\189\001\189\000\000\012)\001\189\001\189\000\000\000\000\012)\012)\003-\000\000\000\000\000\000\001\189\000\000\003-\001\185\000\000\000\000\000\000\001\189\000\000\002z\012)\003-\001\189\000\000\003-\000\000\000\000\000\000\001\189\003-\003-\003-\000\000\000\000\012)\012)\002Z\000\000\012)\012)\000\000\000\000\000\000\000\000\000\000\003-\003-\000\000\012)\004v\000\000\000\000\026b\000\000\000\000\012)\000\000\000\000\0162\003-\003-\000\000\000\000\003-\003-\000\000\012)\000\000\000\000\000\000\000\000\000\000\000\000\003-\t\150\000\000\000\000\000\000\0166\000\000\003-\000\000\000\000\000\000\000\000\003-\t\206\t\230\t\238\t\214\t\246\003-\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t\254\n\006\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\014\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\238\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t\158\t\222\n\022\n\030\n.\000\000\000\149\000\000\000\000\000\000\000\000\000\149\n6\000\000\000\149\000\000\000\000\000\000\000\000\000\000\000\000\n>\000\000\000\000\000\149\000\000\000\149\000\000\000\149\000\000\000\000\000\000\000\000\000\000\000\000\n^\016:\nf\n&\016J\000\149\000\000\000\000\000\000\nF\000\000\000\149\000\000\000\000\000\000\000\149\000\000\nN\nV\000\000\000\149\000\000\000\000\000\149\000\000\000\000\000\000\000\000\000\149\000\149\000\238\000\000\000\000\000\000\000\000\000\000\000\000\000\149\000\149\000\000\000\000\000\000\000\000\000\000\000\149\000\000\000\000\000\217\000\149\000\000\000\000\000\000\000\217\000\000\000\000\000\217\000\000\000\000\000\149\000\149\000\000\000\000\000\149\000\149\000\000\000\217\000\000\000\217\000\000\000\217\000\000\000\000\000\149\000\000\000\000\000\000\000\000\000\000\000\149\000\149\000\000\000\217\000\000\000\000\000\000\000\000\000\000\000\217\000\149\000\000\000\149\000\217\000\000\000\000\000\000\000\000\000\217\000\000\000\000\000\217\000\000\000\000\000\000\000\000\000\217\000\217\000\238\000\000\000\000\000\000\000\000\000\000\000\000\000\217\000\217\000\000\000\000\000\000\000\000\000\000\000\217\000\000\000\000\000\157\000\217\000\000\000\000\000\000\000\157\000\000\000\000\000\157\000\000\000\000\000\217\000\217\000\000\000\000\000\217\000\217\000\000\000\157\000\000\000\157\000\000\000\157\000\000\000\000\000\217\000\000\000\000\000\000\000\000\000\000\000\217\000\217\000\000\000\157\000\000\000\000\000\000\000\000\000\000\000\157\000\217\000\000\000\217\000\157\000\000\000\000\000\000\000\000\000\157\000\000\000\000\000\157\000\000\000\000\000\000\000\000\000\157\000\157\000\238\000\000\000\000\000\000\000\000\000\000\000\000\000\157\000\157\000\000\000\000\000\000\000\000\000\000\000\157\000\000\000\000\000\153\000\157\000\000\000\000\000\000\000\153\000\000\000\000\000\153\000\000\000\000\000\157\000\157\000\000\000\000\000\157\000\157\000\000\000\153\000\000\000\153\000\000\000\153\000\000\000\000\000\157\000\000\000\000\000\000\000\000\000\000\000\157\000\157\000\000\000\153\006}\006}\000\000\000\000\000\000\000\153\000\157\000\000\000\157\000\153\000\000\000\000\000\000\000\000\000\153\000\000\004\022\000\153\006}\006}\000\000\000\000\000\153\000\153\000\238\000\000\000\000\006}\001\129\000\000\000\000\000\153\000\153\001\129\000\000\000\000\001\129\000\000\000\153\000\000\006}\006}\000\153\000\000\000\000\006}\001\129\006}\006}\006}\001\129\000\000\000\153\000\153\006}\000\000\000\153\000\153\000\000\000\000\000\000\000\000\001\129\001\129\000\000\000\000\000\153\000\000\001\129\000\000\000\000\006}\000\153\000\153\004\233\000\000\000\000\001\129\000\000\000\000\001\129\000\000\000\153\000\000\000\153\001\129\001\129\001\129\000\000\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\129\000\000\000\000\000\000\001\129\000\000\004\n\000\000\006}\000\000\000\000\000\000\000\000\000\000\001\129\001\129\000\000\000\000\001\129\001\129\000\000\012\189\012\189\000\000\004\233\000\000\012\189\000\000\001\129\012\189\000\000\000\000\000\000\000\000\001\129\001\129\000\000\000\000\000\000\012\189\001\129\012\189\000\000\012\189\000\000\000\000\001\129\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012\189\000\000\000\000\000\000\000\000\000\000\012\189\012\189\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012\189\000\000\000\000\012\189\000\000\000\000\000\000\000\000\012\189\012\189\012\189\000\000\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\189\000\000\012\185\012\185\012\189\000\000\000\000\012\185\000\000\000\000\012\185\000\000\000\000\000\000\012\189\012\189\012\189\000\000\012\189\012\189\012\185\000\000\012\185\000\000\012\185\000\000\000\000\000\000\000\000\000\000\000\000\012\189\000\000\000\000\000\000\012\189\012\185\000\000\000\000\000\000\000\000\000\000\012\185\012\185\004\218\000\000\012\189\000\000\000\000\000\000\000\000\012\185\000\000\000\000\012\185\000\000\000\000\000\000\000\000\012\185\012\185\012\185\000\000\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\185\000\000\b\r\b\r\012\185\000\000\000\000\b\r\000\000\000\000\b\r\000\000\000\000\000\000\012\185\012\185\012\185\000\000\012\185\012\185\b\r\000\000\b\r\000\000\b\r\000\000\000\000\000\000\007\030\000\000\000\000\012\185\000\000\000\000\000\000\012\185\b\r\000\000\000\000\000\000\000\000\000\000\b\r\b\r\000\000\000\000\012\185\000\000\000\000\000\000\000\000\b\r\000\000\000\000\b\r\000\000\000\000\000\000\000\000\b\r\b\r\000\238\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012\134\000\000\n\158\000\000\000\000\000\000\b\r\000\000\001\202\001\206\b\r\000\000\000\000\000\000\000\000\000\000\t\150\000\000\000\000\012\006\b\r\b\r\b\r\b\141\b\r\b\r\001\210\001\226\t\206\t\230\t\238\t\214\t\246\000\000\b\r\001\238\000\000\b\r\000\000\000\000\000\000\b\r\t\254\n\006\000\000\000\000\000\000\000\000\001\242\002r\000\000\n\014\b\r\002~\000\000\002\146\004\006\004\018\000\000\000\238\000\000\000\000\004\030\000\000\000\000\000\000\000\000\000\000\t\158\t\222\n\022\n\030\n.\000\000\000\000\000\000\001\185\000\000\000\000\004\"\n6\001\185\000\000\001\206\001\185\000\000\000\000\000\000\000\000\n>\000\000\000\000\be\000\000\001\185\000\000\000\000\000\000\001\185\000\000\000\000\000\000\000\000\n^\000\000\nf\n&\000\000\000\000\000\000\001\185\000\000\nF\000\000\000\000\004*\001\185\004.\000\000\000\000\nN\nV\000\000\002z\000\000\001\185\000\000\000\000\001\185\000\000\000\000\000\000\000\000\001\185\001\185\001\185\000\000\000\000\000\000\001i\000\000\000\000\000\000\000\000\001i\000\000\0121\001i\000\000\001\185\001\185\000\000\000\000\004v\000\000\0121\000\000\001i\000\000\001i\000\000\001i\000\000\001\185\001\185\000\000\000\000\001\185\001\185\000\000\000\000\000\000\000\000\001i\000\000\000\000\000\000\001\185\000\000\001i\0121\000\000\000\000\000\000\001\185\000\000\0121\000\000\000\000\001\185\000\000\001i\000\000\000\000\000\000\001\185\001i\001i\001i\000\000\000\000\000\000\005U\005U\000\000\000\000\000\000\005U\000\000\000\000\005U\000\000\001i\000\000\000\000\000\000\0121\000\000\000\000\000\000\005U\000\000\005U\000\000\005U\000\000\001i\001i\001i\000\000\001i\001i\000\000\000\000\000\000\000\000\005U\000\000\000\000\000\000\000\000\000\000\005U\005U\000\000\000\000\019\254\001i\007\174\000\000\000\000\005U\000\000\000\000\005U\000\000\000\000\000\000\001i\005U\005U\000\238\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005U\000\000\005Q\006\242\005U\000\000\000\000\005Q\000\000\000\000\005Q\000\000\000\000\000\000\005U\005U\005U\000\000\005U\005U\005Q\000\000\005Q\000\000\005Q\000\000\000\000\000\000\000\000\000\000\000\000\005U\000\000\000\000\000\000\005U\005Q\000\000\000\000\000\000\000\000\000\000\005Q\007^\000\000\000\000\005U\000\000\000\000\000\000\000\000\005Q\000\000\000\000\005Q\000\000\000\000\000\000\000\000\005Q\005Q\000\238\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005Q\000\000\005m\005m\005Q\000\000\000\000\005m\000\000\000\000\005m\000\000\000\000\000\000\005Q\005Q\005Q\000\000\005Q\005Q\005m\000\000\005m\000\000\005m\000\000\000\000\000\000\000\000\000\000\000\000\005Q\000\000\000\000\000\000\005Q\005m\000\000\000\000\000\000\000\000\000\000\005m\005m\000\000\000\000\005Q\000\000\000\000\000\000\000\000\005m\000\000\000\000\005m\000\000\000\000\000\000\000\000\005m\005m\005m\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005m\000\000\005i\006\242\005m\000\000\000\000\005i\000\000\000\000\005i\000\000\000\000\000\000\005m\005m\005m\000\000\005m\005m\005i\000\000\005i\000\000\005i\000\000\000\000\000\000\000\000\000\000\000\000\005m\000\000\000\000\000\000\005m\005i\000\000\000\000\000\000\000\000\000\000\005i\007^\000\000\000\000\007V\000\000\000\000\000\000\000\000\005i\000\000\000\000\005i\000\000\000\000\000\000\000\000\005i\005i\000\238\004E\000\000\000\000\000\000\000\000\004E\0036\002\158\004E\000\000\002\214\000\000\006z\005i\000\000\002\218\000\000\005i\004E\000\000\000\000\000\000\004E\000\000\000\000\006\154\000\000\005i\005i\005i\003:\005i\005i\b\178\004E\000\000\000\000\000\000\000\000\000\000\004E\000\000\000\000\003F\005i\000\000\nz\001\190\005i\004E\000\000\011\226\004E\002\146\000\000\000\000\003\210\004E\002\194\005i\003\214\000\000\003\222\000\000\n\138\005R\000\000\t\150\000\000\000\000\000\000\000\000\000\000\004E\011\230\000\000\000\000\005V\000\000\t\206\t\230\t\238\t\214\t\246\000\000\005^\005b\004E\004E\n\146\000\000\004E\004E\t\254\n\006\000\000\000\000\007B\000\000\000\000\000\000\000\000\n\014\000\000\n\154\000\000\000\000\n\166\004E\005f\000\238\000\000\000\000\021\006\000\000\004.\011\226\000\000\000\000\t\158\t\222\n\022\n\030\n.\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n6\t\150\000\000\000\000\000\000\000\000\000\000\000\000\012\190\n>\000\000\000\000\000\000\t\206\t\230\t\238\t\214\t\246\000\000\000\000\000\000\000\000\000\000\n^\000\000\nf\n&\t\254\n\006\000\000\000\000\000\000\nF\000\000\000\000\000\000\n\014\000\000\000\000\000\000\nN\nV\000\000\000\000\000\238\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t\158\t\222\n\022\n\030\n.\000\000\000\000\000\000\003)\000\000\000\000\000\000\n6\003)\000\000\001\206\003)\000\000\000\000\000\000\000\000\n>\000\000\000\000\000\000\000\000\003)\000\000\000\000\000\000\003)\000\000\000\000\000\000\000\000\n^\000\000\nf\n&\000\000\000\000\000\000\003)\000\000\nF\000\000\000\000\000\000\003)\000\000\000\000\000\000\nN\nV\000\000\002z\000\000\003)\000\000\000\000\003)\000\000\000\000\000\000\000\000\003)\003)\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\003)\003)\000\000\000\000\004v\n\170\000\000\000\000\000\000\000\000\000\246\001\202\001\206\002\014\003)\003)\000\000\000\000\003)\003)\000\000\000\000\000\000\017\134\000\000\000\000\000\000\004M\003)\001\210\001\226\000\000\000\000\000\000\000\000\003)\000\000\000\000\001\238\017\138\003)\000\000\000\000\000\000\000\000\017\178\003)\000\000\000\000\000\000\0071\001\242\002r\0071\000\000\000\000\002~\016\226\002\146\004\006\004\018\000\000\016\250\0011\000\000\004\030\000\000\000\000\0011\0071\0071\0011\0071\0071\000\000\000\000\000\000\000\000\018.\000\000\000\000\0011\004\"\0011\000\000\0011\000\000\000\000\000\000\000\000\000\000\0071\017\022\018B\000\000\000\000\000\000\0011\000\000\000\000\000\000\000\000\000\000\0011\000\000\000\000\000\000\0011\000\000\000\238\000\000\000\000\0011\018R\000\000\0011\000\000\000\000\000\000\000\000\0011\0011\000\238\000\000\000\000\000\000\001-\000\000\000\000\000\000\0011\001-\000\000\000\000\001-\000\000\0011\000\000\000\000\0071\0011\0071\000\000\000\000\001-\000\000\001-\000\000\001-\000\000\0011\0011\0011\0071\0011\0011\005\194\0071\000\000\000\000\001-\0071\000\000\0071\0011\000\000\001-\0071\000\000\000\000\001-\0011\000\000\000\000\000\000\001-\000\000\000\000\001-\000\000\000\000\000\000\0011\001-\001-\000\238\000\000\000\000\000\000\001m\000\000\000\000\000\000\001-\001m\000\000\0125\001m\000\000\001-\000\000\000\000\000\000\001-\000\000\0125\000\000\001m\000\000\001m\000\000\001m\000\000\001-\001-\001-\000\000\001-\001-\000\000\000\000\000\000\000\000\001m\000\000\000\000\000\000\001-\000\000\001m\0125\000\000\000\000\000\000\001-\000\000\0125\000\000\000\000\000\000\000\000\001m\000\000\000\000\000\000\001-\001m\001m\001m\000\000\000\000\000\000\001\029\000\000\000\000\000\000\000\000\001\029\000\000\000}\001\029\000\000\001m\000\000\000\000\000\000\0125\000\000\000}\000\000\001\029\000\000\001\029\000\000\001\029\000\000\001m\001m\001m\000\000\001m\001m\000\000\000\000\000\000\000\000\001\029\000\000\000\000\000\000\000\000\000\000\001\029\000}\000\000\000\000\000\000\001m\000\000\000}\000\000\000\000\000\000\000\000\001\029\000\000\000\000\000\000\001m\001\029\001\029\001\029\001\197\000\000\000\000\000\000\000\000\001\197\000\000\015N\001\197\000\000\002b\000\000\000\000\001\029\000\000\000\000\000\000\000}\001\197\000\000\000\000\000\000\001\197\000\000\000\000\000\000\000\000\001\029\001\029\001\029\000\000\001\029\001\029\000\000\001\197\001\202\001\206\000\000\000\000\000\000\001\197\000\000\000\000\000\000\000\000\000\000\015R\000\000\001\029\001\197\000\000\015b\001\197\001\210\001\226\000\000\000\000\001\197\001\197\001\029\015^\000\000\001\238\000\000\000\000\000\000\000\000\000\000\000\000\001\246\000\000\000\000\000\000\001\197\0009\001\242\002r\001\197\000\000\0009\002~\0009\002\146\004\006\004\018\000\000\015f\001\197\001\197\004\030\0009\001\197\001\197\0009\000\000\000\000\000\000\0009\b)\000\000\000\000\001\197\000\000\000\000\000\000\000\000\004\"\000\000\001\197\000\000\000\000\000\000\000\000\000\000\000\000\0009\000\000\000\000\0009\001\197\000\000\0009\000\000\000\000\000\000\000\000\0009\000\000\000\000\000\000\000\000\0009\0009\0009\000\000\000\000\000\000\000\000\000\000\000\000\0009\0009\004*\000\000\004.\000\000\0036\002\158\000\000\000\000\002\214\0009\006z\000\000\0009\002\218\000\000\000\000\000\000\004E\000\000\000\000\004E\0009\000\000\006\154\0009\000\000\000\000\000\000\003:\b)\004E\b\178\000\000\0009\000\000\000\000\0009\000\000\000\000\b\246\000\000\003F\000\000\000\000\rr\001\190\004E\000\000\000\000\0009\000\000\002\146\004E\000\000\003\210\000\000\000\000\000\000\003\214\004E\003\222\004E\n\138\005R\004E\000\000\000\000\004E\000\000\004E\002\194\000\000\000\000\000\000\000\000\005V\000\000\004E\000\000\000\000\000\000\004E\000\000\005^\005b\004E\000\000\000\000\000\000\004E\000\000\000\000\000\000\004E\000\000\000\000\000\000\000\000\000\000\004E\004E\000\000\000\000\004E\000\000\r\130\000\000\005f\004E\000\000\000\000\004E\000\000\004.\000\000\000\000\004E\002\194\000\238\000\000\004E\000\000\003!\000\000\000\000\004E\004E\003!\000\000\000\000\003!\000\000\004E\004E\000\000\000\000\004E\000\000\000\000\000\000\003!\000\000\000\000\000\000\003!\000\000\004E\004E\000\000\000\000\004E\004E\000\000\000\000\000\000\000\000\003!\015n\000\000\000\000\004E\000\000\003!\000\000\000\000\004E\000\000\004E\004E\000\000\000\000\003!\025j\000\000\003!\000\000\000\000\000\000\004E\003!\003!\003!\004E\000\000\0036\002\158\000\000\000\000\002\214\000\000\006z\000\000\000\000\002\218\004E\003!\000\000\000\000\000\000\003!\004E\000\000\000\000\006\154\000\000\000\000\004N\000\000\003:\003!\003!\b\178\004E\003!\003!\000\000\000\000\004E\002\194\023.\000\000\003F\000\000\003!\003R\001\190\000\000\000\000\000\000\015\206\003!\002\146\000\000\004E\003\210\003!\000\000\000\000\003\214\000\000\003\222\003!\n\138\005R\000\000\000\000\000\000\004E\004E\000\000\000\000\004E\004E\000\000\000\000\005V\000\000\004^\000\000\000\000\000\000\007\030\000\000\005^\005b\0036\002\158\021\158\004E\002\214\000\000\006z\000\000\000\000\002\218\000\000\000\000\000\000\000\000\004E\000\000\000\000\000\000\000\000\006\154\023\250\000\000\005f\000\000\003:\000\000\000\000\b\178\004.\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003F\000\000\000\000\nz\001\190\000\000\000\000\000\000\000\000\000\000\002\146\006y\006y\003\210\000\000\000\000\000\000\003\214\000\000\003\222\000\000\n\138\005R\000\000\000\000\000\000\000\000\000\000\000\000\006y\006y\000\000\000\000\000\000\005V\000\000\000\000\000\000\006y\000\000\000\000\000\000\005^\005b\0036\002\158\n\146\000\000\002\214\000\000\006z\006y\006y\002\218\000\000\000\000\006y\000\000\006y\006y\006y\000\000\000\000\006\154\0226\006y\005f\000\000\003:\000\000\000\000\b\178\004.\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003F\006y\000\000\nz\001\190\005\154\000\000\000\000\000\000\000\000\002\146\0036\002\158\003\210\000\000\002\214\000\000\003\214\000\000\003\222\002\218\n\138\005R\000\000\000\000\005\158\000\000\003\218\000\000\000\000\000\000\000\000\000\000\000\000\005V\003:\000\000\000\000\000\000\000\000\000\000\000\000\005^\005b\004\194\000\000\n\146\000\000\003F\000\000\000\000\003R\001\190\000\000\000\000\000\000\000\000\000\000\002\146\000\000\000\000\003\210\000\000\000\000\022\150\003\214\005f\003\222\005F\000\000\005R\000\000\004.\000\000\000\000\000\000\000\000\000\000\000\000\b\169\000\000\000\000\005V\000\000\000\000\0036\002\158\000\000\000\000\002\214\005^\005b\000\000\005\162\002\218\000\000\000\000\000\000\000\000\000\000\000\000\b\169\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003:\000\000\005\234\000\000\000\000\005f\000\000\006f\000\000\b\154\000\000\004.\000\000\003F\000\000\000\000\003R\001\190\000\000\000\000\000\000\000\000\000\000\002\146\000\000\000\000\003\210\000\000\011\241\000\000\003\214\011\241\003\222\005F\000\000\005R\002\209\002\209\000\000\000\000\002\209\011\241\000\000\000\000\000\000\002\209\000\000\005V\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005^\005b\011\241\005\162\000\000\002\209\000\n\000\000\011\241\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011\241\002\209\000\000\011\241\002\209\002\209\000\000\005f\011\241\b\169\000\000\002\209\000\000\004.\002\209\000\000\000\000\002\209\002\209\000\000\002\209\002\209\000\000\002\209\011\241\004-\004-\000\000\011\241\004-\000\000\000\000\000\000\000\000\004-\002\209\000\000\000\000\011\241\011\241\004-\000\000\011\241\002\209\002\209\000\000\002\209\000\000\027f\004-\022\230\000\000\000\000\022\254\000\000\000\000\000\000\000\000\000\000\011\241\000\000\000\000\004-\000\000\000\000\004-\004-\002\209\000\000\000\000\000\000\002\209\004-\002\209\000\000\004-\000\000\000\000\000\238\004-\003!\004-\004-\000\000\004-\003!\000\000\000\000\003!\003!\000\000\000\000\000\000\000\000\003!\000\000\004-\003!\003!\000\000\000\000\000\000\003!\000\000\004-\004-\000\000\003!\000\000\000\000\000\000\003!\000\000\000\000\003!\015n\000\000\000\000\000\000\000\000\003!\000\000\000\000\003!\015n\000\000\000\000\000\000\004-\003!\000\000\000\000\003!\000\000\004-\000\000\000\000\003!\003!\003!\003!\003!\000\000\000\000\000\000\003!\003!\003!\003!\000\000\000\000\000\000\000\000\003!\000\000\000\000\000\000\003!\003!\000\000\000\000\000\000\003!\000\000\000\000\000\000\003!\003!\003!\025r\000\000\003!\003!\000\000\003!\015n\003!\003!\025\162\000\000\003!\003!\000\000\000\000\000\000\000\000\012)\015\206\003!\003!\000\000\012)\003!\003!\012)\000\000\015\206\003!\003!\003!\000\000\000\000\003!\000\000\012)\000\000\000\000\000\000\012)\000\000\000\000\000\000\000\000\003!\0121\000\000\000\000\003!\000\000\000\000\012)\000\000\000\000\000\000\000\000\000\000\012)\003!\003!\017R\000\000\003!\003!\000\000\000\000\012)\000\000\000\000\012)\000\000\000\000\000\000\000\000\012)\012)\0036\002\158\015\206\003!\002\214\000\000\006z\000\000\000\000\002\218\000\000\000\000\000\000\000\000\012)\000\000\000\000\000\000\012)\006\154\000\000\000\000\000\000\000\000\003:\000\000\000\000\b\178\012)\012)\002Z\000\000\012)\012)\000\000\000\000\000\000\003F\000\000\000\000\b\222\001\190\012)\005\001\000\000\000\000\026\154\002\146\005\001\012)\003\210\005\001\000\000\000\000\003\214\000\000\003\222\000\000\n\138\005R\012)\005\001\000\000\000\000\000\000\005\001\000\000\000\000\000\000\000\000\000\000\005V\000\000\000\000\000\000\000\000\000\000\005\001\000\000\005^\005b\000\000\000\000\005\001\000\000\000\000\000\000\000\000\000\000\007\174\000\000\000\000\005\001\000\000\000\000\005\001\000\000\000\000\000\000\000\000\005\001\005\001\000\238\005f\000\000\000\000\005\005\000\000\000\000\004.\000\000\005\005\000\000\000\000\005\005\000\000\005\001\005\001\000\000\000\000\005\001\000\000\000\000\000\000\005\005\000\000\000\000\000\000\005\005\000\000\005\001\005\001\000\000\000\000\005\001\005\001\000\000\000\000\000\000\000\000\005\005\012\201\012\201\000\000\000\000\000\000\005\005\000\000\000\000\000\000\000\000\005\001\007\174\000\000\000\000\005\005\000\000\000\000\005\005\012\201\012\201\007\006\005\001\005\005\005\005\000\238\000\000\000\000\012\201\005\177\000\000\000\000\000\000\000\000\005\177\000\000\000\000\005\177\000\000\005\005\005\005\012\201\012\201\005\005\000\000\000\000\012\201\005\177\012\201\012\201\012\201\005\177\000\000\005\005\005\005\012\201\000\000\005\005\005\005\000\000\000\000\000\000\000\000\005\177\000\000\000\000\000\000\000\000\000\000\005\177\000\000\000\000\012\201\000\000\005\005\000\000\000\000\000\000\005\177\000\000\000\000\005\177\000\000\000\000\000\000\005\005\005\177\005\177\000\238\025J\000\000\000\000\000\000\000\000\000\000\0036\002\158\000\000\000\000\002\214\000\000\000\000\005\177\000\000\002\218\000\000\005\177\000\000\000\000\000\000\000\000\006&\000\000\000\000\000\000\000\000\005\177\005\177\021*\003:\005\177\005\177\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\177\000\000\003F\000\000\000\000\003R\001\190\005\177\000\000\000\000\000\000\000\000\002\146\000\000\000\000\003\210\000\000\000\000\005\177\003\214\000\000\003\222\005F\005\249\005R\000\000\000\000\000\000\000\000\000\000\002\158\000\000\000\000\002\214\000\000\000\000\005V\000\000\002\218\000\000\000\000\000\000\000\000\005\249\005^\005b\000\000\005\162\000\000\000\000\002\222\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\226\000\000\000\000\000\000\000\000\000\000\000\000\005f\003\014\001\190\000\000\b\154\000\000\004.\000\000\002\146\000\000\000\000\003\026\001\202\001\206\000\000\007\234\007\238\007\250\000\000\000\000\005R\000\000\000\000\000\000\000\000\000\000\002n\000\000\005\198\000\000\001\210\001\226\000\000\000\000\0036\002\158\000\000\000\000\002\214\001\238\005^\005b\000\000\002\218\000\000\000\000\001\246\000\000\000\000\000\000\000\000\000\000\001\242\002r\000\000\000\000\000\000\002~\003:\002\146\004\006\004\018\000\000\000\000\005f\b\002\004\030\000\000\000\000\b\026\004.\003F\000\000\000\000\003R\001\190\000\000\000\000\000\000\006\002\000\000\002\146\000\000\004\"\003\210\0036\002\158\000\000\003\214\002\214\003\222\005F\000\000\005R\002\218\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005V\000\000\000\000\000\000\003:\000\000\000\000\015V\005^\005b\000\000\005\162\000\000\000\000\000\000\000\000\000\000\003F\000\000\000\000\003R\001\190\000\000\000\000\000\000\000\000\000\000\002\146\000\000\000\000\003\210\000\000\005f\000\000\003\214\006\014\003\222\005F\004.\005R\000\000\0036\002\158\000\000\000\000\002\214\000\000\000\000\000\000\000\000\002\218\005V\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005^\005b\000\000\005\162\000\000\000\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\003F\000\000\000\000\003R\001\190\005f\000\000\000\000\005\253\000\000\002\146\004.\000\000\003\210\0036\002\158\000\000\003\214\002\214\003\222\005F\000\000\005R\002\218\000\000\000\000\000\000\000\000\005\253\000\000\000\000\000\000\000\000\000\000\005V\000\000\000\000\000\000\003:\000\000\000\000\000\000\005^\005b\000\000\005\162\000\000\000\000\000\000\000\000\000\000\003F\000\000\000\000\003R\001\190\000\000\000\000\000\000\000\000\000\000\002\146\000\000\000\000\003\210\000\000\005f\000\000\003\214\011r\003\222\005F\004.\005R\000\000\0036\002\158\000\000\000\000\002\214\000\000\000\000\000\000\000\000\002\218\005V\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005^\005b\000\000\000\000\000\000\000\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\003F\000\000\000\000\003R\001\190\005f\000\000\000\000\011~\000\000\002\146\004.\000\000\003\210\0036\002\158\000\000\003\214\002\214\003\222\005F\000\000\005R\002\218\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005V\000\000\000\000\000\000\003:\000\000\000\000\000\000\005^\005b\000\000\005\162\000\000\000\000\000\000\000\000\000\000\003F\000\000\000\000\003R\001\190\000\000\000\000\000\000\000\000\000\000\002\146\000\000\000\000\003\210\000\000\005f\000\000\003\214\011\138\003\222\005F\004.\005R\000\000\0036\002\158\000\000\000\000\002\214\006!\000\000\000\000\000\000\002\218\005V\000\000\002\158\000\000\000\000\002\214\000\000\000\000\005^\005b\002\218\005\162\000\000\000\000\003:\006!\000\000\000\000\000\000\000\000\000\000\000\000\002\222\000\000\000\000\000\000\000\000\003F\000\000\000\000\003R\001\190\005f\002\226\000\000\000\000\000\000\002\146\004.\000\000\003\210\003\014\001\190\000\000\003\214\000\000\003\222\005F\002\146\005R\000\000\003\026\000\000\000\000\000\000\007\234\007\238\007\250\000\000\000\000\005R\005V\000\000\000\000\000\000\000\000\006\169\006\242\000\000\005^\005b\006\169\005\162\000\000\006\169\000\000\000\000\000\000\000\000\000\000\005^\005b\000\000\000\000\006\169\000\000\000\000\000\000\006\169\000\000\000\000\000\000\000\000\005f\000\000\000\000\000\000\000\000\000\000\004.\006\169\000\000\000\000\000\000\005f\b\002\006\169\007^\000\000\b\026\004.\001\153\000\000\000\000\000\000\006\169\001\153\000\000\006\169\001\153\000\000\000\000\000\000\006\169\006\169\000\238\000\000\000\000\000\000\001\153\000\000\000\000\000\000\001\153\000\000\000\000\000\000\000\000\000\000\006\169\000\000\000\000\000\000\006\169\000\000\001\153\000\000\000\000\000\000\000\000\000\000\001\153\000\000\006\169\006\169\000\000\000\000\006\169\006\169\000\000\001\153\000\000\000\000\001\153\000\000\000\000\000\000\000\000\001\153\001\153\001\153\001\201\000\000\005\181\006\169\000\000\001\201\000\000\005\181\001\201\000\000\005\181\000\000\000\000\001\153\000\000\000\000\000\000\001\153\001\201\000\000\005\181\000\000\001\201\000\000\005\181\000\000\000\000\001\153\001\153\000\000\000\000\001\153\001\153\000\000\001\201\000\000\005\181\017b\000\000\000\000\001\201\000\000\005\181\000\000\000\000\000\000\000\000\000\000\001\153\001\201\000\000\005\181\001\201\001\153\005\181\000\000\000\000\001\201\001\201\005\181\005\181\000\238\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\201\000\000\005\181\000\000\001\201\000\000\005\181\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\201\001\201\005\181\005\181\001\201\001\201\005\181\005\181\000\000\000\000\000\000\000\000\000\000\000\000\001\201\011\225\005\181\002\158\011\225\000\000\027N\001\201\000\000\005\181\000\000\027R\021\006\000\000\011\225\000\000\000\000\000\000\001\201\000\000\005\181\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011\225\000\000\000\000\000\000\000\000\000\000\011\225\000\000\000\000\000\000\000\000\004E\001\002\001\190\000\000\011\225\004E\000\000\011\225\004E\000\000\000\000\000\000\011\225\000\000\000\000\000\000\000\000\000\000\004E\000\000\027V\000\000\004E\000\000\000\000\000\000\000\000\000\000\011\225\000\000\000\000\000\000\011\225\000\000\004E\000\000\000\000\000\000\000\000\000\000\004E\027Z\011\225\011\225\000\000\000\000\011\225\000\000\000\000\004E\000\000\000\000\004E\000\000\000\000\000\000\000\000\004E\002\194\000\000\000\000\000\000\000\000\011\225\000\000\000\000\007\201\007\201\000\000\000\000\007\201\000\000\000\000\004E\000\000\007\201\000\000\004E\000\000\000\000\000\000\015\250\000\000\000\000\000\000\000\000\000\000\004E\004E\000\000\007\201\004E\004E\006\242\000\000\000\000\000\000\004E\000\000\000\000\004E\007\030\000\000\007\201\000\000\000\000\007\201\007\201\004E\004E\004E\000\000\000\000\007\201\004E\000\000\007\201\004E\000\000\004E\007\201\000\000\007\201\007\201\000\000\007\201\004E\004E\000\000\000\000\000\000\004E\004E\007^\000\000\000\000\000\000\007\201\000\000\000\000\000\000\000\000\000\000\004E\004E\007\201\007\201\000\000\000\000\004E\002\194\000\238\000\000\000\000\000\000\007\174\000\000\000\000\004E\000\000\000\000\004E\000\000\000\000\000\000\004E\004E\002\194\000\238\007\201\000\000\000\000\000\000\001U\000\000\007\201\000\000\000\000\001U\004E\004E\001U\004E\004E\004E\000\000\004E\000\000\000\000\000\000\000\000\001U\000\000\001U\000\000\001U\004E\004E\000\000\000\000\004E\004E\001\202\001\206\022:\000\000\000\000\001U\000\000\000\000\000\000\004E\000\000\001U\000\000\000\000\000\000\004E\000\205\000\000\002\138\001\226\000\000\000\205\000\000\001U\000\205\000\000\000\000\001\238\001U\001U\000\238\000\000\000\000\000\000\000\205\000\000\000\000\000\000\000\205\000\000\001\242\002r\000\000\000\000\001U\002~\000\000\002\146\004\006\004\018\000\205\000\000\000\000\000\000\004\030\000\000\000\205\000\000\001U\001U\001U\000\000\001U\001U\000\000\000\205\000\000\000\000\000\205\000\000\000\000\004\"\000\000\000\205\000\205\000\238\000\000\000\000\000\000\001U\000\209\000\000\000\000\000\000\000\000\000\209\000\000\000\000\000\209\000\205\001U\000\000\000\000\000\205\000\000\000\000\000\000\000\000\000\209\000\000\000\000\000\000\000\209\000\205\000\205\000\000\000\000\000\205\000\205\000\000\000\000\000\000\000\000\000\000\000\209\000\000\000\000\000\000\004M\000\000\000\209\000\000\000\000\000\246\000\205\006\165\002\014\000\000\000\000\000\209\006\165\000\000\000\209\006\165\000\000\000\205\017\134\000\209\000\209\000\238\004M\000\000\000\000\006\165\000\000\000\000\000\000\006\165\000\000\000\000\000\000\000\000\017\138\000\209\000\000\000\000\000\000\000\209\017\178\006\165\000\000\000\000\000\000\000\000\000\000\006\165\000\000\000\209\000\209\000\000\016\226\000\209\000\209\000\000\006\165\016\250\000\000\006\165\000\000\000\000\000\000\000\000\006\165\006\165\000\000\005\169\000\000\000\000\000\209\000\000\005\169\018.\000\000\005\169\000\000\000\000\000\000\000\000\006\165\000\209\0172\000\000\006\165\005\169\000\000\017\022\018B\005\169\000\000\004M\004M\000\000\006\165\006\165\016\146\000\000\006\165\006\165\000\000\005\169\000\000\000\000\000\000\005\r\006\242\005\169\018R\000\000\005\r\000\000\000\000\005\r\000\000\006\165\005\169\000\000\000\000\005\169\000\000\000\000\000\000\005\r\005\169\005\169\000\000\005\r\000\000\000\000\007!\000\000\000\000\007!\000\000\000\000\000\000\000\000\000\000\005\r\005\169\000\000\000\000\000\000\005\169\005\r\007^\000\000\000\000\007!\007!\000\000\007!\007!\005\169\005\169\000\000\005\r\005\169\005\169\000\000\000\000\005\r\005\r\000\238\011\145\000\000\000\000\000\000\000\000\011\145\007!\000\000\011\145\000\000\005\169\000\000\000\000\005\r\000\000\000\000\000\000\000\000\011\145\000\000\000\000\000\000\011\145\000\000\000\238\000\000\000\000\005\r\005\r\000\000\000\000\005\r\005\r\000\000\011\145\000\000\000\000\000\000\000\000\000\000\011\145\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\r\011\145\000\000\000\000\011\145\000\000\007!\000\000\007!\011\145\000\000\000\000\000\000\000\000\001\202\002^\000\000\000\000\002b\000\000\005\254\000\000\000\000\005\194\007!\011\145\t\138\000\000\007!\011\145\007!\000\000\001\210\001\226\007!\000\000\000\000\000\000\000\000\011\145\011\145\001\238\000\000\011\145\011\145\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002j\002r\000\000\000\000\000\000\002~\011\145\002\146\004\006\004\018\000\000\000\000\000\000\000\000\020\222\000\000\026F\nn\000\000\004\029\000\000\004\021\000\000\000\000\004\029\000\000\004\021\004\029\000\000\004\021\000\000\004\"\000\000\000\000\000\000\000\000\000\000\004\029\000\000\004\021\015f\004\029\000\000\004\021\000\000\000\000\000\000\000\000\000\000\000\000\026R\000\000\000\000\004\029\000\000\004\021\000\000\000\000\000\000\004\029\000\000\004\021\000\000\000\000\000\000\000\000\000\000\020\242\004\029\000\000\004\021\004\029\000\000\004\021\000\000\000\000\004\029\000\000\004\021\000\000\000\000\000\000\0045\000\000\000\000\000\000\000\000\0045\000\000\000\000\0045\000\000\004\029\000\000\004\021\000\000\004\029\000\000\004\021\000\000\0045\000\000\000\000\000\000\0045\000\000\004\029\004\029\004\021\004\021\004\029\004\029\004\021\004\021\000\000\000\000\0045\000\000\000\000\000\000\000\000\000\000\0045\000\000\000\000\000\000\000\000\004\029\000\000\004\021\000\000\0045\000\000\000\000\0045\000\000\000\000\000\000\016\186\0045\019\186\000\000\004\005\000\000\000\000\000\000\000\000\004\005\000\000\000\000\004\005\000\000\000\000\000\000\000\000\0045\000\000\000\000\000\000\0045\004\005\000\000\000\000\000\000\004\005\000\000\000\000\000\000\000\000\0045\0045\000\000\000\000\0045\0045\000\000\004\005\000\000\000\000\000\000\004%\000\000\004\005\000\000\000\000\004%\000\000\004\r\004%\000\000\0045\004\005\004\r\000\000\004\005\004\r\000\000\000\000\004%\004\005\000\000\020\162\004%\000\000\000\000\004\r\000\000\000\000\000\000\004\r\000\000\000\000\000\000\000\000\004%\004\005\000\000\000\000\000\000\004\005\004%\004\r\000\000\000\000\000\000\000\000\000\000\004\r\000\000\004\005\004\005\000\000\004%\004\005\004\005\000\000\000\000\004%\000\000\004\r\000\000\000\000\000\000\000\000\004\r\000\000\000\000\000\000\000\000\000\000\004\005\004=\000\000\004%\000\000\000\000\004=\000\000\004Y\004=\004\r\024\026\000\000\000\246\000\000\000\000\002\162\004%\004%\004=\000\000\004%\004%\004=\004\r\004\r\003\146\000\000\004\r\004\r\004Y\000\000\000\000\000\000\000\000\004=\000\000\000\000\004%\000\000\000\000\004=\003\150\000\000\000\000\004\r\000\000\000\000\016~\017\230\000\000\000\000\000\000\004=\000\000\000\000\020N\024F\004=\000\000\016\226\000\000\000\000\000\000\000\000\016\250\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004=\000\000\000\000\n\246\000\000\000\000\000\000\017\002\000\000\001\202\001\206\000\000\000\000\000\000\004=\004=\000\000\000\000\004=\004=\000\000\017\022\017B\000\000\000\000\004Y\004Y\001\210\001\226\000\000\000\000\000\000\000\000\000\000\000\000\004=\001\238\000\000\000\000\000\000\000\000\000\000\021\134\001\202\001\206\022\154\020\202\000\000\000\000\001\242\002r\000\000\000\246\000\000\002~\002\162\002\146\004\006\004\018\000\000\000\000\002\138\001\226\004\030\000\000\027\154\000\000\000\000\001\202\001\206\001\238\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\"\003\150\000\000\001\242\002r\000\000\001\210\016~\002~\000\000\002\146\004\006\004\018\000\000\000\000\000\000\024F\004\030\000\000\016\226\000\000\000\000\000\000\000\000\016\250\000\000\000\000\000\000\001\242\002\130\000\000\000\000\000\000\002~\004\"\002\146\004\006\004\018\000\000\000\000\017\002\000\000\004\030\000\000\027F\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\017\022\017B\000\000\000\000\004\129\004\"\000\000\000\000\004\189\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\021\134\000\000\000\000\025\238"))
|
|
|
|
and lhs =
|
|
(8, "\006\005\004\003\002\001\000\194\194\193\193\192\191\191\191\191\191\191\191\191\191\191\191\191\191\191\191\191\191\191\191\191\190\190\189\188\188\188\188\188\188\188\188\187\187\187\187\187\187\187\187\186\186\186\185\185\184\184\183\183\183\182\182\181\181\181\181\181\181\180\180\180\180\180\180\180\180\179\179\179\179\179\179\179\179\178\178\178\178\177\176\176\175\175\175\175\174\174\174\174\174\174\173\173\173\173\173\173\173\172\171\171\171\170\170\169\169\168\168\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\167\166\166\165\164\163\162\161\161\160\160\159\159\159\159\158\158\158\158\157\157\156\156\156\156\155\154\153\153\152\152\151\151\150\149\149\148\147\146\145\144\144\144\143\143\142\142\141\141\141\141\141\140\140\140\140\140\140\140\140\139\139\139\139\139\139\138\138\137\137\137\136\136\135\135\135\134\134\133\133\132\132\131\131\130\130\129\129\128\128\127\127~~}}|||{{{{zzyyxxwwwwwvvvvuuutttttttsssssssrrrrqqpppoonnnnnnnnnmmllkkkkkkkkkkkjiihhgggggfeeddccccccccccccccbbaa```````````````````````````````__^^]]\\\\[[ZZYYXXWWVVUUTTTTTTTTTTTSRQPPPPPPPPPPOOONNNMMMMLLLLLLLLLKKJJJJJIIHHGFEEDDDDDCCBBAAA@@@@@@???>>==<<;;::999887766554433221100//...---,,,+++****)(''''''''''''''''''&&&&&%%%%%%%$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$##\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! \031\031\031\030\030\029\029\029\029\029\029\029\029\029\029\029\029\029\029\029\029\028\028\027\027\026\026\026\026\026\026\026\025\025\025\025\024\024\023\023\023\023\023\022\022\021\021\020\019\019\019\018\018\017\017\017\016\016\015\015\015\015\015\014\014\r\r\r\r\r\012\011\011\n\n\n\t\t\t\b\b\b\b\007\007")
|
|
|
|
and goto =
|
|
((16, "\000\025\0017\000\022\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\136\000h\000&\000\243\002\b\000L\000K\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\165\000\000\000\000\000\000\000\000\000\000\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,\250\000\000\000\000\001\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\148\001`\002v\000\203\000\000\002\156\t$\001j\002\210\000\025\000\000\000|\000\000\000Z\002\174\000\000\002X\000\000\000\000\000\000\000\000\000\000\000$\000\000\000\r\003\162\0074\000\000\000\000\000\190\003\148\000\000\000\000\000\b\000\000\001\020\000\000+`\002\216\000\000\002\222\001B\000\000\000\000\003*\003f\000\222\003\016\000&\003\162\004&\001\176\003h\001\128\003f\003\138\t\208\000\000\000\000\005F\003n\004\026\000\173\000\000\000\000\000\000\000\000\000\000\000\000\004F\000\000\005\226\000\000\005F\n\016\000\000\000\000\003\130\004L\003\236\028\242\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\144\000\000\004.\004^\004\178\000\000\000\000\000\000\000\000\000\191\000\000\000\000\005B\000%\005l\005h\006\194\004\176\004\228\005t\001~\002\168\006\014\029\020\000\000\000\000\005\006\006\018\nD\000\000\029V\004\168\nd\n\164\000\000\001\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\224,\252\005\244\000\000\n\168\006 \000\000\011<\029r\000Q\000\000\011L\005\202\000\000\000\000\000\000\006T\000\000\004\228\000\000\006J\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\018\002\030\000\000\000\000\001\160\000\000\r\230\000\000\001\018\005@\001\018\000\000\000\000\000\000\000\000\000\000\029\174\000\000\006\030\006\176\000\000\021\170\006D\006\246\000\000\000\000\000\000\006J\000\000\000\000\000\000\000\000\003\130\000\000\000\000\000\000\000\000\000\000\011\166\000\000\000\000\000\000\000\000\000\000\000\000\004f\006\228\000\000\000\000\000\000\003\130\007<\029\234\006\178\006T-(\000\000\001\190\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\000\007\208\029\252\000\000\000\000\006\214\006h\030\156\000\000\000\000\000\000\030\190\006\212\030\208\000\000\006\212\000\000\030\220\006\212\000\000\031B\006\212\006\212\000\000\000\000\006\212\000\000\000\000\031v\000\000\006\212\031\166\000\000\006\212\bz\000\000\000\000\n\164\000\000\000\000\000\000\000\000\006\212\011\148\000\000\000\000\000\000\006\212\000\000\001z\007\234\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\n\000\000\007\178\000\000-X\003\130\000\000\000\000\000\000\000\000\007\208\bJ\011\240\007\200\b.\b6\006z\004\240\006\188\000G\b\172\000\000\000\000\000I\000?\006\196\000f\b\162\001\158\000\000\000e\000\230\003R\002\230\t\254\000\000\000\000\019\"\000\0001\234\t\164\000\000-d\003\130-\160\003\130\000\000\tV\000\000\tx\000\000\000\000\t\140\000\000\000\000\000\000\nf\000\000\001\220\000e\000\000\000\000\tL\000\000\000\000\000\000\000\000\000\000\000\000\000e\000\000\000\000\000e\000\000\b\162\005\\\000\000\000}\002\168\000\000\000}\000\000\000\000\002v\000e\000\000\000\000\000\000\000\000\000\000\000\000\000}\012 \012H\nf\n8\031\176\015\144\000\000\t\232\007\020\012\148\n\004\0070\nl\027\002\000\000\000\000\000\000\000\000\000\000\0118\b\128\000\000\000\000\000\000\n\016\007b\006*\000}\003\210\000\000\000e\000\000\000\000\000\000\004\168\000\000-\194\003\130\012\238\n\024\007n\012\244\n4\007\196\002\250\r\186\006\212\rH\n<\007\216,<\n\244\000\000\003n\006\212.D\003\130\n\248\000\000\000\000\000\000\000\000\000\144\n\234\n\250\000\000\000\000\007|\rh\n\130\b& \n\006\212\r\168\n\134\bH\027<\000\000&B\000\000\000\000\014\b\031\232\0246\000\000\000\000\000\000\000\000)\004\000\000\000\000\000\000\004\150\014f\000\000\000\000\000\000\000\000 L,\208\000\000\000\000\000\000\000\000\n|\014\194\000\000\n\154 \170\n\154 \176\n\154\000\0000\232\000\000 \216\n\154\014\242\003\152\015 \000\000\000\000!\000\n\154!\b\n\154!d\n\154!\190\n\154!\200\n\154\" \n\154\"N\n\154\"|\n\154\"\172\n\154#\002\n\154# \n\154#v\n\154#\166\n\154#\196\n\154#\214\n\154$\006\n\154$z\n\154$\170\n\154%\n\n\154%:\n\154\bn\006\002\002\004\000\144\011L\000\000\000\130.n\000\000\015~\000\000.^\000\000\003\130\003x\000\000\003\130.h\003\130\000\000\015\172\000\000\000\000\000\000\015\236\000\000\000\000\000\000\000\000\000\000\006\212\000\000\000\000.\198\000\000\003\130\000\000\000\000\003x\011R\000\000.\208\003\130\016\006\000\000\000\000\n\246\000\000.\210\003\130\016H\000\000\000\000\016|\000\000\000\000\000\000/$\003\130\016\158\000\000\n\218\016\224\000\000%\\\000\000\006\212%\150\000\000\006\212%\252\000\000\006\212\012@\000\000\000\000\000\000\000\000\000\000&&\006\212\005V\006\176\000\000\000\000\000\000\n\154\017\004\000\000\000\000\000\000&\004\n\154\000\000\000\000\000\000\000\000\017T\000\000\000\000\000\000\n\154\017\194\000\000\018\020\000\000\000\000\000\000\018`\000\000\000\000\000\000\000\0001\136\000\000\000\000\018h\000\000\000\000\000\000&\148\n\154\018\156\000\000\000\000\000\000&\204\n\154\018\248\000\000\000\000&\238\n\154\n\154\000\000\006n\019l\000\000\000\000'\028\n\154\019\186\000\000\000\000'\\\n\154't\n\154\000\000'\172\n\154\000\000\000\000\019\210\000\000\000\000(6\n\154\020\020\000\000\000\000(<\n\154\020,\000\000\000\000(t\n\154\000\000(\146\n\154\000\000\0038\000\000\000\000\n\154\000\000\000\000\020x\000\000\000\000\020\160\000\000\000\000\011,\000\000\000\000\020\238\000\000\021,\000\000\000\000\000\000\000\144\011\194\000\000)&\006\174\001\018\021L\000\000*(\000\000\000\000\000\000*p\000\000\000\000\021\212\000\000\022\002\000\000\000\000\000\000\000\000\022$\000\000\000\000\000\000(\198\n\154(\212\n\154\000\000\n\218\022d\000\000\000\000\022\196\000\000\023\030\000\000\000\000\027\002\000\000\000\000\000\000\0238\000\000\000\000\000\000\000\000\023l\000\000\000\000\000\000\000\000\0128\000\000\000\000\000\000,N\000\000\002\024\000\000\002\190\000\000\011\228\000\000\002H\000\000\000\000\000\000\000\000\000\000\000\000\0118\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\154\000\000\012@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\bx\006\142\000}\023\140\000\000\011v\b\164\011\234\001\186\006\154\000}\003\218\000e\b\130\000}\000\000\023\174\000\000\003\174\000\000\011|\b\200\011z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011\194\002V\000\207\000\000\000\000\000\000,T\000\0001\242\000\000\tZ\000\000\tf\000\000\000\000\000\000\000\000\001Z\000\000\000\000\000\000\b\198\001\018\000\000\001\018\004\146\000\000\nN\001\018\001\018\t\162\000\000\023\222\000\000\t\230\012\144\000\000\024\136\006\240\000\000\000\000\000\000\000\000\000\000\000\000\n\154\000\000\007b\000\000\n\154\000\000\000\000\004T\000\000\000e\000\000\0058\000\000\000e\000\000\005B\000e\000\000\000}\000\000\n\022\b\138\000a\000\000\011\204\011\248\n6\012\024\012\176\005\138\000e\006\244\000\000\n@\012\196\012\210\006\188\007\228\012\190\nz\012\238\006\212\b\180\012\214\000\000\000\000\0072\tt\000\000\0066\002\156)\182\006\212\024\018\000\000\b\014\002\218\012\154\n\150\b\244\000\186\000\000\012\192\n\164\014\000\000\000/0\003\130\rn\r\168\000\000\t\148\000\000\r*\n\188\r\"\rH\002p\000\000\000\000\000\000\000\000\000\000\n\192\t\166\000\000\n\212\t\190\000\000\006\248\017\244\rN\rT\n\226\r\196\t\214\000\000\n\232\r\198\n(\000\000\r`\n\240\r\222\000\000\r\218\000\000\nh\000\000\r\230\000\000\007\128\000e\r\194\011\000\r\244\000\000\007\130\002\130\r\206\000\000\000\000\003l\014\006\n~\000\000\007\208\000e\n\240\000\000\003\246\000\000\r\162\011\n\t\242\002\188\000\000\r\168\011\026\r\156\rH\r\176\r\178\011\"\014\242\000\000\r\216\001\182\000\000\000\000\000\000\000\000\000\206\011,\r\178/B\003\130\000\000\000\181\011F\014R\000\000\000\000\000\000\000\000\000\000\000\000/N\003\130\000\000\011V\014\158\000\000\000\000\000\000\000\000\000\000\000\000\017\014\000\000/\160\003\130\011\178\000\000\003\130\011Z\002(\000\000\000\000\011l\011\162\014R\000\000\0030,\146\000\000\002\178\000\000\000\000\000\000\000\000/\254\003\130\003\130\000\000\000\000\0042\000\000\014T\000\000\b \0042\0042\000\000\011\168,d\003\1300\n\003\130\011\180\000\000\000\000\000\000\000\000\011\224\000\000\000\000\000\130\000\000\005F\0142\011\180\015*\014\b\000\000\000\000\t6\005\232\014F\000\000\000\000\011\182\0158\014,\000\000\000\000%n\000\000\001\218\000\000'\156\024:\003\130\000\000/\148\003\184\000\0000^\000\000\000\000\000\000\000\000\000\000\0042\000\000\000\000\011\240\014h\011\184\015`\0146\000\000\000\0000z\012R\014t\000\000\000\000\000\000 T\000\000\000\000\000\000\000\000\000\000\000\000\012n\000\000\014\130\011\198\004L\000\000\015X\015\n\012r\014\138\000\000\000\000\014\148\011\228\004\228\000\000\000\000\007\182\029r\003\014\000\000\000\000\000\000\0146\014\\\012\b\000\000\014`\0146\000\000\015\028\012\144\014\162\000\000\000\000\000\000\003\130\005t\005\254\tp\000\000\000\000\000\000\000\000\014h\012\014\000\000\n(\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\130\014V\012\026\015\144\014h\000\000*\140\000F\012 \014D\003\248\0004\0128\014\232\000\000\015\140\024\226\000\000\000\000\025\018\000\000\012\196\000\000\004\150\000\000\000\000\000\000\000\000\000\000\000\0000\028\003\130\000\000\015\142\025:\000\000\000\000\025j\000\000\002\\\012T\015B\000\000\000\000\019H%V\015\004\000\0000\198\003\130\025\136\000\000\000\000\025\224\000\000\000\000\012\226\000\000\005\208\000\000\000\000\000\000\000\000\000\000\000\000*\186\000\000\000\000+2*\226\015\006\000\0000\228\003\130\026\002\000\000\000\000\026Z\000\000\000\000\012X\026\136\012\234\000\000\012Z\012r\001\150\004\166\012|\b\238\012\152\015T\026\172\012\254\000\000\012\174\012\180\014\250\000\000\007\240,\214\000\000\007&\000\000\012\182+N+\\\br\014n\t4\000\0001\026\0038\000\000\005\160\000\000\000\000\005\160\000\000\000\000\005\160\015\016\000\000\011\142\005\160\015p\0270\r\000\000\000\005\160\000\000\000\0001\"\000\000\000\000\000\000\005\160\000\000\000\000\r\\\000\000\r\250\b\140\rf\000\000\012\184,\226\r\128\000\000\000\000\000\000\000\000\r\142\000\000\000\000\004X\000\000\005\1601B\000\000\014x\005\160+\150\000\000\r\146\014\238\012\232\015\228\014\186\000\000,\b\r\148\014\244\000\000\000\000\000\000#\216\007\200\000\000\000\000\000\000\000\000\000\000\000\000\n|\r\158\000\000\015\006\000\000\000\000\000\000\000\000\r\182)\164\000\000\000\000\000\000\000\000\n|\000\000\000\000\r\216)\250\000\000\000\000\000\000\000\000\000\000\000}\000e\000\000\000\000\006\212\000\0001Z\003\130\000\000\005\246\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\014\188\r\026\n\030\000}\000\000\nV\000\000\000e\000\000\015\228\000\000\000\000\000\000\000\000\000\000\b\176\000\000\000\000\000\000\000\000\000\000\000\000\015\140\000e\014\188\014\\\b$\r:\000\000\001\"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\014h\b\208\r^\000\000\007\252\015\242\015\170\r\224\000\000\000\000\015\158\000%\003\142\000\000\000\000\000\000\rh\000\000\rl\001\026\000\000\000\000\001\018\001D\000\000\000\000\000\000\000\000\000\000\014\254\000\000\000\000\n&\007\168\000\000\000\0001\196\003\130\003\130\000\0001\208\003\130\011(\000\000\000\000\000\000\003\130\000\000\000\000\007\218\015\176\014H\000\000\000\000\015\164\007L\0016\000\000\000\000\000\000\000\000\n4\015\242\bb\015\198\014V\000\000\000\000\015\186\b\242\005\\\000\000\000\000\000\000\000\000\000e\000\000\005\248\000\000\000\000\000\000\027J\000\000\027b\000\000\000\000\000\000\000\000\000\000\b\206\000\000\000\000\000\000\t\144\000\000\003\130\000\000\tp\000\000\000\000\000\000\028$\006\212\000\000\000\000\004\014\015$\001p\000\000\000\000\000\000\000\000\000\000\000\000\0118\000\000\000\000\000\000\000\000)b\000\000\014b\000\000\000\000\000\000\000\000\004L\005\166\027\230\028\026\000\000\000\000\014r\028\150\000\000\000\000\000\000\014\132\028\194\000\000\000\000\000\000\000\000"), (16, "\006\016\003\223\002\b\002\t\001\187\000\139\006\179\006\165\001\204\002\238\001\187\000;\0062\001\219\006`\006\157\002L\006\017\006\190\001\219\006\019\002\238\001\245\002\238\002M\001\014\001\232\000\189\006\132\006\020\006!\006\016\004\229\002\b\002\t\000\139\001\245\002[\000\148\005v\006X\003\234\003\236\003\238\0007\000?\006t\002L\006\017\006 \001\223\006\019\001\017\000q\0007\002M\001\223\004\232\006\021\000m\006\020\006!\000\139\004\027\001\224\000\144\001\234\000\\\002[\001\187\001\224\001\230\004\234\000\189\001\187\004y\001\227\004\031\001\219\000\139\001[\000\149\001\204\001\219\000`\0007\006\022\001[\002\175\006\021\002]\004\235\0061\006\183\006\023\001\247\002\178\000\145\000\193\001\\\002\179\002\012\001^\001_\006d\006e\001\\\001l\001\019\001^\001_\006&\001\185\006f\006g\001\223\001\014\006\022\001\019\001\015\001\223\002]\001\226\001\212\006h\006\023\006'\001\246\000\139\001\224\006l\001\204\002\012\001\019\001\224\006\026\006d\006e\006\192\001\218\006\028\001\246\006&\001\017\001\n\006f\006g\001\248\000\189\001m\006\030\001n\002\186\002_\005x\002e\006h\006'\001 \001\014\005A\002k\001\014\002a\002\238\006\031\006\026\001c\000m\001\028\001\213\006\028\005\205\006\016\001u\002\b\002\t\001\245\001d\000d\001!\006\030\002m\001\014\002_\001d\002e\004\236\001a\002L\006\017\006 \002k\006\019\002a\001%\006\031\002M\006\216\002\t\005\207\000:\006\020\006!\006\016\002\180\002\b\002\t\001\226\001\019\002[\0009\004\232\002m\005\208\000\194\002\238\004\205\004E\005\210\002L\006\017\006 \005\254\006\019\002\182\002\238\004\234\002M\001\014\001w\006\021\001\"\006\020\006!\006v\000\139\001w\001\146\000\144\001b\002[\000=\000\250\001W\001x\004\235\001b\000\253\005H\005I\001\019\001\019\0015\006\130\001\019\001\017\006}\001\014\006\022\001\028\005\001\006\021\002]\006\150\006\151\006U\006\023\004\212\005R\006a\004\156\001\000\001[\002\012\001\234\001\019\003\223\006\128\004\213\006\161\002\208\001\246\004\237\006&\001\017\001%\002\238\001?\002\211\006\022\000x\001\\\002\179\002]\001^\001_\006\217\006\023\006'\006b\004\026\000\250\001\028\001\247\002\012\001\028\001\153\006\026\006c\006\162\003\154\001\187\006\028\001\188\006&\000\189\003\237\003\236\003\238\001\014\001\219\001\019\006\030\006\185\001b\002_\001\028\002e\006~\006'\001\000\006~\003\204\002k\003\160\002a\001\019\006\031\006\026\005\205\006W\000\127\001\187\006\028\001\217\006\016\000\133\002\b\002\t\003\239\001\019\001\219\006~\006\030\002m\001\248\002_\001\223\002e\001c\000\143\002L\006\017\006 \002k\006\019\002a\005\207\006\031\002M\001d\001\224\001\028\003\156\006\020\006!\006\016\003\207\002\b\002\t\000\250\005\208\002[\000\189\000\194\002m\005\210\000@\001\223\004\205\005\233\002\238\002L\006\017\006 \001[\006\019\002\180\001%\0007\002M\001\028\001\224\006\021\000\250\006\020\006!\006(\000\139\003\155\000\173\001\204\001\019\002[\001\\\001l\005\153\001^\001_\001\187\002\238\001\242\001w\001\234\004X\002\b\002\t\001%\001\219\005\155\001\146\006\022\001b\003\155\006\021\002]\003\157\003r\006$\006\023\004\212\000\139\000\128\001\191\001\204\004\127\002\012\003G\000\194\001\238\000\142\004\213\001\247\001[\001\031\004\220\006&\001m\004\205\001n\002(\000\131\006\022\001\028\001\014\001\223\002]\001\015\0007\003\242\006\023\006'\001\\\001l\004\144\001^\001_\002\012\001\014\001\224\006\026\001\015\001u\000\250\004[\006\028\000\175\006&\000\134\003\243\000\194\001\017\0007\001d\003\223\006\030\001\014\003u\002_\005\b\002e\002\201\006'\000\194\001\248\001\017\002k\006\135\002a\001\218\006\031\006\026\001\192\002\011\000\164\001m\006\028\001n\0020\002\238\004\208\004\205\000\194\001\017\002\012\002\238\006\030\002m\001!\002_\006\016\002e\002\b\002\t\005:\003\236\003\238\002k\001\218\002a\001u\006\031\001!\006\220\006\221\001w\002L\006\223\004\136\000\194\006\019\001d\003I\001x\002M\001b\000\166\001\019\002m\006\020\006\225\006\016\000\171\002\b\002\t\006\240\000\139\002[\005+\001\204\000\170\001\019\004\212\004\177\0023\006\232\002_\002L\006\233\006u\000\181\006\019\003\208\004\213\002`\002M\002a\004\214\006\021\001\019\006\020\006\241\000\176\001\187\004\138\002\024\005}\001\187\002[\003\201\000\180\0015\001\219\001w\000\186\001\014\001\219\002\238\001\028\006b\001\158\001x\002\172\001b\000\203\0015\006\022\004\139\006c\006\021\002]\001K\001\028\000\194\006\023\000\178\006\142\003\207\005\246\001\\\002\029\002\012\001^\001_\001%\003\239\001?\001>\006\228\001\223\001\028\000\194\000\139\001\223\0055\001\204\001\014\006\022\001%\002q\001?\002]\000\187\001\224\005\249\006\023\006'\001\224\001\187\001[\004\017\004\221\002\012\004\138\001N\006\026\001%\001\219\006\245\005\251\006\028\003|\002\233\002\234\000\195\004\007\005\253\000\204\001\\\002\179\006\030\001^\001_\002_\006:\002e\000\217\006'\002\b\002\t\005\129\002k\001\014\002a\005\252\006\031\006\026\001u\001\019\002\251\000\216\006\028\005\249\006\016\001\223\002\b\002\t\000\189\001d\000\220\006B\006\030\002m\000\194\002_\001\234\002e\005\251\001\224\002L\006\017\006.\002k\006\019\002a\004\215\006\031\002M\003\012\003\127\003\132\005\205\006\020\006!\006\016\000\194\002\b\002\t\000\194\001\019\002[\001\249\005\252\002m\001\247\002\238\001c\000\194\006\232\001\028\002L\006\233\005\160\002\238\006\019\003\245\002\238\001d\002M\005\207\001w\006\021\005A\006\020\006\236\004\028\002\b\002\t\001x\001\234\001b\002[\001\187\005\208\004\021\003\248\002\011\001\187\005\210\004\024\002L\001\219\005\226\002\158\002\180\001\019\001\219\002\012\002M\006\022\001\028\000\232\006\021\002]\006L\001\235\001\248\006\023\001\247\004\238\000\226\002[\002\212\001l\002\012\001^\001_\002\240\000\240\001w\006\175\005\236\005\164\001\187\006&\004&\001\029\001\146\001\223\001b\006\022\000\228\001\219\001\223\002]\000\233\002\238\0007\006\023\006'\001\014\005A\001\224\001\015\002\238\002\012\001\028\001\224\006\026\002_\006\162\006\239\001P\006\028\002\217\002\233\002\234\002`\000m\002a\001\248\005H\005I\006\030\002]\001\004\002_\001\017\002e\001\223\006'\000\194\001'\004\215\002k\002\012\002a\005Y\006\031\006\026\001u\005R\001\234\001\224\006\028\001\014\006\016\001\007\002\b\002\t\004\246\001d\000\194\006;\006\030\002m\000\194\002_\006\182\002e\002b\001\r\002L\006\017\001!\002k\006\019\002a\002\021\006\031\002M\001\247\000\236\005\030\000\241\006\020\006*\002\237\005\212\005\249\001<\001\014\001\014\002[\001\015\001\015\002m\002_\001\022\002e\005H\005I\001\234\001\019\005\251\002k\002\238\002a\001\234\001:\005\031\005_\005 \001w\006\021\0033\005Q\001T\001\017\001\017\005R\001x\001\014\001b\004\215\001\015\002m\001k\003\191\005\252\0012\001\247\001>\001\248\003\199\0019\001\175\001\247\002\238\001[\002\238\005!\006\022\000\194\003D\000\194\002]\001(\001\019\001\017\006\023\000\194\001[\004-\001\028\001!\001!\002\012\001\\\001l\002\239\001^\001_\001M\004:\0042\005A\006-\005\"\001\177\000\194\001\\\002\179\001\184\001^\001_\006\160\005#\000\194\005$\001%\004\011\006'\001\248\001\019\001\019\001!\001\014\000\194\001\248\001\015\006\026\004\002\001\148\004(\005`\006\028\000\194\003\207\001\028\006\152\001m\001S\001n\002(\001\014\006\030\000\189\001\015\002_\003\207\002e\0047\002\003\001\017\001\019\001\145\002k\005&\002a\001j\006\031\006q\005(\0052\003b\001u\002\006\0015\0015\000\194\005A\001\017\005\\\000\194\001\028\001\028\001d\002m\001c\005a\003u\001t\0007\001\187\001\187\004x\004~\005]\005A\001d\001!\002\020\001\219\001\219\005H\005I\003\207\002#\0015\002\238\001%\001%\0016\001?\005D\001\028\006\163\006\164\001!\005J\005Z\000\189\001\014\000\194\005R\001\015\003e\005\200\001\136\001\019\002\b\002\t\006\154\001\187\001\152\004\135\005R\000\194\001w\001\223\001\223\001%\001\219\001?\002L\003h\001x\001\019\001b\001\017\002&\001w\002M\001\224\001\224\001[\001\164\000\189\003\134\001\146\002,\001b\000\194\004.\001\019\002[\005A\005\030\000\194\005H\005I\001\169\001\014\0015\001\\\001l\004\004\001^\001_\001\223\001\028\005\205\004\205\004X\005J\005Z\001!\005H\005I\005R\003\253\0015\006\138\001\224\005\031\006\194\005 \006T\001\028\002A\006\168\001\234\005J\005Z\0007\001\234\001%\005R\001?\005\207\005\030\000\194\000m\002\238\005\240\001\019\002F\001m\002]\001n\002(\000\194\000\189\005\208\001%\005!\001?\003\203\005\210\002\012\001\247\004\030\005\217\004\212\001\247\002\157\006\174\005\031\006\176\005 \003\190\003\189\001u\006^\004\213\001\174\005\205\001\180\004\219\004@\002\b\002\t\005\"\001d\002b\005H\005I\003u\001\234\0015\000\194\005#\003\196\005$\002L\001\019\001\028\0043\005!\004X\005J\005Z\002M\001\014\005\207\005R\001\015\000\194\006\202\005`\003\211\002_\001\248\002e\004D\002[\001\248\001\247\005\208\002k\001\225\002a\001%\005\210\001?\005\"\000\194\005\214\002\b\002\t\001\017\000\194\005&\006\196\005#\001w\005$\005(\0052\002\238\002m\005\212\002L\001x\001\197\001b\001\028\005\\\006\204\000\189\002M\004\205\005`\000\194\001\199\002\238\006Q\006\163\006\164\006j\002\b\002\t\005]\002[\002\238\006\198\001\206\001!\002]\001\248\003\223\000\194\003\241\005\205\002L\005&\002\238\005R\006\139\002\012\005(\0052\002M\003\230\001\208\006\171\002\b\002\t\002\238\003\232\005\\\005\187\006?\0048\001\211\002[\001\019\001\215\001\014\001\222\002L\005\207\004\212\001[\002b\005]\002\b\002\t\002M\004P\005N\003\236\003\238\004\213\004\t\005\208\002]\004\245\004]\003\250\005\210\002[\001\\\001l\005\211\001^\001_\002\012\003\169\002\238\004`\002_\001\155\002e\003\182\001[\001\187\001\234\004\143\002k\0015\002a\004h\001\014\000\194\001\219\001\015\001\028\002]\001)\000\194\006\199\002b\003\254\001\\\001l\003\178\001^\001_\002\012\002m\002\238\003\223\006F\001\139\001m\001\247\001n\001\142\001*\001\017\001\019\002\238\001%\002]\001?\001H\004\029\001\019\002_\000\194\002e\001\223\004l\002b\002\012\001\187\002k\006J\002a\001u\001\019\002\002\004#\002\011\001\219\001\224\001m\004*\001n\001\142\001d\005V\003\236\003\238\002\012\002\005\001!\002m\003\168\002b\002_\002\019\003\001\000\194\004t\002\"\001\014\001\248\002k\001\015\002a\001u\001)\001/\001\014\004\133\0040\001\015\002\238\002%\001)\001\223\001d\002+\0027\001\019\002_\000\194\002e\002m\004C\001\028\001*\001\017\002k\001\224\002a\004H\0024\001F\001*\001\017\001w\000\194\001[\002<\002_\001+\000\194\004S\001x\004\\\001b\002;\002`\002m\002a\003\247\002@\001\014\002E\004_\001\015\001\\\001l\001)\001^\001_\004f\0015\001!\004j\004\137\001\144\001w\004o\001\028\000\194\001!\003\223\001=\002\241\001x\004{\001b\001*\001\017\001/\004\142\002\b\002\t\000\194\001D\002j\002\161\001/\004\147\002\196\000\194\001\019\004\152\002\203\001%\002L\001?\004\162\001m\001\019\001n\001\142\000\194\002M\000\194\002\b\002\t\002\238\002\238\004\003\004\168\006\147\003\236\003\238\000\194\001!\002[\002\232\004\179\002L\004\194\000\194\002\231\001u\000\194\002\b\002\t\002M\000\194\004\216\002\238\000\189\001/\003\188\001d\0015\000\194\003W\002\238\002L\002[\000\194\001\028\0015\001\019\003_\001=\002M\003\148\000\194\001\028\003\158\003\180\000\194\001=\005\205\004\199\003\185\000\194\004\223\002[\004\191\004\228\002\b\002\t\004\240\004\250\005\021\001%\002]\001?\000\194\003\195\003\197\005*\003\210\001%\002L\001?\000\194\002\012\000\194\003\219\005\207\004\233\002M\001w\002\238\0015\0054\000\194\003\171\005\019\002]\001x\001\028\001b\005\208\002[\001=\003\249\002\238\005\210\002\238\002\012\002b\005\221\005@\002\b\002\t\005T\002\b\002\t\002]\004\000\004)\005d\000\194\002\238\005j\000\194\001%\002L\001?\002\012\002L\000\194\000\194\000\194\002b\002M\005n\002_\002M\002e\000\194\003{\004\"\004$\003v\002k\005\027\002a\002[\002\238\005\138\002[\005\178\005\238\002b\000\194\002]\004'\002\b\002\t\005'\002_\005/\002e\002\238\005\183\002m\002\012\002\238\002k\005\222\002a\002L\000\194\002\b\002\t\000\194\005F\002\238\002\238\002M\002_\000\194\003\001\005\188\000\194\003k\0046\002L\002k\002m\002a\002b\002[\004,\005\218\002M\000\194\005\194\005\202\005\243\002]\003\\\005w\002]\0045\002\b\002\t\0041\002[\002m\000\194\002\012\000\194\000\194\002\012\001[\0044\005\154\002_\002L\002e\005\180\004B\006\b\002\238\000\194\002k\002M\002a\002\238\000\194\005\191\005\225\003T\001\\\001l\002b\001^\001_\002b\002[\004G\002\238\001\014\000\194\002]\001\015\002m\006E\002\238\004I\002\238\002\238\002\b\002\t\000\194\002\012\002\238\000\194\000\194\000\194\002]\004O\002_\006_\002e\002_\002L\002e\002\238\001\017\002k\002\012\002a\002k\002M\002a\001m\005\237\001n\002(\002b\006k\005\241\000\194\003L\002\238\006y\002[\006{\002\238\004N\002m\002]\004R\002m\005\245\002b\004T\004^\002\b\002\t\001u\005\250\002\012\006\006\006\r\001!\002_\000\194\002e\006\027\004i\001d\002L\004e\002k\003q\002a\004g\004k\004n\002M\006\"\002_\000\194\002e\004\130\002X\002b\004s\004v\002k\004\129\002a\002[\001\019\002m\004|\004\128\006+\002]\002\238\000\194\006p\000\189\002\b\002\t\000\194\002\238\000\194\004\132\002\012\002m\004\141\002\238\002_\004\146\002e\004\148\002L\004\249\004\151\002\238\002k\001w\002a\004\154\002M\005\205\002\b\002\t\002\238\001x\002d\001b\004\158\002b\004\166\004\173\001$\002[\004\184\001\014\002L\002m\001\015\001\028\002]\004\200\004\217\004\248\002M\002\b\002\t\004\241\006\156\005\207\002s\002\012\004\242\004\247\004\251\006\170\002_\002[\003\001\002L\000\189\006\226\001\017\005\208\002k\001%\002a\002M\005\210\006\237\004\252\005\029\005\239\002r\005\022\005\023\002b\005\028\006\242\0051\002[\005-\005.\0050\005\205\002m\002]\005[\005>\005?\005C\005E\002\b\002\t\005G\005S\005c\002\012\005e\001!\005f\002\b\002\t\002_\005k\002e\002L\005o\005s\005\133\002]\002k\005\207\002a\002M\002\b\002\t\005\140\005\144\005\168\002\166\002\012\002b\003\152\005\189\005\195\005\208\002[\001\019\002L\003\161\005\210\002m\002]\005\213\006\002\005\219\002M\005\223\006\015\006\t\006\n\006\014\002\177\002\012\006\029\002b\006D\001[\002_\002[\002e\006O\003\174\006Z\006\\\002\175\002k\006n\002a\002\b\002\t\006o\006s\002\178\006\155\006\159\001\\\002\179\002b\001^\001_\006\134\002_\002L\002e\006\169\006\173\002m\001\028\002]\002k\002M\002a\006\211\000\000\000\000\000\000\002\200\002\011\000\000\002\012\000\000\002\b\002\t\002[\002_\000\000\002e\000\000\003\165\000\000\002m\002]\002k\001%\002a\002L\000\000\000\000\000\000\000\000\000\000\000\000\002\012\002M\002b\000\000\000\000\002\b\002\t\002\207\000\000\000\000\000\000\002m\000\000\000\000\002[\003\155\000\000\000\000\000\000\002L\000\000\001c\002\b\002\t\000\000\002b\000\000\002M\000\000\002_\000\000\002e\001d\002\210\002]\000\000\002L\002k\002_\002a\002[\000\000\000\000\000\000\002M\002\012\002`\000\000\002a\000\000\002\216\000\000\002_\000\000\002e\002\b\002\t\002[\002m\002\180\002k\000\000\002a\000\000\000\000\000\000\000\000\002]\000\000\002L\002b\000\000\000\000\002\b\002\t\000\000\000\000\002M\002\012\002\181\000\000\002m\000\000\002\219\001w\001\014\000\000\002L\001\015\000\000\002[\000\000\001\146\002]\001b\002M\000\000\002_\000\000\002e\000\000\002\244\000\000\002b\002\012\002k\000\000\002a\002[\000\000\002]\000\000\001\017\002\b\002\t\000\000\000\000\000\000\000\000\000\000\000\000\002\012\004\187\000\000\000\000\000\000\002m\002L\000\000\002b\002_\000\000\002e\000\000\000\000\002M\000\000\004\190\002k\000\000\002a\000\000\000\000\002]\000\000\002\254\002b\000\000\002[\001!\000\000\000\000\000\000\000\000\002\012\000\000\002_\000\000\002e\002m\000\000\002]\000\000\000\000\002k\000\000\002a\000\000\002\b\002\t\000\000\000\000\002\012\002_\000\000\002e\000\000\000\000\001\019\002b\000\000\002k\002L\002a\000\000\002m\000\000\000\000\000\000\000\000\002M\005\030\000\000\000\000\000\000\000\000\000\000\002b\000\000\000\000\003\003\002]\002m\002[\000\000\000\000\002_\000\000\002e\002\b\002\t\000\000\002\012\000\000\002k\000\000\002a\000\000\005\031\000\000\005 \000\000\0015\002L\002_\000\000\002e\000\000\000\000\001\028\000\000\002M\002k\004\192\002a\002m\000\000\002b\000\000\000\000\000\000\003\005\000\000\000\000\002[\000\000\000\000\002\b\002\t\005!\000\000\002\b\002\t\002m\000\000\001%\002]\001?\000\000\000\000\000\000\002L\000\000\000\000\002_\002L\003\001\002\012\000\000\002M\000\000\000\000\002k\002M\002a\000\000\005\"\002\b\002\t\003\t\000\000\000\000\002[\003\017\000\000\005#\002[\005$\000\000\000\000\000\000\002L\002b\002m\000\000\000\000\000\000\002]\000\000\002M\000\000\000\000\000\000\005^\000\000\000\000\000\000\000\000\002\012\003\023\000\000\000\000\002[\000\000\000\000\000\000\000\000\000\000\000\000\002_\000\000\003\001\000\000\002\b\002\t\000\000\005&\002k\000\000\002a\000\000\005(\0052\002b\000\000\002]\000\000\002L\000\000\002]\000\000\005\\\000\000\000\000\000\000\002M\002\012\000\000\002m\000\000\002\012\001\014\000\000\000\000\001\015\003\029\005]\000\000\002[\000\000\002_\000\000\003\001\000\000\001[\002]\000\000\000\000\002k\000\000\002a\002b\000\000\000\000\000\000\002b\002\012\000\000\001\017\000\000\005\152\002\b\002\t\001\\\002\179\000\000\001^\001_\000\000\002m\000\000\000\000\000\000\000\000\000\000\002L\000\000\000\000\002_\000\000\003\001\002b\002_\002M\003\001\000\000\002k\000\000\002a\003%\002k\002]\002a\000\000\000\000\001!\002[\000\000\000\000\000\000\002\b\002\t\002\012\000\000\000\000\000\000\000\000\002m\002_\000\000\003\001\002m\002\b\002\t\002L\000\000\002k\000\000\002a\000\000\000\000\000\000\002M\000\000\001\019\000\000\002L\002b\003*\000\000\000\000\001c\000\000\000\000\002M\002[\000\000\002m\000\000\000\000\000\000\000\000\001d\000\000\0036\002\b\002\t\002[\000\000\002]\000\000\000\000\000\000\000\000\002_\000\000\003!\002\b\002\t\002L\002\012\000\000\002k\000\000\002a\000\000\000\000\002M\0015\002\180\000\000\002L\000\000\000\000\000\000\001\028\000\000\003;\000\000\002M\002[\000\000\000\000\002m\000\000\002b\000\000\000\000\002]\003@\000\000\000\000\002[\000\000\001w\002\b\002\t\000\000\000\000\002\012\002]\001%\001\146\001\196\001b\000\000\000\000\000\000\000\000\002L\000\000\002\012\002_\000\000\002e\002\b\002\t\002M\000\000\000\000\002k\000\000\002a\000\000\002b\000\000\000\000\003O\000\000\002L\002[\000\000\000\000\002]\000\000\000\000\002b\002M\000\000\000\000\000\000\002m\000\000\000\000\002\012\002]\000\000\003R\000\000\000\000\002[\002_\000\000\002e\002\b\002\t\002\012\000\000\000\000\002k\000\000\002a\000\000\002_\000\000\003\001\000\000\000\000\002L\002b\000\000\002k\000\000\002a\000\000\000\000\002M\000\000\000\000\000\000\002m\002b\003X\002]\000\000\002\b\002\t\000\000\000\000\002[\000\000\000\000\002m\000\000\002\012\000\000\002_\000\000\003\001\002L\000\000\002\b\002\t\002]\002k\000\000\002a\002M\002_\000\000\003\001\000\000\000\000\003Z\002\012\002L\002k\000\000\002a\002b\002[\000\000\000\000\002M\000\000\002m\000\000\000\000\000\000\003d\000\000\000\000\000\000\000\000\000\000\000\000\002[\002m\000\000\002b\000\000\000\000\002]\000\000\000\000\000\000\002_\000\000\003\001\000\000\000\000\000\000\000\000\002\012\002k\001\014\002a\000\000\001\015\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002_\000\000\003!\002\b\002\t\000\000\000\000\002]\002k\002m\002a\000\000\002b\000\000\000\000\000\000\001\017\002L\002\012\000\000\000\000\000\000\000\000\002]\0013\002M\002\b\002\t\000\000\002m\000\000\003m\000\000\000\000\002\012\000\000\000\000\000\000\002[\002_\002L\002e\000\000\002b\001[\000\000\000\000\002k\002M\002a\000\000\000\000\000\000\001!\003p\000\000\000\000\000\000\000\000\002b\000\000\002[\000\000\001\\\001l\000\000\001^\001_\002m\000\000\002_\000\000\002e\000\000\000\000\002\b\002\t\000\000\002k\000\000\002a\000\000\001\019\000\000\000\000\000\000\002_\000\000\002e\002L\000\000\002]\000\000\000\000\002k\000\000\002a\002M\000\000\002m\000\000\000\000\002\012\003~\000\000\000\000\001m\000\000\001n\002(\002[\000\000\000\000\000\000\002]\002m\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\b\002\t\002\012\0015\002b\000\000\000\000\000\000\001u\000\000\001\028\000\000\000\000\000\000\002L\000\000\000\000\000\000\000\000\001d\000\000\000\000\002M\003t\000\000\000\000\000\000\002b\003\129\000\000\000\000\002_\000\000\002e\000\000\002[\001%\000\000\001;\002k\002]\002a\000\000\000\000\000\000\000\000\002\158\000\000\000\000\000\000\000\000\002\012\000\000\000\000\002_\000\000\002e\000\000\002\b\002\t\002m\000\000\002k\000\000\002a\002\212\001l\000\000\001^\001_\000\000\001w\002L\000\000\000\000\000\000\002b\000\000\000\000\001x\002M\001b\000\000\002m\002\b\002\t\000\000\000\000\002]\000\000\003\139\000\000\000\000\002[\000\000\000\000\000\000\000\000\002L\002\012\002\b\002\t\000\000\002_\000\000\002e\002M\002\217\002\233\002\234\000\000\002k\000\000\002a\002L\000\000\003\144\002\b\002\t\002[\000\000\000\000\002M\000\000\002b\000\000\000\000\000\000\003\193\000\000\000\000\002L\002m\001u\000\000\002[\000\000\000\000\000\000\002M\000\000\002\b\002\t\000\000\001d\003\206\002]\000\000\000\000\000\000\000\000\002_\002[\002e\000\000\002L\000\000\002\012\000\000\002k\000\000\002a\000\000\002M\000\000\000\000\000\000\002\b\002\t\003\252\003\131\000\000\002]\000\000\000\000\000\000\002[\000\000\000\000\000\000\002m\002L\002b\002\012\000\000\002\b\002\t\000\000\002]\002M\000\000\000\000\000\000\000\000\001\014\004>\001w\001\015\000\000\002\012\001@\000\000\002[\000\000\001x\002]\001b\003G\002b\002_\000\000\003\001\000\000\000\000\000\000\000\000\002\012\002k\000\000\002a\001B\001\017\000\000\000\000\002b\000\000\004\203\002\158\000\000\002]\000\000\003H\000\000\000\000\000\000\002_\000\000\003\001\002m\000\000\002\012\002b\000\000\002k\000\000\002a\002\212\001l\000\000\001^\001_\002_\000\000\002e\000\000\002]\000\000\000\000\001!\002k\000\000\002a\000\000\000\000\002m\002b\002\012\000\000\002_\000\000\002e\002\b\002\t\002\011\000\000\001/\002k\000\000\002a\000\000\002m\000\000\000\000\000\000\002\012\002L\000\000\001\019\002\217\002\233\002\234\002b\002_\002M\002e\002\b\002\t\002m\000\000\005r\002k\000\000\002a\000\000\000\000\000\000\002[\000\000\000\000\002L\000\000\000\000\003J\000\000\001u\002\b\002\t\002M\002_\000\000\002e\002m\000\000\005u\000\000\001d\002k\000\000\002a\002L\002[\0015\000\000\000\000\000\000\000\000\002_\002M\001\028\002\b\002\t\000\000\005\004\005\132\002`\000\000\002a\002m\000\000\000\000\002[\004\001\000\000\002L\002\b\002\t\000\000\000\000\000\000\002]\000\000\002M\000\000\000\000\001%\000\000\001?\005\135\002L\000\000\002\012\000\000\000\000\000\000\002[\000\000\002M\001w\000\000\000\000\000\000\000\000\005\148\002]\000\000\001x\000\000\001b\000\000\002[\000\000\000\000\000\000\000\000\002\012\002b\000\000\000\000\002\b\002\t\000\000\000\000\000\000\002]\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002L\000\000\002\012\002\b\002\t\000\000\000\000\002b\002M\000\000\002_\000\000\002e\000\000\005\151\002]\000\000\002L\002k\000\000\002a\002[\000\000\000\000\000\000\002M\002\012\002b\000\000\000\000\002]\005\172\000\000\000\000\002_\000\000\002e\000\000\002[\002m\000\000\002\012\002k\000\000\002a\000\000\000\000\002\b\002\t\000\000\000\000\002b\000\000\000\000\002_\000\000\002e\000\000\000\000\000\000\000\000\002L\002k\002m\002a\000\000\002b\000\000\000\000\002M\002\b\002\t\000\000\000\000\002]\005\175\000\000\000\000\002_\000\000\002e\000\000\002[\002m\002L\002\012\002k\000\000\002a\002\158\000\000\002]\002M\002_\000\000\002e\000\000\000\000\005\179\000\000\000\000\002k\002\012\002a\000\000\002[\000\000\002m\002\212\001l\002b\001^\001_\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002m\000\000\000\000\000\000\000\000\002b\000\000\000\000\000\000\002\b\002\t\000\000\000\000\002]\000\000\002_\000\000\002e\000\000\000\000\000\000\000\000\000\000\002k\002\012\002a\000\000\000\000\002\217\002\233\002\234\002\n\002_\002\158\002e\000\000\002]\000\000\002\b\002\t\002k\000\000\002a\000\000\002m\002\b\002\t\002\012\000\000\002b\000\000\000\000\002\212\001l\001u\001^\001_\002\b\002\t\002L\002G\002m\000\000\000\000\000\000\001d\000\000\002M\000\000\000\000\000\000\002L\002b\006\186\000\000\000\000\002_\000\000\002e\002M\002[\000\000\000\000\000\000\002k\006\188\002a\000\000\000\000\000\000\000\000\005\190\002[\000\000\002\217\002\233\002\234\002\011\000\000\002_\000\000\002e\000\000\000\000\000\000\002m\000\000\002k\002\012\002a\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001w\000\000\000\000\001u\006\016\000\000\000\000\000\000\001x\002\011\001b\002m\000\000\000\000\001d\000\000\002]\000\000\006\232\000\000\002\012\006\233\000\000\000\000\006\019\000\000\000\000\002\012\002]\000\000\006\016\000\000\000\000\006\020\000\000\000\000\000\000\000\000\001[\002\012\005\224\000\000\000\000\002_\006\232\000\000\000\000\006\233\000\000\000\000\006\019\002`\002b\002a\000\000\000\000\000\000\001\\\001l\006\020\001^\001_\006\021\000\000\002b\000\000\001w\000\000\000\000\000\000\000\000\000\000\002_\000\000\001x\000\000\001b\000\000\000\000\002_\002`\002e\002a\000\000\000\000\000\000\000\000\002k\006\021\002a\006\022\002_\006\016\002e\000\000\000\000\000\000\000\000\006\023\002k\001m\002a\001n\006\206\006\208\000\000\006\232\000\000\002m\006\233\000\000\006\235\006\019\000\000\006\016\000\000\006\022\000\000\000\000\000\000\002m\006\020\000\000\000\000\006\023\001u\000\000\000\000\006\232\000\000\006\025\006\233\000\000\000\000\006\019\000\000\001d\006\234\000\000\006\026\000\000\001[\000\000\006\020\006\028\000\000\000\000\000\000\000\000\000\000\006\021\000\000\000\000\000\000\006\030\000\000\006\025\002\b\002\t\000\000\001\\\001l\000\000\001^\001_\006\026\000\000\000\000\000\000\006\031\006\028\002L\006\021\000\000\000\000\000\000\000\000\000\000\006\022\002M\006\030\000\000\000\000\000\000\000\000\000\000\006\023\000\000\001w\000\000\002\b\002\t\002[\000\000\000\000\006\031\001x\000\000\001b\006\238\006\022\000\000\000\000\001m\002L\001n\0065\000\000\006\023\000\000\000\000\001\014\002M\000\000\001\015\000\000\000\000\001@\006\025\000\000\000\000\006\243\000\000\000\000\000\000\002[\000\000\006\026\001u\000\000\000\000\000\000\006\028\000\000\000\000\000\000\000\000\001B\001\017\001d\006\025\001\014\006\030\000\000\001\015\002]\000\000\001)\000\000\006\026\000\000\000\000\000\000\000\000\006\028\000\000\002\012\006\031\000\000\000\000\000\000\000\000\000\000\000\000\006\030\001[\000\000\001.\001\017\000\000\000\000\000\000\000\000\000\000\001[\001!\000\000\000\000\002]\006\031\000\000\002b\000\000\000\000\001\\\001l\000\000\001^\001_\002\012\000\000\001w\001/\001\\\001l\000\000\001^\001_\000\000\001x\000\000\001b\000\000\000\000\001\019\001!\000\000\000\000\002_\000\000\004\012\000\000\000\000\000\000\002b\000\000\002k\000\000\002a\000\000\000\000\000\000\001/\000\000\000\000\000\000\000\000\001m\000\000\001n\001\147\000\000\000\000\000\000\001\019\000\000\001m\002m\001n\001}\000\000\002_\000\000\004\b\000\000\000\000\000\000\000\000\0015\002k\000\000\002a\001u\000\000\001[\001\028\000\000\000\000\000\000\001=\000\000\001u\000\000\001d\000\000\000\000\000\000\000\000\000\000\000\000\002m\001[\001d\001\\\001l\000\000\001^\001_\0015\000\000\001[\001%\000\000\001?\000\000\001\028\001[\000\000\000\000\001=\001\\\001l\000\000\001^\001_\000\000\000\000\000\000\000\000\001\\\001l\000\000\001^\001_\000\000\001\\\001l\000\000\001^\001_\000\000\001%\000\000\001?\000\000\001w\001m\000\000\001n\001z\000\000\000\000\000\000\001x\001w\001b\000\000\000\000\000\000\000\000\000\000\000\000\001x\001m\001b\001n\001p\001[\000\000\000\000\000\000\001u\001m\000\000\001n\001s\000\000\000\000\001m\000\000\001n\001v\001d\000\000\000\000\000\000\001\\\001l\001u\001^\001_\000\000\000\000\001[\000\000\000\000\000\000\001u\000\000\001d\000\000\000\000\000\000\001u\000\000\000\000\000\000\000\000\001d\000\000\000\000\000\000\001\\\001l\001d\001^\001_\001[\000\000\000\000\000\000\002\b\002\t\000\000\000\000\000\000\000\000\000\000\000\000\001m\000\000\001n\001y\000\000\001w\002L\001\\\001l\000\000\001^\001_\000\000\001x\002M\001b\000\000\000\000\000\000\000\000\002\b\002\t\001w\000\000\000\000\001u\001m\002[\001n\001\130\001x\001w\001b\000\000\002L\000\000\001d\001w\001[\001x\000\000\001b\002M\000\000\000\000\001x\000\000\001b\000\000\000\000\001m\001u\001n\001\133\000\000\002[\000\000\001\\\001l\000\000\001^\001_\001d\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\b\002\t\005\030\000\000\000\000\001u\000\000\000\000\000\000\000\000\002]\000\000\000\000\000\000\002L\000\000\001d\000\000\001w\000\000\000\000\002\012\002M\000\000\000\000\000\000\001x\000\000\001b\005\031\001m\005 \001n\002B\000\000\002[\000\000\000\000\002]\000\000\000\000\000\000\000\000\000\000\001w\000\000\002b\002\b\002\t\002\012\002\b\002\t\001x\000\000\001b\001u\000\000\000\000\000\000\000\000\005!\002L\000\000\000\000\002L\000\000\001d\000\000\001w\002M\002\b\002\t\002M\002_\002b\003\177\001x\000\000\001b\000\000\000\000\002k\002[\002a\002L\002[\000\000\005\"\002]\000\000\002\b\002\t\002M\000\000\002\b\002\t\005#\000\000\005$\002\012\000\000\002_\002m\003K\002L\002[\000\000\000\000\002L\002k\000\000\002a\002M\000\000\005%\000\000\002M\000\000\001w\000\000\000\000\000\000\000\000\000\000\002b\002[\001x\000\000\001b\002[\002m\000\000\000\000\000\000\000\000\002]\000\000\005&\002]\000\000\002\b\002\t\005(\0052\000\000\000\000\002\012\000\000\000\000\002\012\000\000\002_\005\\\002\242\002L\000\000\000\000\000\000\002]\002k\000\000\002a\002M\000\000\000\000\000\000\000\000\005]\000\000\002\012\000\000\002b\000\000\000\000\002b\002[\000\000\000\000\002]\000\000\002m\000\000\002]\000\000\000\000\002\b\002\t\000\000\000\000\002\012\002\b\002\t\000\000\002\012\002b\000\000\000\000\000\000\002_\002L\002g\002_\000\000\002i\002L\000\000\002k\002M\002a\002k\000\000\002a\002M\000\000\002b\000\000\000\000\000\000\002b\000\000\002[\002_\000\000\002n\000\000\002[\000\000\002m\002]\002k\002m\002a\000\000\000\000\002\b\002\t\000\000\000\000\000\000\002\012\000\000\002_\000\000\002u\000\000\002_\000\000\002w\002L\002k\002m\002a\000\000\002k\000\000\002a\002M\002\b\002\t\000\000\000\000\000\000\000\000\000\000\002b\000\000\000\000\000\000\000\000\002[\002m\002L\000\000\002]\002m\000\000\000\000\000\000\002]\002M\002\b\002\t\000\000\000\000\002\012\000\000\000\000\000\000\000\000\002\012\000\000\002_\002[\002y\002L\000\000\000\000\000\000\000\000\002k\000\000\002a\002M\000\000\002\b\002\t\000\000\000\000\000\000\002b\000\000\000\000\000\000\000\000\002b\002[\000\000\000\000\002L\000\000\002m\000\000\002]\000\000\000\000\000\000\002M\000\000\000\000\000\000\000\000\000\000\000\000\002\012\000\000\000\000\002_\000\000\002{\002[\000\000\002_\000\000\002}\002k\002]\002a\002\b\002\t\002k\000\000\002a\000\000\000\000\000\000\000\000\002\012\000\000\002b\000\000\000\000\002L\002\b\002\t\000\000\002m\000\000\000\000\002]\002M\002m\000\000\000\000\000\000\000\000\000\000\002L\000\000\000\000\002\012\000\000\002b\002[\000\000\002M\002_\000\000\002\127\000\000\000\000\000\000\000\000\002]\002k\000\000\002a\000\000\002[\000\000\000\000\000\000\000\000\000\000\002\012\002b\002\b\002\t\000\000\002_\000\000\002\129\000\000\000\000\000\000\002m\000\000\002k\000\000\002a\002L\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002M\002b\002\b\002\t\002_\000\000\002\131\000\000\002]\000\000\002m\000\000\002k\002[\002a\000\000\002L\002\b\002\t\002\012\000\000\000\000\000\000\002]\002M\006\016\002\b\002\t\002_\000\000\002\133\002L\000\000\002m\002\012\000\000\002k\002[\002a\002M\002L\000\000\006\017\000\000\002b\006\019\000\000\000\000\002M\000\000\002\b\002\t\002[\000\000\006\020\000\000\000\000\002m\000\000\002b\000\000\002[\000\000\000\000\002L\000\000\002]\000\000\000\000\000\000\000\000\002_\002M\002\135\000\000\000\000\000\000\002\012\000\000\002k\000\000\002a\000\000\006\021\000\000\002[\002_\000\000\002\137\000\000\002]\000\000\000\000\000\000\002k\000\000\002a\000\000\000\000\000\000\002m\002\012\002b\000\000\000\000\002]\000\000\000\000\002\b\002\t\000\000\006\022\000\000\000\000\002]\002m\002\012\000\000\000\000\006\023\000\000\000\000\002L\000\000\000\000\002\012\002b\000\000\000\000\002_\002M\002\139\002\b\002\t\000\000\000\000\006\024\002k\002]\002a\000\000\002b\000\000\002[\000\000\000\000\002L\000\000\000\000\002\012\002b\006\025\000\000\002_\002M\002\141\000\000\000\000\002m\000\000\006\026\002k\000\000\002a\000\000\006\028\000\000\002[\002_\000\000\002\143\000\000\000\000\000\000\002b\006\030\002k\002_\002a\002\145\002\b\002\t\002m\000\000\000\000\002k\000\000\002a\000\000\000\000\006\031\000\000\000\000\000\000\002L\000\000\002]\002m\000\000\000\000\000\000\002_\002M\002\147\002\b\002\t\002m\002\012\000\000\002k\000\000\002a\000\000\000\000\000\000\002[\000\000\000\000\002L\000\000\002]\000\000\001[\000\000\000\000\001\014\002M\000\000\001\015\000\000\002m\002\012\002b\000\000\000\000\000\000\000\000\001\014\000\000\002[\005\005\001\\\001l\000\000\001^\001_\000\000\000\000\000\000\000\000\000\000\001[\001\017\000\000\000\000\000\000\002b\000\000\000\000\002_\000\000\002\149\004\187\000\000\001\017\000\000\000\000\002k\002]\002a\001\\\001l\000\000\001^\001_\000\000\000\000\005\149\000\000\002\012\000\000\000\000\000\000\002_\001m\002\151\001n\002\222\002m\001!\000\000\002k\002]\002a\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\007\001[\002\012\002b\002\b\002\t\000\000\000\000\001u\000\000\000\000\002m\001m\000\000\001n\002\225\000\000\001\019\002L\001d\001\\\001l\001[\001^\001_\000\000\002M\002b\000\000\005\n\002_\000\000\002\153\000\000\000\000\002\b\002\t\001u\002k\002[\002a\001\\\001l\000\000\001^\001_\000\000\000\000\001d\000\000\000\000\000\000\000\000\000\000\002_\000\000\002\155\002I\000\000\002m\000\000\0015\002k\001m\002a\001n\002\228\000\000\001\028\000\000\000\000\001w\004\192\000\000\000\000\000\000\002\b\002\t\000\000\001x\005\r\001b\000\000\002m\001m\000\000\001n\002\236\001u\000\000\002L\004\213\002]\005\018\001%\005\015\001?\000\000\002M\001d\001w\000\000\000\000\002\012\002\b\002\t\001%\000\000\001x\001u\001b\002[\000\000\000\000\000\000\000\000\000\000\000\000\002L\000\000\001d\002\b\002\t\002\011\000\000\000\000\002M\000\000\002b\000\000\000\000\000\000\000\000\000\000\002\012\002L\000\000\000\000\000\000\002[\000\000\000\000\000\000\002M\002\b\002\t\000\000\000\000\000\000\000\000\000\000\001w\000\000\000\000\000\000\002_\002[\002\248\002L\001x\000\000\001b\000\000\002k\002]\002a\002M\000\000\000\000\000\000\000\000\000\000\001w\000\000\000\000\002\012\002\b\002\t\000\000\002[\001x\000\000\001b\000\000\002m\000\000\002_\000\000\002\b\002\t\002L\000\000\002]\000\000\002`\000\000\002a\000\000\002M\000\000\002b\000\000\002L\002\012\000\000\000\000\000\000\000\000\000\000\002]\002M\002[\000\000\000\000\000\000\001\014\002\b\002\t\005\005\000\000\002\012\000\000\000\000\002[\000\000\000\000\000\000\002_\002b\003\021\002L\000\000\002]\000\000\000\000\002k\000\000\002a\002M\000\000\000\000\000\000\001\017\002\012\000\000\002b\000\000\000\000\000\000\000\000\000\000\002[\000\000\000\000\000\000\002_\002m\003\027\000\000\000\000\000\000\000\000\000\000\002k\002]\002a\000\000\000\000\002b\000\000\000\000\000\000\002_\000\000\003 \002\012\002]\000\000\000\000\005\007\002k\000\000\002a\000\000\002m\002\b\002\t\002\012\002\b\002\t\000\000\000\000\000\000\000\000\000\000\002_\000\000\003(\000\000\002L\002b\002m\002L\002k\002]\002a\000\000\002M\005\n\000\000\002M\000\000\002b\000\000\000\000\002\012\002\b\002\t\000\000\000\000\002[\000\000\000\000\002[\002m\000\000\000\000\002_\000\000\003-\002L\002\b\002\t\000\000\000\000\002k\000\000\002a\002M\002_\002b\003/\000\000\000\000\000\000\002L\000\000\002k\000\000\002a\000\000\002[\000\000\002M\000\000\000\000\002m\002\b\002\t\005\r\000\000\000\000\000\000\000\000\002\b\002\t\002[\002_\002m\0032\004\213\002L\005\017\002]\005\015\002k\002]\002a\002L\002M\000\000\000\000\000\000\000\000\002\012\001%\002M\002\012\002\b\002\t\000\000\000\000\002[\000\000\000\000\000\000\002m\000\000\000\000\002[\000\000\000\000\000\000\000\000\002]\000\000\001[\000\000\000\000\002b\002S\000\000\002b\000\000\000\000\002\012\000\000\000\000\000\000\002]\000\000\000\000\000\000\000\000\000\000\001\\\002\179\000\000\001^\001_\002\012\000\000\000\000\006\016\000\000\000\000\002_\000\000\0039\002_\002b\003>\000\000\000\000\002k\002]\002a\002k\000\000\002a\006\223\000\000\002]\006\019\000\000\002b\002\012\000\000\000\000\000\000\000\000\000\000\006\020\002\012\000\000\002m\006\016\002_\002m\003C\000\000\000\000\000\000\000\000\000\000\002k\002\011\002a\001[\000\000\000\000\002b\002_\006\017\003F\000\000\006\019\002\012\002b\000\000\002k\006\021\002a\001c\000\000\006\020\002m\001\\\001l\000\000\001^\001_\000\000\000\000\001d\000\000\000\000\000\000\002_\006\016\003x\002m\000\000\000\000\000\000\002_\002k\003z\002a\006\022\000\000\000\000\000\000\002k\006\021\002a\006\017\006\023\000\000\006\019\000\000\003e\000\000\000\000\000\000\001[\000\000\002m\006\020\002_\001m\006\224\001n\004<\002m\000\000\000\000\002`\000\000\002a\003g\000\000\006\022\000\000\001\\\002\179\001w\001^\001_\006\025\006\023\000\000\000\000\000\000\001\146\001u\001b\006\021\006\026\000\000\000\000\001[\000\000\006\028\000\000\000\000\001d\006#\000\000\000\000\000\000\000\000\000\000\006\030\000\000\001[\000\000\000\000\000\000\000\000\001\\\002\179\006\025\001^\001_\006\022\000\000\000\000\006\031\000\000\000\000\006\026\000\000\006\023\001\\\002\179\006\028\001^\001_\000\000\000\000\000\000\000\000\000\000\001\014\000\000\006\030\001\015\000\000\000\000\006,\000\000\001c\000\000\000\000\000\000\000\000\000\000\001w\000\000\000\000\006\031\000\000\001d\001\014\006\025\001x\001\015\001b\000\000\000\000\001\017\000\000\000\000\006\026\000\000\000\000\000\000\000\000\006\028\000\000\004\187\000\000\000\000\000\000\000\000\000\000\000\000\001c\006\030\003e\001\017\000\000\000\000\000\000\000\000\005\163\000\000\001[\001d\000\000\004\187\001c\000\000\006\031\000\000\000\000\000\000\001!\003f\000\000\000\000\001[\001d\005\176\001w\005\173\001\\\002\179\001[\001^\001_\000\000\001\146\000\000\001b\003e\001\014\001!\000\000\001\015\001\\\002\179\000\000\001^\001_\000\000\001\019\001\\\002\179\006\003\001^\001_\000\000\000\000\003j\000\000\000\000\001[\000\000\000\000\001w\000\000\000\000\001\017\000\000\000\000\001\019\000\000\001\146\000\000\001b\000\000\000\000\003\226\001w\000\000\001\\\002\179\000\000\001^\001_\000\000\001\146\000\000\001b\000\000\000\000\006x\000\000\000\000\0015\000\000\000\000\000\000\001c\006\005\000\000\001\028\000\000\000\000\001!\004\192\000\000\000\000\000\000\001d\000\000\000\000\001c\000\000\0015\000\000\000\000\000\000\001[\001c\000\000\001\028\000\000\001d\000\000\004\192\000\000\001%\000\000\001?\001d\000\000\000\000\001\019\000\000\000\000\002\180\001\\\002\179\000\000\001^\001_\000\000\000\000\001[\000\000\000\000\001%\001c\001?\005\203\000\000\002\b\002\t\000\000\000\000\000\000\005\203\000\000\001d\000\000\001w\001\014\001\\\002\179\001\015\001^\001_\000\000\001\146\001\014\001b\000\000\001\015\003\152\001w\000\000\0015\000\000\000\000\000\000\003\161\001w\001\146\001\028\001b\006\003\000\000\000\000\001\017\001\146\000\000\001b\001\014\000\000\005\216\001\015\001\017\000\000\003\226\000\000\000\000\005\215\000\000\003\162\001c\000\000\000\000\000\000\000\000\001%\001w\003\233\003\229\000\000\000\000\001d\002\b\002\t\001\146\001\017\001b\000\000\000\000\000\000\004\203\001!\001\014\000\000\000\000\001\015\001c\006\004\001\014\001!\000\000\001\015\000\000\000\000\002^\002\011\000\000\001d\006\003\000\000\001\014\001\014\000\000\001\015\001\015\000\000\003\165\000\000\000\000\001\017\001\019\000\000\001!\000\000\005\198\001\017\000\000\001[\001\019\000\000\000\000\000\000\000\000\001w\003i\000\000\000\000\001\017\001\017\000\000\000\000\001\146\000\000\001b\000\000\003\155\001\\\001]\000\000\001^\001_\001\019\000\000\000\000\006\012\000\000\001!\001\014\000\000\001w\001\015\000\000\001!\001\014\0015\000\000\001\015\001\146\002_\001b\002\011\001\028\0015\000\000\001!\001!\002`\000\000\002a\001\028\000\000\002\012\000\000\004\224\001\017\001\019\004\227\000\000\000\000\000\000\001\017\001\019\000\000\001\014\000\000\0015\001\015\001%\000\000\003\233\000\000\000\000\001\028\001\019\001\019\001%\004\211\001?\000\000\000\000\001\014\000\000\000\000\001\015\001c\000\000\000\000\000\000\000\000\000\000\001\017\001!\000\000\000\000\000\000\001d\000\000\001!\001%\0015\001?\000\000\000\000\002_\000\000\0015\001\028\001\017\000\000\000\000\004\211\002`\001\028\002a\000\000\000\000\004\224\0015\0015\005\244\001\019\000\000\000\000\000\000\001\028\001\028\001\019\001!\006\181\001O\000\000\000\000\001%\000\000\001?\000\000\000\000\000\000\001%\000\000\001?\000\000\000\000\000\000\001!\001\014\000\000\001w\001\015\000\000\001%\001%\001?\001?\000\000\001\146\001\019\001b\001\014\000\000\001[\001\015\000\000\001\014\0015\000\000\001\015\000\000\000\000\000\000\0015\001\028\001\017\001\019\000\000\001\163\000\000\001\028\000\000\001\\\002\164\001\201\001^\001_\000\000\001\017\000\000\000\000\000\000\000\000\001\017\000\000\000\000\000\000\000\000\000\000\000\000\001%\000\000\001?\0015\000\000\000\000\001%\000\000\001?\000\000\001\028\000\000\001!\001\014\001\203\000\000\001\015\000\000\001\014\001\014\0015\001\015\001\015\000\000\000\000\001!\000\000\001\028\000\000\000\000\001!\002\031\000\000\000\000\000\000\000\000\001%\000\000\001?\000\000\001\017\001\019\000\000\000\000\000\000\001\017\001\017\000\000\000\000\000\000\001c\000\000\000\000\001%\001\019\001?\000\000\000\000\000\000\001\019\001\014\001d\000\000\001\015\000\000\000\000\001\014\000\000\000\000\001\015\000\000\000\000\000\000\000\000\000\000\001\014\000\000\001!\001\015\000\000\000\000\001\014\001!\001!\001\015\0015\000\000\001\017\000\000\000\000\000\000\000\000\001\028\001\017\000\000\000\000\0022\000\000\0015\000\000\000\000\000\000\001\017\0015\000\000\001\028\001\019\000\000\001\017\002\169\001\028\001\019\001\019\001w\002\174\000\000\001\014\000\000\001%\005\005\001?\001\146\001\014\001b\001!\001\015\000\000\000\000\000\000\000\000\001!\001%\000\000\001?\000\000\000\000\001%\000\000\001?\001!\000\000\000\000\000\000\001\017\000\000\001!\000\000\000\000\000\000\001\017\0015\000\000\000\000\001\019\000\000\0015\0015\001\028\000\000\001\019\000\000\002\191\001\028\001\028\000\000\000\000\002\198\002\205\001\019\001\014\000\000\000\000\001\015\000\000\001\019\001\014\000\000\000\000\001\015\000\000\005\007\000\000\000\000\001%\001\014\001?\001!\001\015\001%\001%\001?\001?\000\000\000\000\000\000\000\000\001\017\0015\000\000\000\000\000\000\000\000\001\017\0015\001\028\000\000\000\000\000\000\002\214\005\n\001\028\001\017\0015\000\000\004K\001\019\000\000\001\014\0015\001\028\005\005\000\000\000\000\004\164\000\000\001\028\000\000\000\000\000\000\004\176\001%\001\014\001?\001!\005\005\000\000\001%\000\000\001?\001!\000\000\000\000\000\000\000\000\001\017\001%\000\000\001?\001!\000\000\000\000\001%\000\000\001?\000\000\000\000\000\000\000\000\001\017\0015\005\r\000\000\001\019\000\000\000\000\000\000\001\028\000\000\001\019\001\014\004\189\004\213\001\015\005\016\000\000\005\015\000\000\001\019\000\000\002\b\002\t\005\007\000\000\000\000\001\014\000\000\001%\001\015\000\000\000\000\000\000\000\000\001%\000\000\001?\005\007\001\017\000\000\000\000\000\000\000\000\002l\000\000\000\000\002\b\002\t\0015\000\000\000\000\000\000\005\n\001\017\0015\001\028\000\000\001\014\000\000\004\210\005\005\001\028\000\000\0015\000\000\004\226\005\n\000\000\003G\000\000\001\028\000\000\000\000\001\014\005\128\001!\005\005\000\000\000\000\000\000\000\000\001%\000\000\001?\001\017\001\014\000\000\001%\001\015\001?\001!\000\000\005\209\000\000\000\000\000\000\001%\000\000\001?\000\000\001\017\002\b\002\t\005\r\001\019\000\000\000\000\000\000\000\000\002\011\000\000\000\000\001\017\000\000\004\213\000\000\005\014\005\r\005\015\001\019\002\012\005\007\000\000\003\014\000\000\000\000\000\000\000\000\004\213\001%\005\026\000\000\005\015\000\000\002\011\000\000\000\000\005\007\001\014\000\000\000\000\001\015\000\000\001%\001\014\002\012\000\000\001\015\0015\001!\005\n\000\000\000\000\000\000\000\000\001\028\000\000\001\014\000\000\005\146\001\015\001\014\000\000\0015\001\015\001\017\005\n\000\000\000\000\000\000\001\028\001\017\002_\003J\005\170\000\000\000\000\000\000\001\019\000\000\002`\001%\002a\001?\001\017\000\000\000\000\000\000\001\017\002\011\000\000\000\000\000\000\000\000\000\000\000\000\001%\002_\001?\000\000\002\012\005\r\001!\000\000\000\000\002`\000\000\002a\001!\000\000\000\000\000\000\004\213\000\000\005\230\000\000\005\015\005\r\000\000\000\000\000\000\001!\0015\000\000\000\000\001!\000\000\001%\004\213\001\028\006\000\001\019\005\015\0068\000\000\000\000\000\000\001\019\000\000\000\000\000\000\000\000\000\000\001%\000\000\000\000\000\000\000\000\000\000\000\000\001\019\000\000\002_\000\000\001\019\001%\000\000\001?\000\000\000\000\002`\000\000\002a\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0015\000\000\000\000\000\000\000\000\000\000\0015\001\028\000\000\000\000\000\000\006\141\000\000\001\028\000\000\000\000\000\000\006\145\000\000\0015\000\000\000\000\000\000\0015\000\000\000\000\001\028\000\000\000\000\000\000\001\028\000\000\000\000\001%\000\000\001?\000\000\000\000\000\000\001%\000\000\001?\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001%\000\000\001\198\000\000\001%\000\000\003\228"))
|
|
|
|
and semantic_action =
|
|
[|
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3579 "parsing/parser.mly"
|
|
( "+" )
|
|
# 1315 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3580 "parsing/parser.mly"
|
|
( "+." )
|
|
# 1340 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.core_type) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.core_type) =
|
|
# 3148 "parsing/parser.mly"
|
|
( _1 )
|
|
# 1365 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = tyvar;
|
|
MenhirLib.EngineTypes.startp = _startpos_tyvar_;
|
|
MenhirLib.EngineTypes.endp = _endpos_tyvar_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = ty;
|
|
MenhirLib.EngineTypes.startp = _startpos_ty_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ty_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let tyvar : (Asttypes.label) = Obj.magic tyvar in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let ty : (Parsetree.core_type) = Obj.magic ty in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_ty_ in
|
|
let _endpos = _endpos_tyvar_ in
|
|
let _v : (Parsetree.core_type) = let _1 =
|
|
let _1 =
|
|
# 3151 "parsing/parser.mly"
|
|
( Ptyp_alias(ty, tyvar) )
|
|
# 1412 "parsing/parser.ml"
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_tyvar_, _startpos_ty_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 829 "parsing/parser.mly"
|
|
( mktyp ~loc:_sloc _1 )
|
|
# 1421 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3153 "parsing/parser.mly"
|
|
( _1 )
|
|
# 1427 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = body;
|
|
MenhirLib.EngineTypes.startp = _startpos_body_;
|
|
MenhirLib.EngineTypes.endp = _endpos_body_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let body : (Parsetree.pattern * Parsetree.expression) = Obj.magic body in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined2_ in
|
|
let _v : (let_binding) = let attrs2 =
|
|
let _1 = _1_inlined2 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 1475 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_attrs2_ = _endpos__1_inlined2_ in
|
|
let attrs1 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 1484 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_attrs2_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2428 "parsing/parser.mly"
|
|
(
|
|
let attrs = attrs1 @ attrs2 in
|
|
mklb ~loc:_sloc false body attrs
|
|
)
|
|
# 1496 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : (Parsetree.core_type) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.core_type) =
|
|
# 3209 "parsing/parser.mly"
|
|
( _2 )
|
|
# 1535 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _1_inlined3 : (Parsetree.module_type) = Obj.magic _1_inlined3 in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (string Asttypes.loc option) = Obj.magic _1_inlined1 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.core_type) = let _4 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined3_, _startpos__1_inlined3_, _1_inlined3) in
|
|
let _1 =
|
|
let _1 =
|
|
# 3270 "parsing/parser.mly"
|
|
( Ptyp_package (package_type_of_module_type _1) )
|
|
# 1598 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 829 "parsing/parser.mly"
|
|
( mktyp ~loc:_sloc _1 )
|
|
# 1606 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3271 "parsing/parser.mly"
|
|
( _1 )
|
|
# 1612 "parsing/parser.ml"
|
|
|
|
in
|
|
let _3 =
|
|
let (_1_inlined1, _1) = (_1_inlined2, _1_inlined1) in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 1622 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3680 "parsing/parser.mly"
|
|
( _1, _2 )
|
|
# 1628 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__5_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 3211 "parsing/parser.mly"
|
|
( wrap_typ_attrs ~loc:_sloc (reloc_typ ~loc:_sloc _4) _3 )
|
|
# 1637 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : (Asttypes.label) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.core_type) = let _1 =
|
|
let _1 =
|
|
# 3214 "parsing/parser.mly"
|
|
( Ptyp_var _2 )
|
|
# 1670 "parsing/parser.ml"
|
|
in
|
|
let _endpos__1_ = _endpos__2_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 829 "parsing/parser.mly"
|
|
( mktyp ~loc:_sloc _1 )
|
|
# 1679 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3246 "parsing/parser.mly"
|
|
( _1 )
|
|
# 1685 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.core_type) = let _1 =
|
|
let _1 =
|
|
# 3216 "parsing/parser.mly"
|
|
( Ptyp_any )
|
|
# 1711 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 829 "parsing/parser.mly"
|
|
( mktyp ~loc:_sloc _1 )
|
|
# 1719 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3246 "parsing/parser.mly"
|
|
( _1 )
|
|
# 1725 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.core_type) = let _1 =
|
|
let _1 =
|
|
let tid =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 1756 "parsing/parser.ml"
|
|
|
|
in
|
|
let tys =
|
|
# 3261 "parsing/parser.mly"
|
|
( [] )
|
|
# 1762 "parsing/parser.ml"
|
|
in
|
|
|
|
# 3219 "parsing/parser.mly"
|
|
( Ptyp_constr(tid, tys) )
|
|
# 1767 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 829 "parsing/parser.mly"
|
|
( mktyp ~loc:_sloc _1 )
|
|
# 1776 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3246 "parsing/parser.mly"
|
|
( _1 )
|
|
# 1782 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = ty;
|
|
MenhirLib.EngineTypes.startp = _startpos_ty_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ty_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let ty : (Parsetree.core_type) = Obj.magic ty in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_ty_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.core_type) = let _1 =
|
|
let _1 =
|
|
let tid =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 1820 "parsing/parser.ml"
|
|
|
|
in
|
|
let tys =
|
|
# 3263 "parsing/parser.mly"
|
|
( [ty] )
|
|
# 1826 "parsing/parser.ml"
|
|
in
|
|
|
|
# 3219 "parsing/parser.mly"
|
|
( Ptyp_constr(tid, tys) )
|
|
# 1831 "parsing/parser.ml"
|
|
|
|
in
|
|
let _startpos__1_ = _startpos_ty_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 829 "parsing/parser.mly"
|
|
( mktyp ~loc:_sloc _1 )
|
|
# 1841 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3246 "parsing/parser.mly"
|
|
( _1 )
|
|
# 1847 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined1 : (Longident.t) = Obj.magic _1_inlined1 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let xs : (Parsetree.core_type list) = Obj.magic xs in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined1_ in
|
|
let _v : (Parsetree.core_type) = let _1 =
|
|
let _1 =
|
|
let tid =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined1_, _startpos__1_inlined1_, _1_inlined1) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 1900 "parsing/parser.ml"
|
|
|
|
in
|
|
let tys =
|
|
let tys =
|
|
let xs =
|
|
# 253 "menhir/standard.mly"
|
|
( List.rev xs )
|
|
# 1908 "parsing/parser.ml"
|
|
in
|
|
|
|
# 954 "parsing/parser.mly"
|
|
( xs )
|
|
# 1913 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3265 "parsing/parser.mly"
|
|
( tys )
|
|
# 1919 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3219 "parsing/parser.mly"
|
|
( Ptyp_constr(tid, tys) )
|
|
# 1925 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__1_inlined1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 829 "parsing/parser.mly"
|
|
( mktyp ~loc:_sloc _1 )
|
|
# 1935 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3246 "parsing/parser.mly"
|
|
( _1 )
|
|
# 1941 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : (Parsetree.object_field list * Asttypes.closed_flag) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.core_type) = let _1 =
|
|
let _1 =
|
|
# 3221 "parsing/parser.mly"
|
|
( let (f, c) = _2 in Ptyp_object (f, c) )
|
|
# 1981 "parsing/parser.ml"
|
|
in
|
|
let _endpos__1_ = _endpos__3_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 829 "parsing/parser.mly"
|
|
( mktyp ~loc:_sloc _1 )
|
|
# 1990 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3246 "parsing/parser.mly"
|
|
( _1 )
|
|
# 1996 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.core_type) = let _1 =
|
|
let _1 =
|
|
# 3223 "parsing/parser.mly"
|
|
( Ptyp_object ([], Closed) )
|
|
# 2029 "parsing/parser.ml"
|
|
in
|
|
let _endpos__1_ = _endpos__2_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 829 "parsing/parser.mly"
|
|
( mktyp ~loc:_sloc _1 )
|
|
# 2038 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3246 "parsing/parser.mly"
|
|
( _1 )
|
|
# 2044 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__2_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.core_type) = let _1 =
|
|
let _1 =
|
|
let cid =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 2082 "parsing/parser.ml"
|
|
|
|
in
|
|
let tys =
|
|
# 3261 "parsing/parser.mly"
|
|
( [] )
|
|
# 2088 "parsing/parser.ml"
|
|
in
|
|
|
|
# 3227 "parsing/parser.mly"
|
|
( Ptyp_class(cid, tys) )
|
|
# 2093 "parsing/parser.ml"
|
|
|
|
in
|
|
let _startpos__1_ = _startpos__2_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 829 "parsing/parser.mly"
|
|
( mktyp ~loc:_sloc _1 )
|
|
# 2103 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3246 "parsing/parser.mly"
|
|
( _1 )
|
|
# 2109 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = ty;
|
|
MenhirLib.EngineTypes.startp = _startpos_ty_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ty_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let ty : (Parsetree.core_type) = Obj.magic ty in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_ty_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.core_type) = let _1 =
|
|
let _1 =
|
|
let cid =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 2154 "parsing/parser.ml"
|
|
|
|
in
|
|
let tys =
|
|
# 3263 "parsing/parser.mly"
|
|
( [ty] )
|
|
# 2160 "parsing/parser.ml"
|
|
in
|
|
|
|
# 3227 "parsing/parser.mly"
|
|
( Ptyp_class(cid, tys) )
|
|
# 2165 "parsing/parser.ml"
|
|
|
|
in
|
|
let _startpos__1_ = _startpos_ty_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 829 "parsing/parser.mly"
|
|
( mktyp ~loc:_sloc _1 )
|
|
# 2175 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3246 "parsing/parser.mly"
|
|
( _1 )
|
|
# 2181 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined1 : (Longident.t) = Obj.magic _1_inlined1 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let xs : (Parsetree.core_type list) = Obj.magic xs in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined1_ in
|
|
let _v : (Parsetree.core_type) = let _1 =
|
|
let _1 =
|
|
let cid =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined1_, _startpos__1_inlined1_, _1_inlined1) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 2241 "parsing/parser.ml"
|
|
|
|
in
|
|
let tys =
|
|
let tys =
|
|
let xs =
|
|
# 253 "menhir/standard.mly"
|
|
( List.rev xs )
|
|
# 2249 "parsing/parser.ml"
|
|
in
|
|
|
|
# 954 "parsing/parser.mly"
|
|
( xs )
|
|
# 2254 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3265 "parsing/parser.mly"
|
|
( tys )
|
|
# 2260 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3227 "parsing/parser.mly"
|
|
( Ptyp_class(cid, tys) )
|
|
# 2266 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__1_inlined1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 829 "parsing/parser.mly"
|
|
( mktyp ~loc:_sloc _1 )
|
|
# 2276 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3246 "parsing/parser.mly"
|
|
( _1 )
|
|
# 2282 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : (Parsetree.row_field) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.core_type) = let _1 =
|
|
let _1 =
|
|
# 3230 "parsing/parser.mly"
|
|
( Ptyp_variant([_2], Closed, None) )
|
|
# 2322 "parsing/parser.ml"
|
|
in
|
|
let _endpos__1_ = _endpos__3_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 829 "parsing/parser.mly"
|
|
( mktyp ~loc:_sloc _1 )
|
|
# 2331 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3246 "parsing/parser.mly"
|
|
( _1 )
|
|
# 2337 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let xs : (Parsetree.row_field list) = Obj.magic xs in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__4_ in
|
|
let _v : (Parsetree.core_type) = let _1 =
|
|
let _1 =
|
|
let _3 =
|
|
let _1 =
|
|
let xs =
|
|
# 253 "menhir/standard.mly"
|
|
( List.rev xs )
|
|
# 2387 "parsing/parser.ml"
|
|
in
|
|
|
|
# 926 "parsing/parser.mly"
|
|
( xs )
|
|
# 2392 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3275 "parsing/parser.mly"
|
|
( _1 )
|
|
# 2398 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3232 "parsing/parser.mly"
|
|
( Ptyp_variant(_3, Closed, None) )
|
|
# 2404 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__4_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 829 "parsing/parser.mly"
|
|
( mktyp ~loc:_sloc _1 )
|
|
# 2414 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3246 "parsing/parser.mly"
|
|
( _1 )
|
|
# 2420 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let xs : (Parsetree.row_field list) = Obj.magic xs in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : (Parsetree.row_field) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.core_type) = let _1 =
|
|
let _1 =
|
|
let _4 =
|
|
let _1 =
|
|
let xs =
|
|
# 253 "menhir/standard.mly"
|
|
( List.rev xs )
|
|
# 2477 "parsing/parser.ml"
|
|
in
|
|
|
|
# 926 "parsing/parser.mly"
|
|
( xs )
|
|
# 2482 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3275 "parsing/parser.mly"
|
|
( _1 )
|
|
# 2488 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3234 "parsing/parser.mly"
|
|
( Ptyp_variant(_2 :: _4, Closed, None) )
|
|
# 2494 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__5_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 829 "parsing/parser.mly"
|
|
( mktyp ~loc:_sloc _1 )
|
|
# 2504 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3246 "parsing/parser.mly"
|
|
( _1 )
|
|
# 2510 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let xs : (Parsetree.row_field list) = Obj.magic xs in
|
|
let _2 : (unit option) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__4_ in
|
|
let _v : (Parsetree.core_type) = let _1 =
|
|
let _1 =
|
|
let _3 =
|
|
let _1 =
|
|
let xs =
|
|
# 253 "menhir/standard.mly"
|
|
( List.rev xs )
|
|
# 2560 "parsing/parser.ml"
|
|
in
|
|
|
|
# 926 "parsing/parser.mly"
|
|
( xs )
|
|
# 2565 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3275 "parsing/parser.mly"
|
|
( _1 )
|
|
# 2571 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3236 "parsing/parser.mly"
|
|
( Ptyp_variant(_3, Open, None) )
|
|
# 2577 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__4_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 829 "parsing/parser.mly"
|
|
( mktyp ~loc:_sloc _1 )
|
|
# 2587 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3246 "parsing/parser.mly"
|
|
( _1 )
|
|
# 2593 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.core_type) = let _1 =
|
|
let _1 =
|
|
# 3238 "parsing/parser.mly"
|
|
( Ptyp_variant([], Open, None) )
|
|
# 2626 "parsing/parser.ml"
|
|
in
|
|
let _endpos__1_ = _endpos__2_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 829 "parsing/parser.mly"
|
|
( mktyp ~loc:_sloc _1 )
|
|
# 2635 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3246 "parsing/parser.mly"
|
|
( _1 )
|
|
# 2641 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let xs : (Parsetree.row_field list) = Obj.magic xs in
|
|
let _2 : (unit option) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__4_ in
|
|
let _v : (Parsetree.core_type) = let _1 =
|
|
let _1 =
|
|
let _3 =
|
|
let _1 =
|
|
let xs =
|
|
# 253 "menhir/standard.mly"
|
|
( List.rev xs )
|
|
# 2691 "parsing/parser.ml"
|
|
in
|
|
|
|
# 926 "parsing/parser.mly"
|
|
( xs )
|
|
# 2696 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3275 "parsing/parser.mly"
|
|
( _1 )
|
|
# 2702 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3240 "parsing/parser.mly"
|
|
( Ptyp_variant(_3, Closed, Some []) )
|
|
# 2708 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__4_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 829 "parsing/parser.mly"
|
|
( mktyp ~loc:_sloc _1 )
|
|
# 2718 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3246 "parsing/parser.mly"
|
|
( _1 )
|
|
# 2724 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _6;
|
|
MenhirLib.EngineTypes.startp = _startpos__6_;
|
|
MenhirLib.EngineTypes.endp = _endpos__6_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _6 : unit = Obj.magic _6 in
|
|
let xs_inlined1 : (Asttypes.label list) = Obj.magic xs_inlined1 in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let xs : (Parsetree.row_field list) = Obj.magic xs in
|
|
let _2 : (unit option) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__6_ in
|
|
let _v : (Parsetree.core_type) = let _1 =
|
|
let _1 =
|
|
let _5 =
|
|
let xs = xs_inlined1 in
|
|
let _1 =
|
|
let xs =
|
|
# 253 "menhir/standard.mly"
|
|
( List.rev xs )
|
|
# 2789 "parsing/parser.ml"
|
|
in
|
|
|
|
# 894 "parsing/parser.mly"
|
|
( xs )
|
|
# 2794 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3303 "parsing/parser.mly"
|
|
( _1 )
|
|
# 2800 "parsing/parser.ml"
|
|
|
|
in
|
|
let _3 =
|
|
let _1 =
|
|
let xs =
|
|
# 253 "menhir/standard.mly"
|
|
( List.rev xs )
|
|
# 2808 "parsing/parser.ml"
|
|
in
|
|
|
|
# 926 "parsing/parser.mly"
|
|
( xs )
|
|
# 2813 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3275 "parsing/parser.mly"
|
|
( _1 )
|
|
# 2819 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3242 "parsing/parser.mly"
|
|
( Ptyp_variant(_3, Closed, Some _5) )
|
|
# 2825 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__6_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 829 "parsing/parser.mly"
|
|
( mktyp ~loc:_sloc _1 )
|
|
# 2835 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3246 "parsing/parser.mly"
|
|
( _1 )
|
|
# 2841 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.extension) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.core_type) = let _1 =
|
|
let _1 =
|
|
# 3244 "parsing/parser.mly"
|
|
( Ptyp_extension _1 )
|
|
# 2867 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 829 "parsing/parser.mly"
|
|
( mktyp ~loc:_sloc _1 )
|
|
# 2875 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3246 "parsing/parser.mly"
|
|
( _1 )
|
|
# 2881 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (string) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string Asttypes.loc) = let _1 =
|
|
let _1 =
|
|
# 3646 "parsing/parser.mly"
|
|
( _1 )
|
|
# 2907 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 822 "parsing/parser.mly"
|
|
( mkloc _1 (make_loc _sloc) )
|
|
# 2915 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3648 "parsing/parser.mly"
|
|
( _1 )
|
|
# 2921 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : (string Asttypes.loc) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (string) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (string Asttypes.loc) = let _1 =
|
|
let _1 =
|
|
# 3647 "parsing/parser.mly"
|
|
( _1 ^ "." ^ _3.txt )
|
|
# 2961 "parsing/parser.ml"
|
|
in
|
|
let _endpos__1_ = _endpos__3_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 822 "parsing/parser.mly"
|
|
( mkloc _1 (make_loc _sloc) )
|
|
# 2970 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3648 "parsing/parser.mly"
|
|
( _1 )
|
|
# 2976 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let _3 : (Parsetree.payload) = Obj.magic _3 in
|
|
let _2 : (string Asttypes.loc) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__4_ in
|
|
let _v : (Parsetree.attribute) = let _endpos = _endpos__4_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 3652 "parsing/parser.mly"
|
|
( Attr.mk ~loc:(make_loc _sloc) _2 _3 )
|
|
# 3025 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.class_expr) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.class_expr) =
|
|
# 1712 "parsing/parser.mly"
|
|
( _1 )
|
|
# 3050 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : (Parsetree.class_expr) = Obj.magic _3 in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.class_expr) = let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 3091 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__3_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1714 "parsing/parser.mly"
|
|
( wrap_class_attrs ~loc:_sloc _3 _2 )
|
|
# 3100 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : (Parsetree.class_expr) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (let_bindings) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.class_expr) = let _endpos = _endpos__3_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1716 "parsing/parser.mly"
|
|
( class_of_let_bindings ~loc:_sloc _1 _3 )
|
|
# 3142 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _7;
|
|
MenhirLib.EngineTypes.startp = _startpos__7_;
|
|
MenhirLib.EngineTypes.endp = _endpos__7_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _6;
|
|
MenhirLib.EngineTypes.startp = _startpos__6_;
|
|
MenhirLib.EngineTypes.endp = _endpos__6_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _7 : (Parsetree.class_expr) = Obj.magic _7 in
|
|
let _6 : unit = Obj.magic _6 in
|
|
let _1_inlined2 : (Longident.t) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__7_ in
|
|
let _v : (Parsetree.class_expr) = let _5 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 3207 "parsing/parser.ml"
|
|
|
|
in
|
|
let _4 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 3215 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__4_ = _endpos__1_inlined1_ in
|
|
let _3 =
|
|
# 3571 "parsing/parser.mly"
|
|
( Fresh )
|
|
# 3222 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__7_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1718 "parsing/parser.mly"
|
|
( let loc = (_startpos__2_, _endpos__4_) in
|
|
let od = Opn.mk ~override:_3 ~loc:(make_loc loc) _5 in
|
|
mkclass ~loc:_sloc ~attrs:_4 (Pcl_open(od, _7)) )
|
|
# 3232 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _7;
|
|
MenhirLib.EngineTypes.startp = _startpos__7_;
|
|
MenhirLib.EngineTypes.endp = _endpos__7_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _6;
|
|
MenhirLib.EngineTypes.startp = _startpos__6_;
|
|
MenhirLib.EngineTypes.endp = _endpos__6_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _7 : (Parsetree.class_expr) = Obj.magic _7 in
|
|
let _6 : unit = Obj.magic _6 in
|
|
let _1_inlined3 : (Longident.t) = Obj.magic _1_inlined3 in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : unit = Obj.magic _1_inlined1 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__7_ in
|
|
let _v : (Parsetree.class_expr) = let _5 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined3_, _startpos__1_inlined3_, _1_inlined3) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 3304 "parsing/parser.ml"
|
|
|
|
in
|
|
let _4 =
|
|
let _1 = _1_inlined2 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 3312 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__4_ = _endpos__1_inlined2_ in
|
|
let _3 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3572 "parsing/parser.mly"
|
|
( Override )
|
|
# 3321 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__7_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1718 "parsing/parser.mly"
|
|
( let loc = (_startpos__2_, _endpos__4_) in
|
|
let od = Opn.mk ~override:_3 ~loc:(make_loc loc) _5 in
|
|
mkclass ~loc:_sloc ~attrs:_4 (Pcl_open(od, _7)) )
|
|
# 3332 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : (Parsetree.attribute) = Obj.magic _2 in
|
|
let _1 : (Parsetree.class_expr) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.class_expr) =
|
|
# 1722 "parsing/parser.mly"
|
|
( Cl.attr _1 _2 )
|
|
# 3364 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let xs : ((Asttypes.arg_label * Parsetree.expression) list) = Obj.magic xs in
|
|
let _1 : (Parsetree.class_expr) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_xs_ in
|
|
let _v : (Parsetree.class_expr) = let _1 =
|
|
let _1 =
|
|
let _2 =
|
|
let xs =
|
|
# 253 "menhir/standard.mly"
|
|
( List.rev xs )
|
|
# 3399 "parsing/parser.ml"
|
|
in
|
|
|
|
# 894 "parsing/parser.mly"
|
|
( xs )
|
|
# 3404 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1725 "parsing/parser.mly"
|
|
( Pcl_apply(_1, _2) )
|
|
# 3410 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos_xs_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 845 "parsing/parser.mly"
|
|
( mkclass ~loc:_sloc _1 )
|
|
# 3420 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1728 "parsing/parser.mly"
|
|
( _1 )
|
|
# 3426 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.extension) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.class_expr) = let _1 =
|
|
let _1 =
|
|
# 1727 "parsing/parser.mly"
|
|
( Pcl_extension _1 )
|
|
# 3452 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 845 "parsing/parser.mly"
|
|
( mkclass ~loc:_sloc _1 )
|
|
# 3460 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1728 "parsing/parser.mly"
|
|
( _1 )
|
|
# 3466 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = self;
|
|
MenhirLib.EngineTypes.startp = _startpos_self_;
|
|
MenhirLib.EngineTypes.endp = _endpos_self_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let self : (string Asttypes.loc option) = Obj.magic self in
|
|
let _4 : (Parsetree.class_expr) = Obj.magic _4 in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined2_ in
|
|
let _v : (Parsetree.class_field) = let _6 =
|
|
let _1 = _1_inlined2 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 3521 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__6_ = _endpos__1_inlined2_ in
|
|
let _3 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 3530 "parsing/parser.ml"
|
|
|
|
in
|
|
let _2 =
|
|
# 3571 "parsing/parser.mly"
|
|
( Fresh )
|
|
# 3536 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__6_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1777 "parsing/parser.mly"
|
|
( let docs = symbol_docs _sloc in
|
|
mkcf ~loc:_sloc (Pcf_inherit (_2, _4, self)) ~attrs:(_3@_6) ~docs )
|
|
# 3545 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = self;
|
|
MenhirLib.EngineTypes.startp = _startpos_self_;
|
|
MenhirLib.EngineTypes.endp = _endpos_self_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined3 : (Parsetree.attributes) = Obj.magic _1_inlined3 in
|
|
let self : (string Asttypes.loc option) = Obj.magic self in
|
|
let _4 : (Parsetree.class_expr) = Obj.magic _4 in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : unit = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined3_ in
|
|
let _v : (Parsetree.class_field) = let _6 =
|
|
let _1 = _1_inlined3 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 3607 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__6_ = _endpos__1_inlined3_ in
|
|
let _3 =
|
|
let _1 = _1_inlined2 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 3616 "parsing/parser.ml"
|
|
|
|
in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3572 "parsing/parser.mly"
|
|
( Override )
|
|
# 3624 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__6_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1777 "parsing/parser.mly"
|
|
( let docs = symbol_docs _sloc in
|
|
mkcf ~loc:_sloc (Pcf_inherit (_2, _4, self)) ~attrs:(_3@_6) ~docs )
|
|
# 3634 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _2 : ((Asttypes.label Asttypes.loc * Asttypes.mutable_flag *
|
|
Parsetree.class_field_kind) *
|
|
Parsetree.attributes) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined1_ in
|
|
let _v : (Parsetree.class_field) = let _3 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 3677 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__3_ = _endpos__1_inlined1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1780 "parsing/parser.mly"
|
|
( let v, attrs = _2 in
|
|
let docs = symbol_docs _sloc in
|
|
mkcf ~loc:_sloc (Pcf_val v) ~attrs:(attrs@_3) ~docs )
|
|
# 3689 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _2 : ((Asttypes.label Asttypes.loc * Asttypes.private_flag *
|
|
Parsetree.class_field_kind) *
|
|
Parsetree.attributes) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined1_ in
|
|
let _v : (Parsetree.class_field) = let _3 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 3732 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__3_ = _endpos__1_inlined1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1784 "parsing/parser.mly"
|
|
( let meth, attrs = _2 in
|
|
let docs = symbol_docs _sloc in
|
|
mkcf ~loc:_sloc (Pcf_method meth) ~attrs:(attrs@_3) ~docs )
|
|
# 3744 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let _3 : (Parsetree.core_type * Parsetree.core_type) = Obj.magic _3 in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined2_ in
|
|
let _v : (Parsetree.class_field) = let _4 =
|
|
let _1 = _1_inlined2 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 3792 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__4_ = _endpos__1_inlined2_ in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 3801 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__4_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1788 "parsing/parser.mly"
|
|
( let docs = symbol_docs _sloc in
|
|
mkcf ~loc:_sloc (Pcf_constraint _3) ~attrs:(_2@_4) ~docs )
|
|
# 3811 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let _3 : (Parsetree.expression) = Obj.magic _3 in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined2_ in
|
|
let _v : (Parsetree.class_field) = let _4 =
|
|
let _1 = _1_inlined2 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 3859 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__4_ = _endpos__1_inlined2_ in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 3868 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__4_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1791 "parsing/parser.mly"
|
|
( let docs = symbol_docs _sloc in
|
|
mkcf ~loc:_sloc (Pcf_initializer _3) ~attrs:(_2@_4) ~docs )
|
|
# 3878 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _1 : (Parsetree.extension) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined1_ in
|
|
let _v : (Parsetree.class_field) = let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 3912 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__2_ = _endpos__1_inlined1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1794 "parsing/parser.mly"
|
|
( let docs = symbol_docs _sloc in
|
|
mkcf ~loc:_sloc (Pcf_extension _1) ~attrs:_2 ~docs )
|
|
# 3923 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.attribute) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.class_field) = let _1 =
|
|
let _1 =
|
|
# 1797 "parsing/parser.mly"
|
|
( Pcf_attribute _1 )
|
|
# 3949 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 843 "parsing/parser.mly"
|
|
( mkcf ~loc:_sloc _1 )
|
|
# 3957 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1798 "parsing/parser.mly"
|
|
( _1 )
|
|
# 3963 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : (Parsetree.class_expr) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.class_expr) =
|
|
# 1692 "parsing/parser.mly"
|
|
( _2 )
|
|
# 3995 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _4 : (Parsetree.class_expr) = Obj.magic _4 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : (Parsetree.class_type) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__4_ in
|
|
let _v : (Parsetree.class_expr) = let _1 =
|
|
let _1 =
|
|
# 1695 "parsing/parser.mly"
|
|
( Pcl_constraint(_4, _2) )
|
|
# 4042 "parsing/parser.ml"
|
|
in
|
|
let _endpos__1_ = _endpos__4_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 845 "parsing/parser.mly"
|
|
( mkclass ~loc:_sloc _1 )
|
|
# 4051 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1698 "parsing/parser.mly"
|
|
( _1 )
|
|
# 4057 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : (Parsetree.class_expr) = Obj.magic _2 in
|
|
let _1 : (Asttypes.arg_label * Parsetree.expression option * Parsetree.pattern) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.class_expr) = let _1 =
|
|
let _1 =
|
|
# 1697 "parsing/parser.mly"
|
|
( let (l,o,p) = _1 in Pcl_fun(l, o, p, _2) )
|
|
# 4090 "parsing/parser.ml"
|
|
in
|
|
let _endpos__1_ = _endpos__2_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 845 "parsing/parser.mly"
|
|
( mkclass ~loc:_sloc _1 )
|
|
# 4099 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1698 "parsing/parser.mly"
|
|
( _1 )
|
|
# 4105 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = e;
|
|
MenhirLib.EngineTypes.startp = _startpos_e_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let e : (Parsetree.class_expr) = Obj.magic e in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Asttypes.arg_label * Parsetree.expression option * Parsetree.pattern) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_e_ in
|
|
let _v : (Parsetree.class_expr) = let _1 =
|
|
let _1 =
|
|
# 1753 "parsing/parser.mly"
|
|
( let (l,o,p) = _1 in Pcl_fun(l, o, p, e) )
|
|
# 4145 "parsing/parser.ml"
|
|
in
|
|
let _endpos__1_ = _endpos_e_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 845 "parsing/parser.mly"
|
|
( mkclass ~loc:_sloc _1 )
|
|
# 4154 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1754 "parsing/parser.mly"
|
|
( _1 )
|
|
# 4160 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = e;
|
|
MenhirLib.EngineTypes.startp = _startpos_e_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let e : (Parsetree.class_expr) = Obj.magic e in
|
|
let _1 : (Asttypes.arg_label * Parsetree.expression option * Parsetree.pattern) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_e_ in
|
|
let _v : (Parsetree.class_expr) = let _1 =
|
|
let _1 =
|
|
# 1753 "parsing/parser.mly"
|
|
( let (l,o,p) = _1 in Pcl_fun(l, o, p, e) )
|
|
# 4193 "parsing/parser.ml"
|
|
in
|
|
let _endpos__1_ = _endpos_e_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 845 "parsing/parser.mly"
|
|
( mkclass ~loc:_sloc _1 )
|
|
# 4202 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1754 "parsing/parser.mly"
|
|
( _1 )
|
|
# 4208 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 4229 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Longident.t) =
|
|
# 3466 "parsing/parser.mly"
|
|
( Lident _1 )
|
|
# 4237 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 4270 "parsing/parser.ml"
|
|
) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Longident.t) =
|
|
# 3467 "parsing/parser.mly"
|
|
( Ldot(_1, _3) )
|
|
# 4280 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : (Parsetree.pattern) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.pattern) = let _endpos = _endpos__3_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1762 "parsing/parser.mly"
|
|
( reloc_pat ~loc:_sloc _2 )
|
|
# 4322 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _4 : (Parsetree.core_type) = Obj.magic _4 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : (Parsetree.pattern) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _1 =
|
|
# 1764 "parsing/parser.mly"
|
|
( Ppat_constraint(_2, _4) )
|
|
# 4376 "parsing/parser.ml"
|
|
in
|
|
let _endpos__1_ = _endpos__5_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 827 "parsing/parser.mly"
|
|
( mkpat ~loc:_sloc _1 )
|
|
# 4385 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1765 "parsing/parser.mly"
|
|
( _1 )
|
|
# 4391 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _endpos = _startpos in
|
|
let _v : (Parsetree.pattern) = let _endpos = _endpos__0_ in
|
|
let _symbolstartpos = _endpos in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1767 "parsing/parser.mly"
|
|
( ghpat ~loc:_sloc Ppat_any )
|
|
# 4412 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : (Parsetree.core_type) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.core_type) =
|
|
# 1892 "parsing/parser.mly"
|
|
( _2 )
|
|
# 4451 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _endpos = _startpos in
|
|
let _v : (Parsetree.core_type) = let _1 =
|
|
let _1 =
|
|
# 1893 "parsing/parser.mly"
|
|
( Ptyp_any )
|
|
# 4470 "parsing/parser.ml"
|
|
in
|
|
let _endpos__1_ = _endpos__0_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _endpos in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 829 "parsing/parser.mly"
|
|
( mktyp ~loc:_sloc _1 )
|
|
# 4479 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1894 "parsing/parser.mly"
|
|
( _1 )
|
|
# 4485 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let _3 : (Parsetree.class_type) = Obj.magic _3 in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined2_ in
|
|
let _v : (Parsetree.class_type_field) = let _4 =
|
|
let _1 = _1_inlined2 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 4533 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__4_ = _endpos__1_inlined2_ in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 4542 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__4_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1902 "parsing/parser.mly"
|
|
( let docs = symbol_docs _sloc in
|
|
mkctf ~loc:_sloc (Pctf_inherit _3) ~attrs:(_2@_4) ~docs )
|
|
# 4552 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = ty;
|
|
MenhirLib.EngineTypes.startp = _startpos_ty_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ty_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = flags;
|
|
MenhirLib.EngineTypes.startp = _startpos_flags_;
|
|
MenhirLib.EngineTypes.endp = _endpos_flags_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined3 : (Parsetree.attributes) = Obj.magic _1_inlined3 in
|
|
let ty : (Parsetree.core_type) = Obj.magic ty in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _1_inlined2 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 4612 "parsing/parser.ml"
|
|
) = Obj.magic _1_inlined2 in
|
|
let flags : (Asttypes.mutable_flag * Asttypes.virtual_flag) = Obj.magic flags in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined3_ in
|
|
let _v : (Parsetree.class_type_field) = let _4 =
|
|
let _1 = _1_inlined3 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 4625 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__4_ = _endpos__1_inlined3_ in
|
|
let _3 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let label =
|
|
let _1 =
|
|
# 3343 "parsing/parser.mly"
|
|
( _1 )
|
|
# 4635 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 4643 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1927 "parsing/parser.mly"
|
|
(
|
|
let mut, virt = flags in
|
|
label, mut, virt, ty
|
|
)
|
|
# 4652 "parsing/parser.ml"
|
|
|
|
in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 4660 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__4_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1905 "parsing/parser.mly"
|
|
( let docs = symbol_docs _sloc in
|
|
mkctf ~loc:_sloc (Pctf_val _3) ~attrs:(_2@_4) ~docs )
|
|
# 4670 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined4;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined4 : (Parsetree.attributes) = Obj.magic _1_inlined4 in
|
|
let _1_inlined3 : (Parsetree.core_type) = Obj.magic _1_inlined3 in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _1_inlined2 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 4730 "parsing/parser.ml"
|
|
) = Obj.magic _1_inlined2 in
|
|
let _3 : (Asttypes.private_flag * Asttypes.virtual_flag) = Obj.magic _3 in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined4_ in
|
|
let _v : (Parsetree.class_type_field) = let _7 =
|
|
let _1 = _1_inlined4 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 4743 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__7_ = _endpos__1_inlined4_ in
|
|
let _6 =
|
|
let _1 = _1_inlined3 in
|
|
|
|
# 3114 "parsing/parser.mly"
|
|
( _1 )
|
|
# 4752 "parsing/parser.ml"
|
|
|
|
in
|
|
let _4 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let _1 =
|
|
# 3343 "parsing/parser.mly"
|
|
( _1 )
|
|
# 4760 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 4768 "parsing/parser.ml"
|
|
|
|
in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 4776 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__7_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1909 "parsing/parser.mly"
|
|
( let (p, v) = _3 in
|
|
let docs = symbol_docs _sloc in
|
|
mkctf ~loc:_sloc (Pctf_method (_4, p, v, _6)) ~attrs:(_2@_7) ~docs )
|
|
# 4787 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let _3 : (Parsetree.core_type * Parsetree.core_type) = Obj.magic _3 in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined2_ in
|
|
let _v : (Parsetree.class_type_field) = let _4 =
|
|
let _1 = _1_inlined2 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 4835 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__4_ = _endpos__1_inlined2_ in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 4844 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__4_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1913 "parsing/parser.mly"
|
|
( let docs = symbol_docs _sloc in
|
|
mkctf ~loc:_sloc (Pctf_constraint _3) ~attrs:(_2@_4) ~docs )
|
|
# 4854 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _1 : (Parsetree.extension) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined1_ in
|
|
let _v : (Parsetree.class_type_field) = let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 4888 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__2_ = _endpos__1_inlined1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1916 "parsing/parser.mly"
|
|
( let docs = symbol_docs _sloc in
|
|
mkctf ~loc:_sloc (Pctf_extension _1) ~attrs:_2 ~docs )
|
|
# 4899 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.attribute) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.class_type_field) = let _1 =
|
|
let _1 =
|
|
# 1919 "parsing/parser.mly"
|
|
( Pctf_attribute _1 )
|
|
# 4925 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 841 "parsing/parser.mly"
|
|
( mkctf ~loc:_sloc _1 )
|
|
# 4933 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1920 "parsing/parser.mly"
|
|
( _1 )
|
|
# 4939 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.class_type) = let _1 =
|
|
let _1 =
|
|
let cid =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 4970 "parsing/parser.ml"
|
|
|
|
in
|
|
let tys =
|
|
let tys =
|
|
# 1878 "parsing/parser.mly"
|
|
( [] )
|
|
# 4977 "parsing/parser.ml"
|
|
in
|
|
|
|
# 1884 "parsing/parser.mly"
|
|
( tys )
|
|
# 4982 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1861 "parsing/parser.mly"
|
|
( Pcty_constr (cid, tys) )
|
|
# 4988 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 839 "parsing/parser.mly"
|
|
( mkcty ~loc:_sloc _1 )
|
|
# 4997 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1864 "parsing/parser.mly"
|
|
( _1 )
|
|
# 5003 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined1 : (Longident.t) = Obj.magic _1_inlined1 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let xs : (Parsetree.core_type list) = Obj.magic xs in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined1_ in
|
|
let _v : (Parsetree.class_type) = let _1 =
|
|
let _1 =
|
|
let cid =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined1_, _startpos__1_inlined1_, _1_inlined1) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 5056 "parsing/parser.ml"
|
|
|
|
in
|
|
let tys =
|
|
let tys =
|
|
let params =
|
|
let xs =
|
|
# 253 "menhir/standard.mly"
|
|
( List.rev xs )
|
|
# 5065 "parsing/parser.ml"
|
|
in
|
|
|
|
# 926 "parsing/parser.mly"
|
|
( xs )
|
|
# 5070 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1880 "parsing/parser.mly"
|
|
( params )
|
|
# 5076 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1884 "parsing/parser.mly"
|
|
( tys )
|
|
# 5082 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1861 "parsing/parser.mly"
|
|
( Pcty_constr (cid, tys) )
|
|
# 5088 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__1_inlined1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 839 "parsing/parser.mly"
|
|
( mkcty ~loc:_sloc _1 )
|
|
# 5098 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1864 "parsing/parser.mly"
|
|
( _1 )
|
|
# 5104 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.extension) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.class_type) = let _1 =
|
|
let _1 =
|
|
# 1863 "parsing/parser.mly"
|
|
( Pcty_extension _1 )
|
|
# 5130 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 839 "parsing/parser.mly"
|
|
( mkcty ~loc:_sloc _1 )
|
|
# 5138 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1864 "parsing/parser.mly"
|
|
( _1 )
|
|
# 5144 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xss;
|
|
MenhirLib.EngineTypes.startp = _startpos_xss_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xss_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let xss : (Parsetree.class_type_field list list) = Obj.magic xss in
|
|
let _1_inlined2 : (Parsetree.core_type) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__4_ in
|
|
let _v : (Parsetree.class_type) = let _3 =
|
|
let _1 = _1_inlined2 in
|
|
let _2 =
|
|
let _1 =
|
|
let _1 =
|
|
# 260 "menhir/standard.mly"
|
|
( List.flatten xss )
|
|
# 5201 "parsing/parser.ml"
|
|
in
|
|
|
|
# 1898 "parsing/parser.mly"
|
|
( _1 )
|
|
# 5206 "parsing/parser.ml"
|
|
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_xss_, _startpos_xss_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _startpos = _startpos__1_ in
|
|
|
|
# 787 "parsing/parser.mly"
|
|
( extra_csig _startpos _endpos _1 )
|
|
# 5215 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1888 "parsing/parser.mly"
|
|
( Csig.mk _1 _2 )
|
|
# 5221 "parsing/parser.ml"
|
|
|
|
in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 5229 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__4_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1866 "parsing/parser.mly"
|
|
( mkcty ~loc:_sloc ~attrs:_2 (Pcty_signature _3) )
|
|
# 5238 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xss;
|
|
MenhirLib.EngineTypes.startp = _startpos_xss_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xss_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let xss : (Parsetree.class_type_field list list) = Obj.magic xss in
|
|
let _1_inlined2 : (Parsetree.core_type) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__4_ in
|
|
let _v : (Parsetree.class_type) = let _3 =
|
|
let _1 = _1_inlined2 in
|
|
let _2 =
|
|
let _1 =
|
|
let _1 =
|
|
# 260 "menhir/standard.mly"
|
|
( List.flatten xss )
|
|
# 5295 "parsing/parser.ml"
|
|
in
|
|
|
|
# 1898 "parsing/parser.mly"
|
|
( _1 )
|
|
# 5300 "parsing/parser.ml"
|
|
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_xss_, _startpos_xss_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _startpos = _startpos__1_ in
|
|
|
|
# 787 "parsing/parser.mly"
|
|
( extra_csig _startpos _endpos _1 )
|
|
# 5309 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1888 "parsing/parser.mly"
|
|
( Csig.mk _1 _2 )
|
|
# 5315 "parsing/parser.ml"
|
|
|
|
in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 5323 "parsing/parser.ml"
|
|
|
|
in
|
|
let _loc__4_ = (_startpos__4_, _endpos__4_) in
|
|
let _loc__1_ = (_startpos__1_, _endpos__1_) in
|
|
|
|
# 1868 "parsing/parser.mly"
|
|
( unclosed "object" _loc__1_ "end" _loc__4_ )
|
|
# 5331 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : (Parsetree.attribute) = Obj.magic _2 in
|
|
let _1 : (Parsetree.class_type) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.class_type) =
|
|
# 1870 "parsing/parser.mly"
|
|
( Cty.attr _1 _2 )
|
|
# 5363 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _7;
|
|
MenhirLib.EngineTypes.startp = _startpos__7_;
|
|
MenhirLib.EngineTypes.endp = _endpos__7_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _6;
|
|
MenhirLib.EngineTypes.startp = _startpos__6_;
|
|
MenhirLib.EngineTypes.endp = _endpos__6_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _7 : (Parsetree.class_type) = Obj.magic _7 in
|
|
let _6 : unit = Obj.magic _6 in
|
|
let _1_inlined2 : (Longident.t) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__7_ in
|
|
let _v : (Parsetree.class_type) = let _5 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 5428 "parsing/parser.ml"
|
|
|
|
in
|
|
let _4 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 5436 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__4_ = _endpos__1_inlined1_ in
|
|
let _3 =
|
|
# 3571 "parsing/parser.mly"
|
|
( Fresh )
|
|
# 5443 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__7_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1872 "parsing/parser.mly"
|
|
( let loc = (_startpos__2_, _endpos__4_) in
|
|
let od = Opn.mk ~override:_3 ~loc:(make_loc loc) _5 in
|
|
mkcty ~loc:_sloc ~attrs:_4 (Pcty_open(od, _7)) )
|
|
# 5453 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _7;
|
|
MenhirLib.EngineTypes.startp = _startpos__7_;
|
|
MenhirLib.EngineTypes.endp = _endpos__7_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _6;
|
|
MenhirLib.EngineTypes.startp = _startpos__6_;
|
|
MenhirLib.EngineTypes.endp = _endpos__6_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _7 : (Parsetree.class_type) = Obj.magic _7 in
|
|
let _6 : unit = Obj.magic _6 in
|
|
let _1_inlined3 : (Longident.t) = Obj.magic _1_inlined3 in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : unit = Obj.magic _1_inlined1 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__7_ in
|
|
let _v : (Parsetree.class_type) = let _5 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined3_, _startpos__1_inlined3_, _1_inlined3) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 5525 "parsing/parser.ml"
|
|
|
|
in
|
|
let _4 =
|
|
let _1 = _1_inlined2 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 5533 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__4_ = _endpos__1_inlined2_ in
|
|
let _3 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3572 "parsing/parser.mly"
|
|
( Override )
|
|
# 5542 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__7_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1872 "parsing/parser.mly"
|
|
( let loc = (_startpos__2_, _endpos__4_) in
|
|
let od = Opn.mk ~override:_3 ~loc:(make_loc loc) _5 in
|
|
mkcty ~loc:_sloc ~attrs:_4 (Pcty_open(od, _7)) )
|
|
# 5553 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : (Parsetree.class_expr) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.class_expr) =
|
|
# 1732 "parsing/parser.mly"
|
|
( _2 )
|
|
# 5592 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : (Parsetree.class_expr) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.class_expr) = let _loc__3_ = (_startpos__3_, _endpos__3_) in
|
|
let _loc__1_ = (_startpos__1_, _endpos__1_) in
|
|
|
|
# 1734 "parsing/parser.mly"
|
|
( unclosed "(" _loc__1_ ")" _loc__3_ )
|
|
# 5633 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.class_expr) = let _1 =
|
|
let _1 =
|
|
let cid =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 5664 "parsing/parser.ml"
|
|
|
|
in
|
|
let tys =
|
|
let tys =
|
|
# 1878 "parsing/parser.mly"
|
|
( [] )
|
|
# 5671 "parsing/parser.ml"
|
|
in
|
|
|
|
# 1884 "parsing/parser.mly"
|
|
( tys )
|
|
# 5676 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1737 "parsing/parser.mly"
|
|
( Pcl_constr(cid, tys) )
|
|
# 5682 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 845 "parsing/parser.mly"
|
|
( mkclass ~loc:_sloc _1 )
|
|
# 5691 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1744 "parsing/parser.mly"
|
|
( _1 )
|
|
# 5697 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined1 : (Longident.t) = Obj.magic _1_inlined1 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let xs : (Parsetree.core_type list) = Obj.magic xs in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined1_ in
|
|
let _v : (Parsetree.class_expr) = let _1 =
|
|
let _1 =
|
|
let cid =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined1_, _startpos__1_inlined1_, _1_inlined1) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 5750 "parsing/parser.ml"
|
|
|
|
in
|
|
let tys =
|
|
let tys =
|
|
let params =
|
|
let xs =
|
|
# 253 "menhir/standard.mly"
|
|
( List.rev xs )
|
|
# 5759 "parsing/parser.ml"
|
|
in
|
|
|
|
# 926 "parsing/parser.mly"
|
|
( xs )
|
|
# 5764 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1880 "parsing/parser.mly"
|
|
( params )
|
|
# 5770 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1884 "parsing/parser.mly"
|
|
( tys )
|
|
# 5776 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1737 "parsing/parser.mly"
|
|
( Pcl_constr(cid, tys) )
|
|
# 5782 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__1_inlined1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 845 "parsing/parser.mly"
|
|
( mkclass ~loc:_sloc _1 )
|
|
# 5792 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1744 "parsing/parser.mly"
|
|
( _1 )
|
|
# 5798 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xss;
|
|
MenhirLib.EngineTypes.startp = _startpos_xss_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xss_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let xss : (Parsetree.class_field list list) = Obj.magic xss in
|
|
let _1_inlined2 : (Parsetree.pattern) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__4_ in
|
|
let _v : (Parsetree.class_expr) = let _1 =
|
|
let _1 =
|
|
let _3 =
|
|
let _1 = _1_inlined2 in
|
|
let _2 =
|
|
let _1 =
|
|
let _1 =
|
|
# 260 "menhir/standard.mly"
|
|
( List.flatten xss )
|
|
# 5857 "parsing/parser.ml"
|
|
in
|
|
|
|
# 1771 "parsing/parser.mly"
|
|
( _1 )
|
|
# 5862 "parsing/parser.ml"
|
|
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_xss_, _startpos_xss_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _startpos = _startpos__1_ in
|
|
|
|
# 786 "parsing/parser.mly"
|
|
( extra_cstr _startpos _endpos _1 )
|
|
# 5871 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1758 "parsing/parser.mly"
|
|
( Cstr.mk _1 _2 )
|
|
# 5877 "parsing/parser.ml"
|
|
|
|
in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 5885 "parsing/parser.ml"
|
|
|
|
in
|
|
let _loc__4_ = (_startpos__4_, _endpos__4_) in
|
|
let _loc__1_ = (_startpos__1_, _endpos__1_) in
|
|
|
|
# 1739 "parsing/parser.mly"
|
|
( unclosed "object" _loc__1_ "end" _loc__4_ )
|
|
# 5893 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__4_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 845 "parsing/parser.mly"
|
|
( mkclass ~loc:_sloc _1 )
|
|
# 5903 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1744 "parsing/parser.mly"
|
|
( _1 )
|
|
# 5909 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _4 : (Parsetree.class_type) = Obj.magic _4 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : (Parsetree.class_expr) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.class_expr) = let _1 =
|
|
let _1 =
|
|
# 1741 "parsing/parser.mly"
|
|
( Pcl_constraint(_2, _4) )
|
|
# 5963 "parsing/parser.ml"
|
|
in
|
|
let _endpos__1_ = _endpos__5_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 845 "parsing/parser.mly"
|
|
( mkclass ~loc:_sloc _1 )
|
|
# 5972 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1744 "parsing/parser.mly"
|
|
( _1 )
|
|
# 5978 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _4 : (Parsetree.class_type) = Obj.magic _4 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : (Parsetree.class_expr) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.class_expr) = let _1 =
|
|
let _1 =
|
|
let _loc__5_ = (_startpos__5_, _endpos__5_) in
|
|
let _loc__1_ = (_startpos__1_, _endpos__1_) in
|
|
|
|
# 1743 "parsing/parser.mly"
|
|
( unclosed "(" _loc__1_ ")" _loc__5_ )
|
|
# 6035 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__5_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 845 "parsing/parser.mly"
|
|
( mkclass ~loc:_sloc _1 )
|
|
# 6045 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1744 "parsing/parser.mly"
|
|
( _1 )
|
|
# 6051 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xss;
|
|
MenhirLib.EngineTypes.startp = _startpos_xss_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xss_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let xss : (Parsetree.class_field list list) = Obj.magic xss in
|
|
let _1_inlined2 : (Parsetree.pattern) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__4_ in
|
|
let _v : (Parsetree.class_expr) = let _3 =
|
|
let _1 = _1_inlined2 in
|
|
let _2 =
|
|
let _1 =
|
|
let _1 =
|
|
# 260 "menhir/standard.mly"
|
|
( List.flatten xss )
|
|
# 6108 "parsing/parser.ml"
|
|
in
|
|
|
|
# 1771 "parsing/parser.mly"
|
|
( _1 )
|
|
# 6113 "parsing/parser.ml"
|
|
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_xss_, _startpos_xss_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _startpos = _startpos__1_ in
|
|
|
|
# 786 "parsing/parser.mly"
|
|
( extra_cstr _startpos _endpos _1 )
|
|
# 6122 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1758 "parsing/parser.mly"
|
|
( Cstr.mk _1 _2 )
|
|
# 6128 "parsing/parser.ml"
|
|
|
|
in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 6136 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__4_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1746 "parsing/parser.mly"
|
|
( mkclass ~loc:_sloc ~attrs:_2 (Pcl_structure _3) )
|
|
# 6145 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.class_type) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.class_type) =
|
|
# 1849 "parsing/parser.mly"
|
|
( _1 )
|
|
# 6170 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = codomain;
|
|
MenhirLib.EngineTypes.startp = _startpos_codomain_;
|
|
MenhirLib.EngineTypes.endp = _endpos_codomain_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = domain;
|
|
MenhirLib.EngineTypes.startp = _startpos_domain_;
|
|
MenhirLib.EngineTypes.endp = _endpos_domain_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = label;
|
|
MenhirLib.EngineTypes.startp = _startpos_label_;
|
|
MenhirLib.EngineTypes.endp = _endpos_label_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let codomain : (Parsetree.class_type) = Obj.magic codomain in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let domain : (Parsetree.core_type) = Obj.magic domain in
|
|
let label : (string) = Obj.magic label in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_label_ in
|
|
let _endpos = _endpos_codomain_ in
|
|
let _v : (Parsetree.class_type) = let _1 =
|
|
let _1 =
|
|
let label =
|
|
# 3177 "parsing/parser.mly"
|
|
( Optional label )
|
|
# 6218 "parsing/parser.ml"
|
|
in
|
|
|
|
# 1855 "parsing/parser.mly"
|
|
( Pcty_arrow(label, domain, codomain) )
|
|
# 6223 "parsing/parser.ml"
|
|
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_codomain_, _startpos_label_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 839 "parsing/parser.mly"
|
|
( mkcty ~loc:_sloc _1 )
|
|
# 6233 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1856 "parsing/parser.mly"
|
|
( _1 )
|
|
# 6239 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = codomain;
|
|
MenhirLib.EngineTypes.startp = _startpos_codomain_;
|
|
MenhirLib.EngineTypes.endp = _endpos_codomain_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = domain;
|
|
MenhirLib.EngineTypes.startp = _startpos_domain_;
|
|
MenhirLib.EngineTypes.endp = _endpos_domain_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = label;
|
|
MenhirLib.EngineTypes.startp = _startpos_label_;
|
|
MenhirLib.EngineTypes.endp = _endpos_label_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let codomain : (Parsetree.class_type) = Obj.magic codomain in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let domain : (Parsetree.core_type) = Obj.magic domain in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let label : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 6288 "parsing/parser.ml"
|
|
) = Obj.magic label in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_label_ in
|
|
let _endpos = _endpos_codomain_ in
|
|
let _v : (Parsetree.class_type) = let _1 =
|
|
let _1 =
|
|
let label =
|
|
# 3179 "parsing/parser.mly"
|
|
( Labelled label )
|
|
# 6298 "parsing/parser.ml"
|
|
in
|
|
|
|
# 1855 "parsing/parser.mly"
|
|
( Pcty_arrow(label, domain, codomain) )
|
|
# 6303 "parsing/parser.ml"
|
|
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_codomain_, _startpos_label_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 839 "parsing/parser.mly"
|
|
( mkcty ~loc:_sloc _1 )
|
|
# 6313 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1856 "parsing/parser.mly"
|
|
( _1 )
|
|
# 6319 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = codomain;
|
|
MenhirLib.EngineTypes.startp = _startpos_codomain_;
|
|
MenhirLib.EngineTypes.endp = _endpos_codomain_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = domain;
|
|
MenhirLib.EngineTypes.startp = _startpos_domain_;
|
|
MenhirLib.EngineTypes.endp = _endpos_domain_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let codomain : (Parsetree.class_type) = Obj.magic codomain in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let domain : (Parsetree.core_type) = Obj.magic domain in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_domain_ in
|
|
let _endpos = _endpos_codomain_ in
|
|
let _v : (Parsetree.class_type) = let _1 =
|
|
let _1 =
|
|
let label =
|
|
# 3181 "parsing/parser.mly"
|
|
( Nolabel )
|
|
# 6360 "parsing/parser.ml"
|
|
in
|
|
|
|
# 1855 "parsing/parser.mly"
|
|
( Pcty_arrow(label, domain, codomain) )
|
|
# 6365 "parsing/parser.ml"
|
|
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_codomain_, _startpos_domain_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 839 "parsing/parser.mly"
|
|
( mkcty ~loc:_sloc _1 )
|
|
# 6375 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1856 "parsing/parser.mly"
|
|
( _1 )
|
|
# 6381 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = bs;
|
|
MenhirLib.EngineTypes.startp = _startpos_bs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_bs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = csig;
|
|
MenhirLib.EngineTypes.startp = _startpos_csig_;
|
|
MenhirLib.EngineTypes.endp = _endpos_csig_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _8;
|
|
MenhirLib.EngineTypes.startp = _startpos__8_;
|
|
MenhirLib.EngineTypes.endp = _endpos__8_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = params;
|
|
MenhirLib.EngineTypes.startp = _startpos_params_;
|
|
MenhirLib.EngineTypes.endp = _endpos_params_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = virt;
|
|
MenhirLib.EngineTypes.startp = _startpos_virt_;
|
|
MenhirLib.EngineTypes.endp = _endpos_virt_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = ext;
|
|
MenhirLib.EngineTypes.startp = _startpos_ext_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ext_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let bs : (Parsetree.class_type_declaration list) = Obj.magic bs in
|
|
let _1_inlined3 : (Parsetree.attributes) = Obj.magic _1_inlined3 in
|
|
let csig : (Parsetree.class_type) = Obj.magic csig in
|
|
let _8 : unit = Obj.magic _8 in
|
|
let _1_inlined2 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 6466 "parsing/parser.ml"
|
|
) = Obj.magic _1_inlined2 in
|
|
let params : ((Parsetree.core_type * Asttypes.variance) list) = Obj.magic params in
|
|
let virt : (Asttypes.virtual_flag) = Obj.magic virt in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let ext : (string Asttypes.loc option) = Obj.magic ext in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_bs_ in
|
|
let _v : (string Asttypes.loc option * Parsetree.class_type_declaration list) = let _1 =
|
|
let a =
|
|
let attrs2 =
|
|
let _1 = _1_inlined3 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 6484 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_attrs2_ = _endpos__1_inlined3_ in
|
|
let id =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 6496 "parsing/parser.ml"
|
|
|
|
in
|
|
let attrs1 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 6504 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_attrs2_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1994 "parsing/parser.mly"
|
|
(
|
|
let attrs = attrs1 @ attrs2 in
|
|
let loc = make_loc _sloc in
|
|
let docs = symbol_docs _sloc in
|
|
ext,
|
|
Ci.mk id csig ~virt ~params ~attrs ~loc ~docs
|
|
)
|
|
# 6519 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1023 "parsing/parser.mly"
|
|
( let (x, b) = a in x, b :: bs )
|
|
# 6525 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1982 "parsing/parser.mly"
|
|
( _1 )
|
|
# 6531 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 6552 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Longident.t) =
|
|
# 3462 "parsing/parser.mly"
|
|
( Lident _1 )
|
|
# 6560 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 6593 "parsing/parser.ml"
|
|
) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Longident.t) =
|
|
# 3463 "parsing/parser.mly"
|
|
( Ldot(_1, _3) )
|
|
# 6603 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (
|
|
# 628 "parsing/parser.mly"
|
|
(string * char option)
|
|
# 6624 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.constant) =
|
|
# 3349 "parsing/parser.mly"
|
|
( let (n, m) = _1 in Pconst_integer (n, m) )
|
|
# 6632 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (
|
|
# 587 "parsing/parser.mly"
|
|
(char)
|
|
# 6653 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.constant) =
|
|
# 3350 "parsing/parser.mly"
|
|
( Pconst_char _1 )
|
|
# 6661 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (
|
|
# 680 "parsing/parser.mly"
|
|
(string * string option)
|
|
# 6682 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.constant) =
|
|
# 3351 "parsing/parser.mly"
|
|
( let (s, d) = _1 in Pconst_string (s, d) )
|
|
# 6690 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (
|
|
# 607 "parsing/parser.mly"
|
|
(string * char option)
|
|
# 6711 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.constant) =
|
|
# 3352 "parsing/parser.mly"
|
|
( let (f, m) = _1 in Pconst_float (f, m) )
|
|
# 6719 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (
|
|
# 688 "parsing/parser.mly"
|
|
(string)
|
|
# 6740 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3416 "parsing/parser.mly"
|
|
( _1 )
|
|
# 6748 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (string) =
|
|
# 3417 "parsing/parser.mly"
|
|
( "[]" )
|
|
# 6780 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (string) =
|
|
# 3418 "parsing/parser.mly"
|
|
( "()" )
|
|
# 6812 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (string) =
|
|
# 3419 "parsing/parser.mly"
|
|
( "::" )
|
|
# 6851 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3420 "parsing/parser.mly"
|
|
( "false" )
|
|
# 6876 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3421 "parsing/parser.mly"
|
|
( "true" )
|
|
# 6901 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Longident.t) =
|
|
# 3429 "parsing/parser.mly"
|
|
( _1 )
|
|
# 6926 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Longident.t) =
|
|
# 3430 "parsing/parser.mly"
|
|
( Ldot(_1,"::") )
|
|
# 6979 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Longident.t) =
|
|
# 3431 "parsing/parser.mly"
|
|
( Lident "[]" )
|
|
# 7011 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Longident.t) =
|
|
# 3432 "parsing/parser.mly"
|
|
( Lident "()" )
|
|
# 7043 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Longident.t) =
|
|
# 3433 "parsing/parser.mly"
|
|
( Lident "::" )
|
|
# 7082 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Longident.t) =
|
|
# 3434 "parsing/parser.mly"
|
|
( Lident "false" )
|
|
# 7107 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Longident.t) =
|
|
# 3435 "parsing/parser.mly"
|
|
( Lident "true" )
|
|
# 7132 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : (Parsetree.core_type) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.core_type) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.core_type * Parsetree.core_type) =
|
|
# 1938 "parsing/parser.mly"
|
|
( _1, _3 )
|
|
# 7171 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let x : (Parsetree.core_type) = Obj.magic x in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_x_ in
|
|
let _endpos = _endpos_x_ in
|
|
let _v : (Parsetree.constructor_arguments) = let tys =
|
|
let xs =
|
|
let xs =
|
|
# 910 "parsing/parser.mly"
|
|
( [ x ] )
|
|
# 7198 "parsing/parser.ml"
|
|
in
|
|
|
|
# 253 "menhir/standard.mly"
|
|
( List.rev xs )
|
|
# 7203 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 930 "parsing/parser.mly"
|
|
( xs )
|
|
# 7209 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2984 "parsing/parser.mly"
|
|
( Pcstr_tuple tys )
|
|
# 7215 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let x : (Parsetree.core_type) = Obj.magic x in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let xs : (Parsetree.core_type list) = Obj.magic xs in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_xs_ in
|
|
let _endpos = _endpos_x_ in
|
|
let _v : (Parsetree.constructor_arguments) = let tys =
|
|
let xs =
|
|
let xs =
|
|
# 914 "parsing/parser.mly"
|
|
( x :: xs )
|
|
# 7256 "parsing/parser.ml"
|
|
in
|
|
|
|
# 253 "menhir/standard.mly"
|
|
( List.rev xs )
|
|
# 7261 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 930 "parsing/parser.mly"
|
|
( xs )
|
|
# 7267 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2984 "parsing/parser.mly"
|
|
( Pcstr_tuple tys )
|
|
# 7273 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : (Parsetree.label_declaration list) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.constructor_arguments) =
|
|
# 2986 "parsing/parser.mly"
|
|
( Pcstr_record _2 )
|
|
# 7312 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.constructor_declaration list) =
|
|
# 2905 "parsing/parser.mly"
|
|
( [] )
|
|
# 7337 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let xs : (Parsetree.constructor_declaration list) = Obj.magic xs in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_xs_ in
|
|
let _endpos = _endpos_xs_ in
|
|
let _v : (Parsetree.constructor_declaration list) = let cs =
|
|
# 1015 "parsing/parser.mly"
|
|
( List.rev xs )
|
|
# 7362 "parsing/parser.ml"
|
|
in
|
|
|
|
# 2907 "parsing/parser.mly"
|
|
( cs )
|
|
# 7367 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.core_type) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.core_type) = let _1 =
|
|
# 3139 "parsing/parser.mly"
|
|
( _1 )
|
|
# 7392 "parsing/parser.ml"
|
|
in
|
|
|
|
# 3129 "parsing/parser.mly"
|
|
( _1 )
|
|
# 7397 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : (Parsetree.attribute) = Obj.magic _2 in
|
|
let _1 : (Parsetree.core_type) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.core_type) =
|
|
# 3131 "parsing/parser.mly"
|
|
( Typ.attr _1 _2 )
|
|
# 7429 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Asttypes.direction_flag) =
|
|
# 3516 "parsing/parser.mly"
|
|
( Upto )
|
|
# 7454 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Asttypes.direction_flag) =
|
|
# 3517 "parsing/parser.mly"
|
|
( Downto )
|
|
# 7479 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.expression) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.expression) =
|
|
# 2085 "parsing/parser.mly"
|
|
( _1 )
|
|
# 7504 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _7;
|
|
MenhirLib.EngineTypes.startp = _startpos__7_;
|
|
MenhirLib.EngineTypes.endp = _endpos__7_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _6;
|
|
MenhirLib.EngineTypes.startp = _startpos__6_;
|
|
MenhirLib.EngineTypes.endp = _endpos__6_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _7 : (Parsetree.expression) = Obj.magic _7 in
|
|
let _6 : unit = Obj.magic _6 in
|
|
let _5 : (Parsetree.module_expr) = Obj.magic _5 in
|
|
let _1_inlined3 : (string option) = Obj.magic _1_inlined3 in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (string Asttypes.loc option) = Obj.magic _1_inlined1 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__7_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _4 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined3_, _startpos__1_inlined3_, _1_inlined3) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 7584 "parsing/parser.ml"
|
|
|
|
in
|
|
let _3 =
|
|
let (_1_inlined1, _1) = (_1_inlined2, _1_inlined1) in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 7594 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3680 "parsing/parser.mly"
|
|
( _1, _2 )
|
|
# 7600 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2133 "parsing/parser.mly"
|
|
( Pexp_letmodule(_4, _5, _7), _3 )
|
|
# 7606 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__7_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2087 "parsing/parser.mly"
|
|
( let desc, attrs = _1 in
|
|
mkexp_attrs ~loc:_sloc desc attrs )
|
|
# 7617 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _6;
|
|
MenhirLib.EngineTypes.startp = _startpos__6_;
|
|
MenhirLib.EngineTypes.endp = _endpos__6_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined4;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _6 : (Parsetree.expression) = Obj.magic _6 in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _1_inlined4 : (Parsetree.attributes) = Obj.magic _1_inlined4 in
|
|
let _2_inlined1 : (Parsetree.constructor_arguments * Parsetree.core_type option) = Obj.magic _2_inlined1 in
|
|
let _1_inlined3 : (string) = Obj.magic _1_inlined3 in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (string Asttypes.loc option) = Obj.magic _1_inlined1 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__6_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _4 =
|
|
let (_endpos__1_inlined1_, _endpos__1_, _startpos__1_, _1_inlined1, _2, _1) = (_endpos__1_inlined4_, _endpos__1_inlined3_, _startpos__1_inlined3_, _1_inlined4, _2_inlined1, _1_inlined3) in
|
|
let _3 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 7703 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__3_ = _endpos__1_inlined1_ in
|
|
let _1 =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 7714 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__3_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2969 "parsing/parser.mly"
|
|
( let args, res = _2 in
|
|
Te.decl _1 ~args ?res ~attrs:_3 ~loc:(make_loc _sloc) )
|
|
# 7724 "parsing/parser.ml"
|
|
|
|
in
|
|
let _3 =
|
|
let (_1_inlined1, _1) = (_1_inlined2, _1_inlined1) in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 7734 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3680 "parsing/parser.mly"
|
|
( _1, _2 )
|
|
# 7740 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2135 "parsing/parser.mly"
|
|
( Pexp_letexception(_4, _6), _3 )
|
|
# 7746 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__6_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2087 "parsing/parser.mly"
|
|
( let desc, attrs = _1 in
|
|
mkexp_attrs ~loc:_sloc desc attrs )
|
|
# 7757 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _7;
|
|
MenhirLib.EngineTypes.startp = _startpos__7_;
|
|
MenhirLib.EngineTypes.endp = _endpos__7_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _6;
|
|
MenhirLib.EngineTypes.startp = _startpos__6_;
|
|
MenhirLib.EngineTypes.endp = _endpos__6_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _7 : (Parsetree.expression) = Obj.magic _7 in
|
|
let _6 : unit = Obj.magic _6 in
|
|
let _5 : (Parsetree.module_expr) = Obj.magic _5 in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (string Asttypes.loc option) = Obj.magic _1_inlined1 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__7_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _4 =
|
|
let (_1_inlined1, _1) = (_1_inlined2, _1_inlined1) in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 7829 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3680 "parsing/parser.mly"
|
|
( _1, _2 )
|
|
# 7835 "parsing/parser.ml"
|
|
|
|
in
|
|
let _3 =
|
|
# 3571 "parsing/parser.mly"
|
|
( Fresh )
|
|
# 7841 "parsing/parser.ml"
|
|
in
|
|
|
|
# 2137 "parsing/parser.mly"
|
|
( let open_loc = make_loc (_startpos__2_, _endpos__5_) in
|
|
let od = Opn.mk _5 ~override:_3 ~loc:open_loc in
|
|
Pexp_open(od, _7), _4 )
|
|
# 7848 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__7_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2087 "parsing/parser.mly"
|
|
( let desc, attrs = _1 in
|
|
mkexp_attrs ~loc:_sloc desc attrs )
|
|
# 7859 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _7;
|
|
MenhirLib.EngineTypes.startp = _startpos__7_;
|
|
MenhirLib.EngineTypes.endp = _endpos__7_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _6;
|
|
MenhirLib.EngineTypes.startp = _startpos__6_;
|
|
MenhirLib.EngineTypes.endp = _endpos__6_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _7 : (Parsetree.expression) = Obj.magic _7 in
|
|
let _6 : unit = Obj.magic _6 in
|
|
let _5 : (Parsetree.module_expr) = Obj.magic _5 in
|
|
let _1_inlined3 : (Parsetree.attributes) = Obj.magic _1_inlined3 in
|
|
let _1_inlined2 : (string Asttypes.loc option) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : unit = Obj.magic _1_inlined1 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__7_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _4 =
|
|
let (_1_inlined1, _1) = (_1_inlined3, _1_inlined2) in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 7938 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3680 "parsing/parser.mly"
|
|
( _1, _2 )
|
|
# 7944 "parsing/parser.ml"
|
|
|
|
in
|
|
let _3 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3572 "parsing/parser.mly"
|
|
( Override )
|
|
# 7952 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2137 "parsing/parser.mly"
|
|
( let open_loc = make_loc (_startpos__2_, _endpos__5_) in
|
|
let od = Opn.mk _5 ~override:_3 ~loc:open_loc in
|
|
Pexp_open(od, _7), _4 )
|
|
# 7960 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__7_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2087 "parsing/parser.mly"
|
|
( let desc, attrs = _1 in
|
|
mkexp_attrs ~loc:_sloc desc attrs )
|
|
# 7971 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let xs : (Parsetree.case list) = Obj.magic xs in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (string Asttypes.loc option) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_xs_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _3 =
|
|
let xs =
|
|
let xs =
|
|
# 253 "menhir/standard.mly"
|
|
( List.rev xs )
|
|
# 8020 "parsing/parser.ml"
|
|
in
|
|
|
|
# 987 "parsing/parser.mly"
|
|
( xs )
|
|
# 8025 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2469 "parsing/parser.mly"
|
|
( xs )
|
|
# 8031 "parsing/parser.ml"
|
|
|
|
in
|
|
let _2 =
|
|
let (_1_inlined1, _1) = (_1_inlined2, _1_inlined1) in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 8041 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3680 "parsing/parser.mly"
|
|
( _1, _2 )
|
|
# 8047 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2141 "parsing/parser.mly"
|
|
( Pexp_function _3, _2 )
|
|
# 8053 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos_xs_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2087 "parsing/parser.mly"
|
|
( let desc, attrs = _1 in
|
|
mkexp_attrs ~loc:_sloc desc attrs )
|
|
# 8064 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _4 : (Parsetree.expression) = Obj.magic _4 in
|
|
let _3 : (Asttypes.arg_label * Parsetree.expression option * Parsetree.pattern) = Obj.magic _3 in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (string Asttypes.loc option) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__4_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _2 =
|
|
let (_1_inlined1, _1) = (_1_inlined2, _1_inlined1) in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 8122 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3680 "parsing/parser.mly"
|
|
( _1, _2 )
|
|
# 8128 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2143 "parsing/parser.mly"
|
|
( let (l,o,p) = _3 in
|
|
Pexp_fun(l, o, p, _4), _2 )
|
|
# 8135 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__4_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2087 "parsing/parser.mly"
|
|
( let desc, attrs = _1 in
|
|
mkexp_attrs ~loc:_sloc desc attrs )
|
|
# 8146 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _7;
|
|
MenhirLib.EngineTypes.startp = _startpos__7_;
|
|
MenhirLib.EngineTypes.endp = _endpos__7_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _6;
|
|
MenhirLib.EngineTypes.startp = _startpos__6_;
|
|
MenhirLib.EngineTypes.endp = _endpos__6_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _7 : (Parsetree.expression) = Obj.magic _7 in
|
|
let _6 : unit = Obj.magic _6 in
|
|
let xs : (string Asttypes.loc list) = Obj.magic xs in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (string Asttypes.loc option) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__7_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _5 =
|
|
# 2364 "parsing/parser.mly"
|
|
( xs )
|
|
# 8221 "parsing/parser.ml"
|
|
in
|
|
let _2 =
|
|
let (_1_inlined1, _1) = (_1_inlined2, _1_inlined1) in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 8230 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3680 "parsing/parser.mly"
|
|
( _1, _2 )
|
|
# 8236 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__7_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2146 "parsing/parser.mly"
|
|
( (mk_newtypes ~loc:_sloc _5 _7).pexp_desc, _2 )
|
|
# 8245 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__7_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2087 "parsing/parser.mly"
|
|
( let desc, attrs = _1 in
|
|
mkexp_attrs ~loc:_sloc desc attrs )
|
|
# 8256 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let xs : (Parsetree.case list) = Obj.magic xs in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let _3 : (Parsetree.expression) = Obj.magic _3 in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (string Asttypes.loc option) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_xs_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _5 =
|
|
let xs =
|
|
let xs =
|
|
# 253 "menhir/standard.mly"
|
|
( List.rev xs )
|
|
# 8319 "parsing/parser.ml"
|
|
in
|
|
|
|
# 987 "parsing/parser.mly"
|
|
( xs )
|
|
# 8324 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2469 "parsing/parser.mly"
|
|
( xs )
|
|
# 8330 "parsing/parser.ml"
|
|
|
|
in
|
|
let _2 =
|
|
let (_1_inlined1, _1) = (_1_inlined2, _1_inlined1) in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 8340 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3680 "parsing/parser.mly"
|
|
( _1, _2 )
|
|
# 8346 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2148 "parsing/parser.mly"
|
|
( Pexp_match(_3, _5), _2 )
|
|
# 8352 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos_xs_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2087 "parsing/parser.mly"
|
|
( let desc, attrs = _1 in
|
|
mkexp_attrs ~loc:_sloc desc attrs )
|
|
# 8363 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let xs : (Parsetree.case list) = Obj.magic xs in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let _3 : (Parsetree.expression) = Obj.magic _3 in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (string Asttypes.loc option) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_xs_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _5 =
|
|
let xs =
|
|
let xs =
|
|
# 253 "menhir/standard.mly"
|
|
( List.rev xs )
|
|
# 8426 "parsing/parser.ml"
|
|
in
|
|
|
|
# 987 "parsing/parser.mly"
|
|
( xs )
|
|
# 8431 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2469 "parsing/parser.mly"
|
|
( xs )
|
|
# 8437 "parsing/parser.ml"
|
|
|
|
in
|
|
let _2 =
|
|
let (_1_inlined1, _1) = (_1_inlined2, _1_inlined1) in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 8447 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3680 "parsing/parser.mly"
|
|
( _1, _2 )
|
|
# 8453 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2150 "parsing/parser.mly"
|
|
( Pexp_try(_3, _5), _2 )
|
|
# 8459 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos_xs_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2087 "parsing/parser.mly"
|
|
( let desc, attrs = _1 in
|
|
mkexp_attrs ~loc:_sloc desc attrs )
|
|
# 8470 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let _3 : (Parsetree.expression) = Obj.magic _3 in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (string Asttypes.loc option) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _2 =
|
|
let (_1_inlined1, _1) = (_1_inlined2, _1_inlined1) in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 8535 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3680 "parsing/parser.mly"
|
|
( _1, _2 )
|
|
# 8541 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2152 "parsing/parser.mly"
|
|
( syntax_error() )
|
|
# 8547 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__5_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2087 "parsing/parser.mly"
|
|
( let desc, attrs = _1 in
|
|
mkexp_attrs ~loc:_sloc desc attrs )
|
|
# 8558 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _7;
|
|
MenhirLib.EngineTypes.startp = _startpos__7_;
|
|
MenhirLib.EngineTypes.endp = _endpos__7_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _6;
|
|
MenhirLib.EngineTypes.startp = _startpos__6_;
|
|
MenhirLib.EngineTypes.endp = _endpos__6_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _7 : (Parsetree.expression) = Obj.magic _7 in
|
|
let _6 : unit = Obj.magic _6 in
|
|
let _5 : (Parsetree.expression) = Obj.magic _5 in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let _3 : (Parsetree.expression) = Obj.magic _3 in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (string Asttypes.loc option) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__7_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _2 =
|
|
let (_1_inlined1, _1) = (_1_inlined2, _1_inlined1) in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 8637 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3680 "parsing/parser.mly"
|
|
( _1, _2 )
|
|
# 8643 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2154 "parsing/parser.mly"
|
|
( Pexp_ifthenelse(_3, _5, Some _7), _2 )
|
|
# 8649 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__7_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2087 "parsing/parser.mly"
|
|
( let desc, attrs = _1 in
|
|
mkexp_attrs ~loc:_sloc desc attrs )
|
|
# 8660 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : (Parsetree.expression) = Obj.magic _5 in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let _3 : (Parsetree.expression) = Obj.magic _3 in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (string Asttypes.loc option) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _2 =
|
|
let (_1_inlined1, _1) = (_1_inlined2, _1_inlined1) in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 8725 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3680 "parsing/parser.mly"
|
|
( _1, _2 )
|
|
# 8731 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2156 "parsing/parser.mly"
|
|
( Pexp_ifthenelse(_3, _5, None), _2 )
|
|
# 8737 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__5_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2087 "parsing/parser.mly"
|
|
( let desc, attrs = _1 in
|
|
mkexp_attrs ~loc:_sloc desc attrs )
|
|
# 8748 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _6;
|
|
MenhirLib.EngineTypes.startp = _startpos__6_;
|
|
MenhirLib.EngineTypes.endp = _endpos__6_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _6 : unit = Obj.magic _6 in
|
|
let _5 : (Parsetree.expression) = Obj.magic _5 in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let _3 : (Parsetree.expression) = Obj.magic _3 in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (string Asttypes.loc option) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__6_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _2 =
|
|
let (_1_inlined1, _1) = (_1_inlined2, _1_inlined1) in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 8820 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3680 "parsing/parser.mly"
|
|
( _1, _2 )
|
|
# 8826 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2158 "parsing/parser.mly"
|
|
( Pexp_while(_3, _5), _2 )
|
|
# 8832 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__6_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2087 "parsing/parser.mly"
|
|
( let desc, attrs = _1 in
|
|
mkexp_attrs ~loc:_sloc desc attrs )
|
|
# 8843 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _10;
|
|
MenhirLib.EngineTypes.startp = _startpos__10_;
|
|
MenhirLib.EngineTypes.endp = _endpos__10_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _9;
|
|
MenhirLib.EngineTypes.startp = _startpos__9_;
|
|
MenhirLib.EngineTypes.endp = _endpos__9_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _8;
|
|
MenhirLib.EngineTypes.startp = _startpos__8_;
|
|
MenhirLib.EngineTypes.endp = _endpos__8_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _7;
|
|
MenhirLib.EngineTypes.startp = _startpos__7_;
|
|
MenhirLib.EngineTypes.endp = _endpos__7_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _6;
|
|
MenhirLib.EngineTypes.startp = _startpos__6_;
|
|
MenhirLib.EngineTypes.endp = _endpos__6_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _10 : unit = Obj.magic _10 in
|
|
let _9 : (Parsetree.expression) = Obj.magic _9 in
|
|
let _8 : unit = Obj.magic _8 in
|
|
let _7 : (Parsetree.expression) = Obj.magic _7 in
|
|
let _6 : (Asttypes.direction_flag) = Obj.magic _6 in
|
|
let _5 : (Parsetree.expression) = Obj.magic _5 in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let _3 : (Parsetree.pattern) = Obj.magic _3 in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (string Asttypes.loc option) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__10_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _2 =
|
|
let (_1_inlined1, _1) = (_1_inlined2, _1_inlined1) in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 8943 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3680 "parsing/parser.mly"
|
|
( _1, _2 )
|
|
# 8949 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2161 "parsing/parser.mly"
|
|
( Pexp_for(_3, _5, _7, _6, _9), _2 )
|
|
# 8955 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__10_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2087 "parsing/parser.mly"
|
|
( let desc, attrs = _1 in
|
|
mkexp_attrs ~loc:_sloc desc attrs )
|
|
# 8966 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : (Parsetree.expression) = Obj.magic _3 in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (string Asttypes.loc option) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _2 =
|
|
let (_1_inlined1, _1) = (_1_inlined2, _1_inlined1) in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 9017 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3680 "parsing/parser.mly"
|
|
( _1, _2 )
|
|
# 9023 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2163 "parsing/parser.mly"
|
|
( Pexp_assert _3, _2 )
|
|
# 9029 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__3_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2087 "parsing/parser.mly"
|
|
( let desc, attrs = _1 in
|
|
mkexp_attrs ~loc:_sloc desc attrs )
|
|
# 9040 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : (Parsetree.expression) = Obj.magic _3 in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (string Asttypes.loc option) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _2 =
|
|
let (_1_inlined1, _1) = (_1_inlined2, _1_inlined1) in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 9091 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3680 "parsing/parser.mly"
|
|
( _1, _2 )
|
|
# 9097 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2165 "parsing/parser.mly"
|
|
( Pexp_lazy _3, _2 )
|
|
# 9103 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__3_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2087 "parsing/parser.mly"
|
|
( let desc, attrs = _1 in
|
|
mkexp_attrs ~loc:_sloc desc attrs )
|
|
# 9114 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xss;
|
|
MenhirLib.EngineTypes.startp = _startpos_xss_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xss_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let xss : (Parsetree.class_field list list) = Obj.magic xss in
|
|
let _1_inlined3 : (Parsetree.pattern) = Obj.magic _1_inlined3 in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (string Asttypes.loc option) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__4_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _3 =
|
|
let _1 = _1_inlined3 in
|
|
let _2 =
|
|
let _1 =
|
|
let _1 =
|
|
# 260 "menhir/standard.mly"
|
|
( List.flatten xss )
|
|
# 9179 "parsing/parser.ml"
|
|
in
|
|
|
|
# 1771 "parsing/parser.mly"
|
|
( _1 )
|
|
# 9184 "parsing/parser.ml"
|
|
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_xss_, _startpos_xss_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _startpos = _startpos__1_ in
|
|
|
|
# 786 "parsing/parser.mly"
|
|
( extra_cstr _startpos _endpos _1 )
|
|
# 9193 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1758 "parsing/parser.mly"
|
|
( Cstr.mk _1 _2 )
|
|
# 9199 "parsing/parser.ml"
|
|
|
|
in
|
|
let _2 =
|
|
let (_1_inlined1, _1) = (_1_inlined2, _1_inlined1) in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 9209 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3680 "parsing/parser.mly"
|
|
( _1, _2 )
|
|
# 9215 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2167 "parsing/parser.mly"
|
|
( Pexp_object _3, _2 )
|
|
# 9221 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__4_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2087 "parsing/parser.mly"
|
|
( let desc, attrs = _1 in
|
|
mkexp_attrs ~loc:_sloc desc attrs )
|
|
# 9232 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xss;
|
|
MenhirLib.EngineTypes.startp = _startpos_xss_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xss_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let xss : (Parsetree.class_field list list) = Obj.magic xss in
|
|
let _1_inlined3 : (Parsetree.pattern) = Obj.magic _1_inlined3 in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (string Asttypes.loc option) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__4_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _3 =
|
|
let _1 = _1_inlined3 in
|
|
let _2 =
|
|
let _1 =
|
|
let _1 =
|
|
# 260 "menhir/standard.mly"
|
|
( List.flatten xss )
|
|
# 9297 "parsing/parser.ml"
|
|
in
|
|
|
|
# 1771 "parsing/parser.mly"
|
|
( _1 )
|
|
# 9302 "parsing/parser.ml"
|
|
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_xss_, _startpos_xss_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _startpos = _startpos__1_ in
|
|
|
|
# 786 "parsing/parser.mly"
|
|
( extra_cstr _startpos _endpos _1 )
|
|
# 9311 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1758 "parsing/parser.mly"
|
|
( Cstr.mk _1 _2 )
|
|
# 9317 "parsing/parser.ml"
|
|
|
|
in
|
|
let _2 =
|
|
let (_1_inlined1, _1) = (_1_inlined2, _1_inlined1) in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 9327 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3680 "parsing/parser.mly"
|
|
( _1, _2 )
|
|
# 9333 "parsing/parser.ml"
|
|
|
|
in
|
|
let _loc__4_ = (_startpos__4_, _endpos__4_) in
|
|
let _loc__1_ = (_startpos__1_, _endpos__1_) in
|
|
|
|
# 2169 "parsing/parser.mly"
|
|
( unclosed "object" _loc__1_ "end" _loc__4_ )
|
|
# 9341 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__4_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2087 "parsing/parser.mly"
|
|
( let desc, attrs = _1 in
|
|
mkexp_attrs ~loc:_sloc desc attrs )
|
|
# 9352 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let xs : ((Asttypes.arg_label * Parsetree.expression) list) = Obj.magic xs in
|
|
let _1 : (Parsetree.expression) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_xs_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let _2 =
|
|
let xs =
|
|
# 253 "menhir/standard.mly"
|
|
( List.rev xs )
|
|
# 9387 "parsing/parser.ml"
|
|
in
|
|
|
|
# 894 "parsing/parser.mly"
|
|
( xs )
|
|
# 9392 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2173 "parsing/parser.mly"
|
|
( Pexp_apply(_1, _2) )
|
|
# 9398 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos_xs_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 9408 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2090 "parsing/parser.mly"
|
|
( _1 )
|
|
# 9414 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let xs : (Parsetree.expression list) = Obj.magic xs in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_xs_ in
|
|
let _endpos = _endpos_xs_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let es =
|
|
let xs =
|
|
# 253 "menhir/standard.mly"
|
|
( List.rev xs )
|
|
# 9443 "parsing/parser.ml"
|
|
in
|
|
|
|
# 954 "parsing/parser.mly"
|
|
( xs )
|
|
# 9448 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2496 "parsing/parser.mly"
|
|
( es )
|
|
# 9454 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2175 "parsing/parser.mly"
|
|
( Pexp_tuple(_1) )
|
|
# 9460 "parsing/parser.ml"
|
|
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_xs_, _startpos_xs_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 9470 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2090 "parsing/parser.mly"
|
|
( _1 )
|
|
# 9476 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : (Parsetree.expression) = Obj.magic _2 in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 9514 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2177 "parsing/parser.mly"
|
|
( Pexp_construct(_1, Some _2) )
|
|
# 9520 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__2_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 9530 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2090 "parsing/parser.mly"
|
|
( _1 )
|
|
# 9536 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : (Parsetree.expression) = Obj.magic _2 in
|
|
let _1 : (Asttypes.label) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
# 2179 "parsing/parser.mly"
|
|
( Pexp_variant(_1, Some _2) )
|
|
# 9569 "parsing/parser.ml"
|
|
in
|
|
let _endpos__1_ = _endpos__2_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 9578 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2090 "parsing/parser.mly"
|
|
( _1 )
|
|
# 9584 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = e2;
|
|
MenhirLib.EngineTypes.startp = _startpos_e2_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = op;
|
|
MenhirLib.EngineTypes.startp = _startpos_op_;
|
|
MenhirLib.EngineTypes.endp = _endpos_op_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = e1;
|
|
MenhirLib.EngineTypes.startp = _startpos_e1_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let e2 : (Parsetree.expression) = Obj.magic e2 in
|
|
let op : (
|
|
# 618 "parsing/parser.mly"
|
|
(string)
|
|
# 9618 "parsing/parser.ml"
|
|
) = Obj.magic op in
|
|
let e1 : (Parsetree.expression) = Obj.magic e1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_e1_ in
|
|
let _endpos = _endpos_e2_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let op =
|
|
let _1 =
|
|
# 3390 "parsing/parser.mly"
|
|
( op )
|
|
# 9630 "parsing/parser.ml"
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_op_, _startpos_op_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 819 "parsing/parser.mly"
|
|
( mkoperator ~loc:_sloc _1 )
|
|
# 9639 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2181 "parsing/parser.mly"
|
|
( mkinfix e1 op e2 )
|
|
# 9645 "parsing/parser.ml"
|
|
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_e2_, _startpos_e1_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 9655 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2090 "parsing/parser.mly"
|
|
( _1 )
|
|
# 9661 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = e2;
|
|
MenhirLib.EngineTypes.startp = _startpos_e2_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = op;
|
|
MenhirLib.EngineTypes.startp = _startpos_op_;
|
|
MenhirLib.EngineTypes.endp = _endpos_op_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = e1;
|
|
MenhirLib.EngineTypes.startp = _startpos_e1_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let e2 : (Parsetree.expression) = Obj.magic e2 in
|
|
let op : (
|
|
# 619 "parsing/parser.mly"
|
|
(string)
|
|
# 9695 "parsing/parser.ml"
|
|
) = Obj.magic op in
|
|
let e1 : (Parsetree.expression) = Obj.magic e1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_e1_ in
|
|
let _endpos = _endpos_e2_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let op =
|
|
let _1 =
|
|
# 3391 "parsing/parser.mly"
|
|
( op )
|
|
# 9707 "parsing/parser.ml"
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_op_, _startpos_op_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 819 "parsing/parser.mly"
|
|
( mkoperator ~loc:_sloc _1 )
|
|
# 9716 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2181 "parsing/parser.mly"
|
|
( mkinfix e1 op e2 )
|
|
# 9722 "parsing/parser.ml"
|
|
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_e2_, _startpos_e1_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 9732 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2090 "parsing/parser.mly"
|
|
( _1 )
|
|
# 9738 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = e2;
|
|
MenhirLib.EngineTypes.startp = _startpos_e2_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = op;
|
|
MenhirLib.EngineTypes.startp = _startpos_op_;
|
|
MenhirLib.EngineTypes.endp = _endpos_op_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = e1;
|
|
MenhirLib.EngineTypes.startp = _startpos_e1_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let e2 : (Parsetree.expression) = Obj.magic e2 in
|
|
let op : (
|
|
# 620 "parsing/parser.mly"
|
|
(string)
|
|
# 9772 "parsing/parser.ml"
|
|
) = Obj.magic op in
|
|
let e1 : (Parsetree.expression) = Obj.magic e1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_e1_ in
|
|
let _endpos = _endpos_e2_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let op =
|
|
let _1 =
|
|
# 3392 "parsing/parser.mly"
|
|
( op )
|
|
# 9784 "parsing/parser.ml"
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_op_, _startpos_op_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 819 "parsing/parser.mly"
|
|
( mkoperator ~loc:_sloc _1 )
|
|
# 9793 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2181 "parsing/parser.mly"
|
|
( mkinfix e1 op e2 )
|
|
# 9799 "parsing/parser.ml"
|
|
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_e2_, _startpos_e1_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 9809 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2090 "parsing/parser.mly"
|
|
( _1 )
|
|
# 9815 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = e2;
|
|
MenhirLib.EngineTypes.startp = _startpos_e2_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = op;
|
|
MenhirLib.EngineTypes.startp = _startpos_op_;
|
|
MenhirLib.EngineTypes.endp = _endpos_op_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = e1;
|
|
MenhirLib.EngineTypes.startp = _startpos_e1_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let e2 : (Parsetree.expression) = Obj.magic e2 in
|
|
let op : (
|
|
# 621 "parsing/parser.mly"
|
|
(string)
|
|
# 9849 "parsing/parser.ml"
|
|
) = Obj.magic op in
|
|
let e1 : (Parsetree.expression) = Obj.magic e1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_e1_ in
|
|
let _endpos = _endpos_e2_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let op =
|
|
let _1 =
|
|
# 3393 "parsing/parser.mly"
|
|
( op )
|
|
# 9861 "parsing/parser.ml"
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_op_, _startpos_op_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 819 "parsing/parser.mly"
|
|
( mkoperator ~loc:_sloc _1 )
|
|
# 9870 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2181 "parsing/parser.mly"
|
|
( mkinfix e1 op e2 )
|
|
# 9876 "parsing/parser.ml"
|
|
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_e2_, _startpos_e1_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 9886 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2090 "parsing/parser.mly"
|
|
( _1 )
|
|
# 9892 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = e2;
|
|
MenhirLib.EngineTypes.startp = _startpos_e2_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = op;
|
|
MenhirLib.EngineTypes.startp = _startpos_op_;
|
|
MenhirLib.EngineTypes.endp = _endpos_op_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = e1;
|
|
MenhirLib.EngineTypes.startp = _startpos_e1_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let e2 : (Parsetree.expression) = Obj.magic e2 in
|
|
let op : (
|
|
# 622 "parsing/parser.mly"
|
|
(string)
|
|
# 9926 "parsing/parser.ml"
|
|
) = Obj.magic op in
|
|
let e1 : (Parsetree.expression) = Obj.magic e1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_e1_ in
|
|
let _endpos = _endpos_e2_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let op =
|
|
let _1 =
|
|
# 3394 "parsing/parser.mly"
|
|
( op )
|
|
# 9938 "parsing/parser.ml"
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_op_, _startpos_op_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 819 "parsing/parser.mly"
|
|
( mkoperator ~loc:_sloc _1 )
|
|
# 9947 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2181 "parsing/parser.mly"
|
|
( mkinfix e1 op e2 )
|
|
# 9953 "parsing/parser.ml"
|
|
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_e2_, _startpos_e1_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 9963 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2090 "parsing/parser.mly"
|
|
( _1 )
|
|
# 9969 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = e2;
|
|
MenhirLib.EngineTypes.startp = _startpos_e2_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = e1;
|
|
MenhirLib.EngineTypes.startp = _startpos_e1_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let e2 : (Parsetree.expression) = Obj.magic e2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let e1 : (Parsetree.expression) = Obj.magic e1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_e1_ in
|
|
let _endpos = _endpos_e2_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let op =
|
|
let _1 =
|
|
# 3395 "parsing/parser.mly"
|
|
("+")
|
|
# 10011 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 819 "parsing/parser.mly"
|
|
( mkoperator ~loc:_sloc _1 )
|
|
# 10019 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2181 "parsing/parser.mly"
|
|
( mkinfix e1 op e2 )
|
|
# 10025 "parsing/parser.ml"
|
|
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_e2_, _startpos_e1_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 10035 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2090 "parsing/parser.mly"
|
|
( _1 )
|
|
# 10041 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = e2;
|
|
MenhirLib.EngineTypes.startp = _startpos_e2_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = e1;
|
|
MenhirLib.EngineTypes.startp = _startpos_e1_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let e2 : (Parsetree.expression) = Obj.magic e2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let e1 : (Parsetree.expression) = Obj.magic e1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_e1_ in
|
|
let _endpos = _endpos_e2_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let op =
|
|
let _1 =
|
|
# 3396 "parsing/parser.mly"
|
|
("+.")
|
|
# 10083 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 819 "parsing/parser.mly"
|
|
( mkoperator ~loc:_sloc _1 )
|
|
# 10091 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2181 "parsing/parser.mly"
|
|
( mkinfix e1 op e2 )
|
|
# 10097 "parsing/parser.ml"
|
|
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_e2_, _startpos_e1_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 10107 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2090 "parsing/parser.mly"
|
|
( _1 )
|
|
# 10113 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = e2;
|
|
MenhirLib.EngineTypes.startp = _startpos_e2_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = e1;
|
|
MenhirLib.EngineTypes.startp = _startpos_e1_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let e2 : (Parsetree.expression) = Obj.magic e2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let e1 : (Parsetree.expression) = Obj.magic e1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_e1_ in
|
|
let _endpos = _endpos_e2_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let op =
|
|
let _1 =
|
|
# 3397 "parsing/parser.mly"
|
|
("+=")
|
|
# 10155 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 819 "parsing/parser.mly"
|
|
( mkoperator ~loc:_sloc _1 )
|
|
# 10163 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2181 "parsing/parser.mly"
|
|
( mkinfix e1 op e2 )
|
|
# 10169 "parsing/parser.ml"
|
|
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_e2_, _startpos_e1_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 10179 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2090 "parsing/parser.mly"
|
|
( _1 )
|
|
# 10185 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = e2;
|
|
MenhirLib.EngineTypes.startp = _startpos_e2_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = e1;
|
|
MenhirLib.EngineTypes.startp = _startpos_e1_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let e2 : (Parsetree.expression) = Obj.magic e2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let e1 : (Parsetree.expression) = Obj.magic e1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_e1_ in
|
|
let _endpos = _endpos_e2_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let op =
|
|
let _1 =
|
|
# 3398 "parsing/parser.mly"
|
|
("-")
|
|
# 10227 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 819 "parsing/parser.mly"
|
|
( mkoperator ~loc:_sloc _1 )
|
|
# 10235 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2181 "parsing/parser.mly"
|
|
( mkinfix e1 op e2 )
|
|
# 10241 "parsing/parser.ml"
|
|
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_e2_, _startpos_e1_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 10251 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2090 "parsing/parser.mly"
|
|
( _1 )
|
|
# 10257 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = e2;
|
|
MenhirLib.EngineTypes.startp = _startpos_e2_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = e1;
|
|
MenhirLib.EngineTypes.startp = _startpos_e1_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let e2 : (Parsetree.expression) = Obj.magic e2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let e1 : (Parsetree.expression) = Obj.magic e1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_e1_ in
|
|
let _endpos = _endpos_e2_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let op =
|
|
let _1 =
|
|
# 3399 "parsing/parser.mly"
|
|
("-.")
|
|
# 10299 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 819 "parsing/parser.mly"
|
|
( mkoperator ~loc:_sloc _1 )
|
|
# 10307 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2181 "parsing/parser.mly"
|
|
( mkinfix e1 op e2 )
|
|
# 10313 "parsing/parser.ml"
|
|
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_e2_, _startpos_e1_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 10323 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2090 "parsing/parser.mly"
|
|
( _1 )
|
|
# 10329 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = e2;
|
|
MenhirLib.EngineTypes.startp = _startpos_e2_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = e1;
|
|
MenhirLib.EngineTypes.startp = _startpos_e1_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let e2 : (Parsetree.expression) = Obj.magic e2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let e1 : (Parsetree.expression) = Obj.magic e1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_e1_ in
|
|
let _endpos = _endpos_e2_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let op =
|
|
let _1 =
|
|
# 3400 "parsing/parser.mly"
|
|
("*")
|
|
# 10371 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 819 "parsing/parser.mly"
|
|
( mkoperator ~loc:_sloc _1 )
|
|
# 10379 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2181 "parsing/parser.mly"
|
|
( mkinfix e1 op e2 )
|
|
# 10385 "parsing/parser.ml"
|
|
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_e2_, _startpos_e1_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 10395 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2090 "parsing/parser.mly"
|
|
( _1 )
|
|
# 10401 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = e2;
|
|
MenhirLib.EngineTypes.startp = _startpos_e2_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = e1;
|
|
MenhirLib.EngineTypes.startp = _startpos_e1_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let e2 : (Parsetree.expression) = Obj.magic e2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let e1 : (Parsetree.expression) = Obj.magic e1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_e1_ in
|
|
let _endpos = _endpos_e2_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let op =
|
|
let _1 =
|
|
# 3401 "parsing/parser.mly"
|
|
("%")
|
|
# 10443 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 819 "parsing/parser.mly"
|
|
( mkoperator ~loc:_sloc _1 )
|
|
# 10451 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2181 "parsing/parser.mly"
|
|
( mkinfix e1 op e2 )
|
|
# 10457 "parsing/parser.ml"
|
|
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_e2_, _startpos_e1_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 10467 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2090 "parsing/parser.mly"
|
|
( _1 )
|
|
# 10473 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = e2;
|
|
MenhirLib.EngineTypes.startp = _startpos_e2_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = e1;
|
|
MenhirLib.EngineTypes.startp = _startpos_e1_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let e2 : (Parsetree.expression) = Obj.magic e2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let e1 : (Parsetree.expression) = Obj.magic e1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_e1_ in
|
|
let _endpos = _endpos_e2_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let op =
|
|
let _1 =
|
|
# 3402 "parsing/parser.mly"
|
|
("=")
|
|
# 10515 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 819 "parsing/parser.mly"
|
|
( mkoperator ~loc:_sloc _1 )
|
|
# 10523 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2181 "parsing/parser.mly"
|
|
( mkinfix e1 op e2 )
|
|
# 10529 "parsing/parser.ml"
|
|
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_e2_, _startpos_e1_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 10539 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2090 "parsing/parser.mly"
|
|
( _1 )
|
|
# 10545 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = e2;
|
|
MenhirLib.EngineTypes.startp = _startpos_e2_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = e1;
|
|
MenhirLib.EngineTypes.startp = _startpos_e1_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let e2 : (Parsetree.expression) = Obj.magic e2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let e1 : (Parsetree.expression) = Obj.magic e1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_e1_ in
|
|
let _endpos = _endpos_e2_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let op =
|
|
let _1 =
|
|
# 3403 "parsing/parser.mly"
|
|
("<")
|
|
# 10587 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 819 "parsing/parser.mly"
|
|
( mkoperator ~loc:_sloc _1 )
|
|
# 10595 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2181 "parsing/parser.mly"
|
|
( mkinfix e1 op e2 )
|
|
# 10601 "parsing/parser.ml"
|
|
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_e2_, _startpos_e1_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 10611 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2090 "parsing/parser.mly"
|
|
( _1 )
|
|
# 10617 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = e2;
|
|
MenhirLib.EngineTypes.startp = _startpos_e2_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = e1;
|
|
MenhirLib.EngineTypes.startp = _startpos_e1_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let e2 : (Parsetree.expression) = Obj.magic e2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let e1 : (Parsetree.expression) = Obj.magic e1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_e1_ in
|
|
let _endpos = _endpos_e2_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let op =
|
|
let _1 =
|
|
# 3404 "parsing/parser.mly"
|
|
(">")
|
|
# 10659 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 819 "parsing/parser.mly"
|
|
( mkoperator ~loc:_sloc _1 )
|
|
# 10667 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2181 "parsing/parser.mly"
|
|
( mkinfix e1 op e2 )
|
|
# 10673 "parsing/parser.ml"
|
|
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_e2_, _startpos_e1_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 10683 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2090 "parsing/parser.mly"
|
|
( _1 )
|
|
# 10689 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = e2;
|
|
MenhirLib.EngineTypes.startp = _startpos_e2_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = e1;
|
|
MenhirLib.EngineTypes.startp = _startpos_e1_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let e2 : (Parsetree.expression) = Obj.magic e2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let e1 : (Parsetree.expression) = Obj.magic e1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_e1_ in
|
|
let _endpos = _endpos_e2_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let op =
|
|
let _1 =
|
|
# 3405 "parsing/parser.mly"
|
|
("or")
|
|
# 10731 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 819 "parsing/parser.mly"
|
|
( mkoperator ~loc:_sloc _1 )
|
|
# 10739 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2181 "parsing/parser.mly"
|
|
( mkinfix e1 op e2 )
|
|
# 10745 "parsing/parser.ml"
|
|
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_e2_, _startpos_e1_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 10755 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2090 "parsing/parser.mly"
|
|
( _1 )
|
|
# 10761 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = e2;
|
|
MenhirLib.EngineTypes.startp = _startpos_e2_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = e1;
|
|
MenhirLib.EngineTypes.startp = _startpos_e1_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let e2 : (Parsetree.expression) = Obj.magic e2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let e1 : (Parsetree.expression) = Obj.magic e1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_e1_ in
|
|
let _endpos = _endpos_e2_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let op =
|
|
let _1 =
|
|
# 3406 "parsing/parser.mly"
|
|
("||")
|
|
# 10803 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 819 "parsing/parser.mly"
|
|
( mkoperator ~loc:_sloc _1 )
|
|
# 10811 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2181 "parsing/parser.mly"
|
|
( mkinfix e1 op e2 )
|
|
# 10817 "parsing/parser.ml"
|
|
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_e2_, _startpos_e1_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 10827 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2090 "parsing/parser.mly"
|
|
( _1 )
|
|
# 10833 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = e2;
|
|
MenhirLib.EngineTypes.startp = _startpos_e2_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = e1;
|
|
MenhirLib.EngineTypes.startp = _startpos_e1_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let e2 : (Parsetree.expression) = Obj.magic e2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let e1 : (Parsetree.expression) = Obj.magic e1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_e1_ in
|
|
let _endpos = _endpos_e2_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let op =
|
|
let _1 =
|
|
# 3407 "parsing/parser.mly"
|
|
("&")
|
|
# 10875 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 819 "parsing/parser.mly"
|
|
( mkoperator ~loc:_sloc _1 )
|
|
# 10883 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2181 "parsing/parser.mly"
|
|
( mkinfix e1 op e2 )
|
|
# 10889 "parsing/parser.ml"
|
|
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_e2_, _startpos_e1_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 10899 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2090 "parsing/parser.mly"
|
|
( _1 )
|
|
# 10905 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = e2;
|
|
MenhirLib.EngineTypes.startp = _startpos_e2_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = e1;
|
|
MenhirLib.EngineTypes.startp = _startpos_e1_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let e2 : (Parsetree.expression) = Obj.magic e2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let e1 : (Parsetree.expression) = Obj.magic e1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_e1_ in
|
|
let _endpos = _endpos_e2_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let op =
|
|
let _1 =
|
|
# 3408 "parsing/parser.mly"
|
|
("&&")
|
|
# 10947 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 819 "parsing/parser.mly"
|
|
( mkoperator ~loc:_sloc _1 )
|
|
# 10955 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2181 "parsing/parser.mly"
|
|
( mkinfix e1 op e2 )
|
|
# 10961 "parsing/parser.ml"
|
|
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_e2_, _startpos_e1_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 10971 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2090 "parsing/parser.mly"
|
|
( _1 )
|
|
# 10977 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = e2;
|
|
MenhirLib.EngineTypes.startp = _startpos_e2_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = e1;
|
|
MenhirLib.EngineTypes.startp = _startpos_e1_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let e2 : (Parsetree.expression) = Obj.magic e2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let e1 : (Parsetree.expression) = Obj.magic e1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_e1_ in
|
|
let _endpos = _endpos_e2_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let op =
|
|
let _1 =
|
|
# 3409 "parsing/parser.mly"
|
|
(":=")
|
|
# 11019 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 819 "parsing/parser.mly"
|
|
( mkoperator ~loc:_sloc _1 )
|
|
# 11027 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2181 "parsing/parser.mly"
|
|
( mkinfix e1 op e2 )
|
|
# 11033 "parsing/parser.ml"
|
|
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_e2_, _startpos_e1_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 11043 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2090 "parsing/parser.mly"
|
|
( _1 )
|
|
# 11049 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : (Parsetree.expression) = Obj.magic _2 in
|
|
let _1 : (string) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let _loc__1_ = (_startpos__1_, _endpos__1_) in
|
|
|
|
# 2183 "parsing/parser.mly"
|
|
( mkuminus ~oploc:_loc__1_ _1 _2 )
|
|
# 11084 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__2_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 11094 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2090 "parsing/parser.mly"
|
|
( _1 )
|
|
# 11100 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : (Parsetree.expression) = Obj.magic _2 in
|
|
let _1 : (string) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let _loc__1_ = (_startpos__1_, _endpos__1_) in
|
|
|
|
# 2185 "parsing/parser.mly"
|
|
( mkuplus ~oploc:_loc__1_ _1 _2 )
|
|
# 11135 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__2_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 11145 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2090 "parsing/parser.mly"
|
|
( _1 )
|
|
# 11151 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : (Parsetree.expression) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (let_bindings) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.expression) = let _endpos = _endpos__3_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2092 "parsing/parser.mly"
|
|
( expr_of_let_bindings ~loc:_sloc _1 _3 )
|
|
# 11193 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = body;
|
|
MenhirLib.EngineTypes.startp = _startpos_body_;
|
|
MenhirLib.EngineTypes.endp = _endpos_body_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = bindings;
|
|
MenhirLib.EngineTypes.startp = _startpos_bindings_;
|
|
MenhirLib.EngineTypes.endp = _endpos_bindings_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let body : (Parsetree.expression) = Obj.magic body in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let bindings : (Parsetree.pattern * Parsetree.expression * Parsetree.binding_op list) = Obj.magic bindings in
|
|
let _1 : (
|
|
# 624 "parsing/parser.mly"
|
|
(string)
|
|
# 11235 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_body_ in
|
|
let _v : (Parsetree.expression) = let pbop_op =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 11247 "parsing/parser.ml"
|
|
|
|
in
|
|
let _startpos_pbop_op_ = _startpos__1_ in
|
|
let _endpos = _endpos_body_ in
|
|
let _symbolstartpos = _startpos_pbop_op_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2094 "parsing/parser.mly"
|
|
( let (pbop_pat, pbop_exp, rev_ands) = bindings in
|
|
let ands = List.rev rev_ands in
|
|
let pbop_loc = make_loc _sloc in
|
|
let let_ = {pbop_op; pbop_pat; pbop_exp; pbop_loc} in
|
|
mkexp ~loc:_sloc (Pexp_letop{ let_; ands; body}) )
|
|
# 11261 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : (Parsetree.expression) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.expression) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.expression) = let _endpos = _endpos__3_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _loc__2_ = (_startpos__2_, _endpos__2_) in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2100 "parsing/parser.mly"
|
|
( mkexp_cons ~loc:_sloc _loc__2_ (ghexp ~loc:_sloc (Pexp_tuple[_1;_3])) )
|
|
# 11304 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : (Parsetree.expression) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 11339 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
# 3343 "parsing/parser.mly"
|
|
( _1 )
|
|
# 11348 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 11356 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__3_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2102 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc (Pexp_setinstvar(_1, _3)) )
|
|
# 11365 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : (Parsetree.expression) = Obj.magic _5 in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let _1_inlined1 : (Longident.t) = Obj.magic _1_inlined1 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.expression) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.expression) = let _3 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined1_, _startpos__1_inlined1_, _1_inlined1) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 11423 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__5_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2104 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc (Pexp_setfield(_1, _3, _5)) )
|
|
# 11432 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _7;
|
|
MenhirLib.EngineTypes.startp = _startpos__7_;
|
|
MenhirLib.EngineTypes.endp = _endpos__7_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _6;
|
|
MenhirLib.EngineTypes.startp = _startpos__6_;
|
|
MenhirLib.EngineTypes.endp = _endpos__6_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _7 : (Parsetree.expression) = Obj.magic _7 in
|
|
let _6 : unit = Obj.magic _6 in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _4 : (Parsetree.expression) = Obj.magic _4 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.expression) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__7_ in
|
|
let _v : (Parsetree.expression) = let _endpos = _endpos__7_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2106 "parsing/parser.mly"
|
|
( array_set ~loc:_sloc _1 _4 _7 )
|
|
# 11502 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _7;
|
|
MenhirLib.EngineTypes.startp = _startpos__7_;
|
|
MenhirLib.EngineTypes.endp = _endpos__7_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _6;
|
|
MenhirLib.EngineTypes.startp = _startpos__6_;
|
|
MenhirLib.EngineTypes.endp = _endpos__6_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _7 : (Parsetree.expression) = Obj.magic _7 in
|
|
let _6 : unit = Obj.magic _6 in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _4 : (Parsetree.expression) = Obj.magic _4 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.expression) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__7_ in
|
|
let _v : (Parsetree.expression) = let _endpos = _endpos__7_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2108 "parsing/parser.mly"
|
|
( string_set ~loc:_sloc _1 _4 _7 )
|
|
# 11572 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _7;
|
|
MenhirLib.EngineTypes.startp = _startpos__7_;
|
|
MenhirLib.EngineTypes.endp = _endpos__7_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _6;
|
|
MenhirLib.EngineTypes.startp = _startpos__6_;
|
|
MenhirLib.EngineTypes.endp = _endpos__6_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _7 : (Parsetree.expression) = Obj.magic _7 in
|
|
let _6 : unit = Obj.magic _6 in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _4 : (Parsetree.expression) = Obj.magic _4 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.expression) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__7_ in
|
|
let _v : (Parsetree.expression) = let _endpos = _endpos__7_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2110 "parsing/parser.mly"
|
|
( bigarray_set ~loc:_sloc _1 _4 _7 )
|
|
# 11642 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _7;
|
|
MenhirLib.EngineTypes.startp = _startpos__7_;
|
|
MenhirLib.EngineTypes.endp = _endpos__7_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _6;
|
|
MenhirLib.EngineTypes.startp = _startpos__6_;
|
|
MenhirLib.EngineTypes.endp = _endpos__6_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = es;
|
|
MenhirLib.EngineTypes.startp = _startpos_es_;
|
|
MenhirLib.EngineTypes.endp = _endpos_es_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _7 : (Parsetree.expression) = Obj.magic _7 in
|
|
let _6 : unit = Obj.magic _6 in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let es : (Parsetree.expression list) = Obj.magic es in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : (
|
|
# 623 "parsing/parser.mly"
|
|
(string)
|
|
# 11704 "parsing/parser.ml"
|
|
) = Obj.magic _2 in
|
|
let _1 : (Parsetree.expression) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__7_ in
|
|
let _v : (Parsetree.expression) = let _4 =
|
|
# 2536 "parsing/parser.mly"
|
|
( es )
|
|
# 11713 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__7_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2112 "parsing/parser.mly"
|
|
( dotop_set ~loc:_sloc lident bracket _2 _1 _4 _7 )
|
|
# 11721 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _7;
|
|
MenhirLib.EngineTypes.startp = _startpos__7_;
|
|
MenhirLib.EngineTypes.endp = _endpos__7_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _6;
|
|
MenhirLib.EngineTypes.startp = _startpos__6_;
|
|
MenhirLib.EngineTypes.endp = _endpos__6_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = es;
|
|
MenhirLib.EngineTypes.startp = _startpos_es_;
|
|
MenhirLib.EngineTypes.endp = _endpos_es_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _7 : (Parsetree.expression) = Obj.magic _7 in
|
|
let _6 : unit = Obj.magic _6 in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let es : (Parsetree.expression list) = Obj.magic es in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : (
|
|
# 623 "parsing/parser.mly"
|
|
(string)
|
|
# 11783 "parsing/parser.ml"
|
|
) = Obj.magic _2 in
|
|
let _1 : (Parsetree.expression) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__7_ in
|
|
let _v : (Parsetree.expression) = let _4 =
|
|
# 2536 "parsing/parser.mly"
|
|
( es )
|
|
# 11792 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__7_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2114 "parsing/parser.mly"
|
|
( dotop_set ~loc:_sloc lident paren _2 _1 _4 _7 )
|
|
# 11800 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _7;
|
|
MenhirLib.EngineTypes.startp = _startpos__7_;
|
|
MenhirLib.EngineTypes.endp = _endpos__7_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _6;
|
|
MenhirLib.EngineTypes.startp = _startpos__6_;
|
|
MenhirLib.EngineTypes.endp = _endpos__6_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = es;
|
|
MenhirLib.EngineTypes.startp = _startpos_es_;
|
|
MenhirLib.EngineTypes.endp = _endpos_es_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _7 : (Parsetree.expression) = Obj.magic _7 in
|
|
let _6 : unit = Obj.magic _6 in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let es : (Parsetree.expression list) = Obj.magic es in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : (
|
|
# 623 "parsing/parser.mly"
|
|
(string)
|
|
# 11862 "parsing/parser.ml"
|
|
) = Obj.magic _2 in
|
|
let _1 : (Parsetree.expression) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__7_ in
|
|
let _v : (Parsetree.expression) = let _4 =
|
|
# 2536 "parsing/parser.mly"
|
|
( es )
|
|
# 11871 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__7_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2116 "parsing/parser.mly"
|
|
( dotop_set ~loc:_sloc lident brace _2 _1 _4 _7 )
|
|
# 11879 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _9;
|
|
MenhirLib.EngineTypes.startp = _startpos__9_;
|
|
MenhirLib.EngineTypes.endp = _endpos__9_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _8;
|
|
MenhirLib.EngineTypes.startp = _startpos__8_;
|
|
MenhirLib.EngineTypes.endp = _endpos__8_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _7;
|
|
MenhirLib.EngineTypes.startp = _startpos__7_;
|
|
MenhirLib.EngineTypes.endp = _endpos__7_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = es;
|
|
MenhirLib.EngineTypes.startp = _startpos_es_;
|
|
MenhirLib.EngineTypes.endp = _endpos_es_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _9 : (Parsetree.expression) = Obj.magic _9 in
|
|
let _8 : unit = Obj.magic _8 in
|
|
let _7 : unit = Obj.magic _7 in
|
|
let es : (Parsetree.expression list) = Obj.magic es in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _4 : (
|
|
# 623 "parsing/parser.mly"
|
|
(string)
|
|
# 11953 "parsing/parser.ml"
|
|
) = Obj.magic _4 in
|
|
let _3 : (Longident.t) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.expression) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__9_ in
|
|
let _v : (Parsetree.expression) = let _6 =
|
|
# 2536 "parsing/parser.mly"
|
|
( es )
|
|
# 11964 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__9_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2119 "parsing/parser.mly"
|
|
( dotop_set ~loc:_sloc (ldot _3) bracket _4 _1 _6 _9 )
|
|
# 11972 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _9;
|
|
MenhirLib.EngineTypes.startp = _startpos__9_;
|
|
MenhirLib.EngineTypes.endp = _endpos__9_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _8;
|
|
MenhirLib.EngineTypes.startp = _startpos__8_;
|
|
MenhirLib.EngineTypes.endp = _endpos__8_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _7;
|
|
MenhirLib.EngineTypes.startp = _startpos__7_;
|
|
MenhirLib.EngineTypes.endp = _endpos__7_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = es;
|
|
MenhirLib.EngineTypes.startp = _startpos_es_;
|
|
MenhirLib.EngineTypes.endp = _endpos_es_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _9 : (Parsetree.expression) = Obj.magic _9 in
|
|
let _8 : unit = Obj.magic _8 in
|
|
let _7 : unit = Obj.magic _7 in
|
|
let es : (Parsetree.expression list) = Obj.magic es in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _4 : (
|
|
# 623 "parsing/parser.mly"
|
|
(string)
|
|
# 12046 "parsing/parser.ml"
|
|
) = Obj.magic _4 in
|
|
let _3 : (Longident.t) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.expression) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__9_ in
|
|
let _v : (Parsetree.expression) = let _6 =
|
|
# 2536 "parsing/parser.mly"
|
|
( es )
|
|
# 12057 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__9_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2122 "parsing/parser.mly"
|
|
( dotop_set ~loc:_sloc (ldot _3) paren _4 _1 _6 _9 )
|
|
# 12065 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _9;
|
|
MenhirLib.EngineTypes.startp = _startpos__9_;
|
|
MenhirLib.EngineTypes.endp = _endpos__9_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _8;
|
|
MenhirLib.EngineTypes.startp = _startpos__8_;
|
|
MenhirLib.EngineTypes.endp = _endpos__8_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _7;
|
|
MenhirLib.EngineTypes.startp = _startpos__7_;
|
|
MenhirLib.EngineTypes.endp = _endpos__7_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = es;
|
|
MenhirLib.EngineTypes.startp = _startpos_es_;
|
|
MenhirLib.EngineTypes.endp = _endpos_es_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _9 : (Parsetree.expression) = Obj.magic _9 in
|
|
let _8 : unit = Obj.magic _8 in
|
|
let _7 : unit = Obj.magic _7 in
|
|
let es : (Parsetree.expression list) = Obj.magic es in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _4 : (
|
|
# 623 "parsing/parser.mly"
|
|
(string)
|
|
# 12139 "parsing/parser.ml"
|
|
) = Obj.magic _4 in
|
|
let _3 : (Longident.t) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.expression) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__9_ in
|
|
let _v : (Parsetree.expression) = let _6 =
|
|
# 2536 "parsing/parser.mly"
|
|
( es )
|
|
# 12150 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__9_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2125 "parsing/parser.mly"
|
|
( dotop_set ~loc:_sloc (ldot _3) brace _4 _1 _6 _9 )
|
|
# 12158 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : (Parsetree.attribute) = Obj.magic _2 in
|
|
let _1 : (Parsetree.expression) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.expression) =
|
|
# 2127 "parsing/parser.mly"
|
|
( Exp.attr _1 _2 )
|
|
# 12190 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.expression) = let _loc__1_ = (_startpos__1_, _endpos__1_) in
|
|
|
|
# 2129 "parsing/parser.mly"
|
|
( not_expecting _loc__1_ "wildcard \"_\"" )
|
|
# 12216 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _endpos = _startpos in
|
|
let _v : (string Asttypes.loc option) =
|
|
# 3672 "parsing/parser.mly"
|
|
( None )
|
|
# 12234 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : (string Asttypes.loc) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (string Asttypes.loc option) =
|
|
# 3673 "parsing/parser.mly"
|
|
( Some _2 )
|
|
# 12266 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let _3 : (Parsetree.payload) = Obj.magic _3 in
|
|
let _2 : (string Asttypes.loc) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__4_ in
|
|
let _v : (Parsetree.extension) =
|
|
# 3683 "parsing/parser.mly"
|
|
( (_2, _3) )
|
|
# 12312 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined3 : (Parsetree.attributes) = Obj.magic _1_inlined3 in
|
|
let _1_inlined2 : (Longident.t) = Obj.magic _1_inlined2 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _1_inlined1 : (string) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined3_ in
|
|
let _v : (Parsetree.extension_constructor) = let attrs =
|
|
let _1 = _1_inlined3 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 12367 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_attrs_ = _endpos__1_inlined3_ in
|
|
let lid =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 12379 "parsing/parser.ml"
|
|
|
|
in
|
|
let cid =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined1_, _startpos__1_inlined1_, _1_inlined1) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 12390 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_attrs_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 3053 "parsing/parser.mly"
|
|
( let info = symbol_info _endpos in
|
|
Te.rebind cid lid ~attrs ~loc:(make_loc _sloc) ~info )
|
|
# 12400 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (Longident.t) = Obj.magic _1_inlined1 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _1 : (string) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined2_ in
|
|
let _v : (Parsetree.extension_constructor) = let attrs =
|
|
let _1 = _1_inlined2 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 12448 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_attrs_ = _endpos__1_inlined2_ in
|
|
let lid =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined1_, _startpos__1_inlined1_, _1_inlined1) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 12460 "parsing/parser.ml"
|
|
|
|
in
|
|
let cid =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 12470 "parsing/parser.ml"
|
|
|
|
in
|
|
let _startpos_cid_ = _startpos__1_ in
|
|
let _1 =
|
|
# 3492 "parsing/parser.mly"
|
|
( () )
|
|
# 12477 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos_attrs_ in
|
|
let _symbolstartpos = _startpos_cid_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 3053 "parsing/parser.mly"
|
|
( let info = symbol_info _endpos in
|
|
Te.rebind cid lid ~attrs ~loc:(make_loc _sloc) ~info )
|
|
# 12486 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let _3 : (Parsetree.payload) = Obj.magic _3 in
|
|
let _2 : (string Asttypes.loc) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__4_ in
|
|
let _v : (Parsetree.attribute) = let _endpos = _endpos__4_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 3660 "parsing/parser.mly"
|
|
( mark_symbol_docs _sloc;
|
|
Attr.mk ~loc:(make_loc _sloc) _2 _3 )
|
|
# 12536 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _endpos = _startpos in
|
|
let _v : ((Parsetree.core_type * Asttypes.variance) list) = let params =
|
|
# 1878 "parsing/parser.mly"
|
|
( [] )
|
|
# 12554 "parsing/parser.ml"
|
|
in
|
|
|
|
# 1703 "parsing/parser.mly"
|
|
( params )
|
|
# 12559 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let xs : ((Parsetree.core_type * Asttypes.variance) list) = Obj.magic xs in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : ((Parsetree.core_type * Asttypes.variance) list) = let params =
|
|
let params =
|
|
let xs =
|
|
# 253 "menhir/standard.mly"
|
|
( List.rev xs )
|
|
# 12600 "parsing/parser.ml"
|
|
in
|
|
|
|
# 926 "parsing/parser.mly"
|
|
( xs )
|
|
# 12605 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1880 "parsing/parser.mly"
|
|
( params )
|
|
# 12611 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1703 "parsing/parser.mly"
|
|
( params )
|
|
# 12617 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.expression) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.expression) =
|
|
# 2455 "parsing/parser.mly"
|
|
( _1 )
|
|
# 12642 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : (Parsetree.expression) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.core_type option * Parsetree.core_type option) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.expression) = let _endpos = _endpos__3_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2457 "parsing/parser.mly"
|
|
( mkexp_constraint ~loc:_sloc _3 _1 )
|
|
# 12684 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : (Parsetree.expression) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.expression) =
|
|
# 2481 "parsing/parser.mly"
|
|
( _2 )
|
|
# 12716 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _4 : (Parsetree.expression) = Obj.magic _4 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : (Parsetree.core_type) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__4_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
# 2483 "parsing/parser.mly"
|
|
( Pexp_constraint (_4, _2) )
|
|
# 12763 "parsing/parser.ml"
|
|
in
|
|
let _endpos__1_ = _endpos__4_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 12772 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2484 "parsing/parser.mly"
|
|
( _1 )
|
|
# 12778 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : (Parsetree.expression) = Obj.magic _2 in
|
|
let _1 : (Asttypes.arg_label * Parsetree.expression option * Parsetree.pattern) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.expression) = let _endpos = _endpos__2_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2487 "parsing/parser.mly"
|
|
(
|
|
let (l,o,p) = _1 in
|
|
ghexp ~loc:_sloc (Pexp_fun(l, o, p, _2))
|
|
)
|
|
# 12816 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : (Parsetree.expression) = Obj.magic _5 in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let xs : (string Asttypes.loc list) = Obj.magic xs in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.expression) = let _3 =
|
|
# 2364 "parsing/parser.mly"
|
|
( xs )
|
|
# 12869 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__5_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2492 "parsing/parser.mly"
|
|
( mk_newtypes ~loc:_sloc _3 _5 )
|
|
# 12877 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = ty;
|
|
MenhirLib.EngineTypes.startp = _startpos_ty_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ty_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let ty : (Parsetree.core_type) = Obj.magic ty in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_ty_ in
|
|
let _endpos = _endpos_ty_ in
|
|
let _v : (Parsetree.core_type) =
|
|
# 3165 "parsing/parser.mly"
|
|
( ty )
|
|
# 12902 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = codomain;
|
|
MenhirLib.EngineTypes.startp = _startpos_codomain_;
|
|
MenhirLib.EngineTypes.endp = _endpos_codomain_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = label;
|
|
MenhirLib.EngineTypes.startp = _startpos_label_;
|
|
MenhirLib.EngineTypes.endp = _endpos_label_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let codomain : (Parsetree.core_type) = Obj.magic codomain in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _1 : (Parsetree.core_type) = Obj.magic _1 in
|
|
let label : (string) = Obj.magic label in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_label_ in
|
|
let _endpos = _endpos_codomain_ in
|
|
let _v : (Parsetree.core_type) = let _1 =
|
|
let _1 =
|
|
let domain =
|
|
# 790 "parsing/parser.mly"
|
|
( extra_rhs_core_type _1 ~pos:_endpos__1_ )
|
|
# 12950 "parsing/parser.ml"
|
|
in
|
|
let label =
|
|
# 3177 "parsing/parser.mly"
|
|
( Optional label )
|
|
# 12955 "parsing/parser.ml"
|
|
in
|
|
|
|
# 3171 "parsing/parser.mly"
|
|
( Ptyp_arrow(label, domain, codomain) )
|
|
# 12960 "parsing/parser.ml"
|
|
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_codomain_, _startpos_label_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 829 "parsing/parser.mly"
|
|
( mktyp ~loc:_sloc _1 )
|
|
# 12970 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3173 "parsing/parser.mly"
|
|
( _1 )
|
|
# 12976 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = codomain;
|
|
MenhirLib.EngineTypes.startp = _startpos_codomain_;
|
|
MenhirLib.EngineTypes.endp = _endpos_codomain_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = label;
|
|
MenhirLib.EngineTypes.startp = _startpos_label_;
|
|
MenhirLib.EngineTypes.endp = _endpos_label_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let codomain : (Parsetree.core_type) = Obj.magic codomain in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _1 : (Parsetree.core_type) = Obj.magic _1 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let label : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 13025 "parsing/parser.ml"
|
|
) = Obj.magic label in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_label_ in
|
|
let _endpos = _endpos_codomain_ in
|
|
let _v : (Parsetree.core_type) = let _1 =
|
|
let _1 =
|
|
let domain =
|
|
# 790 "parsing/parser.mly"
|
|
( extra_rhs_core_type _1 ~pos:_endpos__1_ )
|
|
# 13035 "parsing/parser.ml"
|
|
in
|
|
let label =
|
|
# 3179 "parsing/parser.mly"
|
|
( Labelled label )
|
|
# 13040 "parsing/parser.ml"
|
|
in
|
|
|
|
# 3171 "parsing/parser.mly"
|
|
( Ptyp_arrow(label, domain, codomain) )
|
|
# 13045 "parsing/parser.ml"
|
|
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_codomain_, _startpos_label_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 829 "parsing/parser.mly"
|
|
( mktyp ~loc:_sloc _1 )
|
|
# 13055 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3173 "parsing/parser.mly"
|
|
( _1 )
|
|
# 13061 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = codomain;
|
|
MenhirLib.EngineTypes.startp = _startpos_codomain_;
|
|
MenhirLib.EngineTypes.endp = _endpos_codomain_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let codomain : (Parsetree.core_type) = Obj.magic codomain in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _1 : (Parsetree.core_type) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_codomain_ in
|
|
let _v : (Parsetree.core_type) = let _1 =
|
|
let _1 =
|
|
let domain =
|
|
# 790 "parsing/parser.mly"
|
|
( extra_rhs_core_type _1 ~pos:_endpos__1_ )
|
|
# 13102 "parsing/parser.ml"
|
|
in
|
|
let label =
|
|
# 3181 "parsing/parser.mly"
|
|
( Nolabel )
|
|
# 13107 "parsing/parser.ml"
|
|
in
|
|
|
|
# 3171 "parsing/parser.mly"
|
|
( Ptyp_arrow(label, domain, codomain) )
|
|
# 13112 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos_codomain_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 829 "parsing/parser.mly"
|
|
( mktyp ~loc:_sloc _1 )
|
|
# 13122 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3173 "parsing/parser.mly"
|
|
( _1 )
|
|
# 13128 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.functor_parameter) =
|
|
# 1136 "parsing/parser.mly"
|
|
( Unit )
|
|
# 13160 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = mty;
|
|
MenhirLib.EngineTypes.startp = _startpos_mty_;
|
|
MenhirLib.EngineTypes.endp = _endpos_mty_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let mty : (Parsetree.module_type) = Obj.magic mty in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _1_inlined1 : (string option) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.functor_parameter) = let x =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined1_, _startpos__1_inlined1_, _1_inlined1) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 13218 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1139 "parsing/parser.mly"
|
|
( Named (x, mty) )
|
|
# 13224 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _endpos = _startpos in
|
|
let _v : (Parsetree.constructor_arguments * Parsetree.core_type option) =
|
|
# 2973 "parsing/parser.mly"
|
|
( (Pcstr_tuple [],None) )
|
|
# 13242 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : (Parsetree.constructor_arguments) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.constructor_arguments * Parsetree.core_type option) =
|
|
# 2974 "parsing/parser.mly"
|
|
( (_2,None) )
|
|
# 13274 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _4 : (Parsetree.core_type) = Obj.magic _4 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : (Parsetree.constructor_arguments) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__4_ in
|
|
let _v : (Parsetree.constructor_arguments * Parsetree.core_type option) =
|
|
# 2976 "parsing/parser.mly"
|
|
( (_2,Some _4) )
|
|
# 13320 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : (Parsetree.core_type) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.constructor_arguments * Parsetree.core_type option) =
|
|
# 2978 "parsing/parser.mly"
|
|
( (Pcstr_tuple [],Some _2) )
|
|
# 13352 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = args_res;
|
|
MenhirLib.EngineTypes.startp = _startpos_args_res_;
|
|
MenhirLib.EngineTypes.endp = _endpos_args_res_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let args_res : (Parsetree.constructor_arguments * Parsetree.core_type option) = Obj.magic args_res in
|
|
let _1_inlined1 : (string) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined2_ in
|
|
let _v : (Ast_helper.str * Parsetree.constructor_arguments *
|
|
Parsetree.core_type option * Parsetree.attributes * Location.t *
|
|
Docstrings.info) = let attrs =
|
|
let _1 = _1_inlined2 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 13402 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_attrs_ = _endpos__1_inlined2_ in
|
|
let cid =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined1_, _startpos__1_inlined1_, _1_inlined1) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 13414 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_attrs_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2921 "parsing/parser.mly"
|
|
(
|
|
let args, res = args_res in
|
|
let info = symbol_info _endpos in
|
|
let loc = make_loc _sloc in
|
|
cid, args, res, attrs, loc, info
|
|
)
|
|
# 13428 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = args_res;
|
|
MenhirLib.EngineTypes.startp = _startpos_args_res_;
|
|
MenhirLib.EngineTypes.endp = _endpos_args_res_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let args_res : (Parsetree.constructor_arguments * Parsetree.core_type option) = Obj.magic args_res in
|
|
let _1 : (string) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined1_ in
|
|
let _v : (Ast_helper.str * Parsetree.constructor_arguments *
|
|
Parsetree.core_type option * Parsetree.attributes * Location.t *
|
|
Docstrings.info) = let attrs =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 13471 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_attrs_ = _endpos__1_inlined1_ in
|
|
let cid =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 13482 "parsing/parser.ml"
|
|
|
|
in
|
|
let _startpos_cid_ = _startpos__1_ in
|
|
let _1 =
|
|
# 3492 "parsing/parser.mly"
|
|
( () )
|
|
# 13489 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos_attrs_ in
|
|
let _symbolstartpos = _startpos_cid_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2921 "parsing/parser.mly"
|
|
(
|
|
let args, res = args_res in
|
|
let info = symbol_info _endpos in
|
|
let loc = make_loc _sloc in
|
|
cid, args, res, attrs, loc, info
|
|
)
|
|
# 13502 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined4;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = params;
|
|
MenhirLib.EngineTypes.startp = _startpos_params_;
|
|
MenhirLib.EngineTypes.endp = _endpos_params_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = ext;
|
|
MenhirLib.EngineTypes.startp = _startpos_ext_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ext_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined4 : (Parsetree.attributes) = Obj.magic _1_inlined4 in
|
|
let xs : ((Parsetree.core_type * Parsetree.core_type * Ast_helper.loc) list) = Obj.magic xs in
|
|
let _2 : (Parsetree.type_kind * Asttypes.private_flag * Parsetree.core_type option) = Obj.magic _2 in
|
|
let _1_inlined3 : unit = Obj.magic _1_inlined3 in
|
|
let _1_inlined2 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 13575 "parsing/parser.ml"
|
|
) = Obj.magic _1_inlined2 in
|
|
let params : ((Parsetree.core_type * Asttypes.variance) list) = Obj.magic params in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let ext : (string Asttypes.loc option) = Obj.magic ext in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined4_ in
|
|
let _v : ((Asttypes.rec_flag * string Asttypes.loc option) *
|
|
Parsetree.type_declaration) = let attrs2 =
|
|
let _1 = _1_inlined4 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 13590 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_attrs2_ = _endpos__1_inlined4_ in
|
|
let cstrs =
|
|
let _1 =
|
|
let xs =
|
|
# 253 "menhir/standard.mly"
|
|
( List.rev xs )
|
|
# 13599 "parsing/parser.ml"
|
|
in
|
|
|
|
# 876 "parsing/parser.mly"
|
|
( xs )
|
|
# 13604 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2837 "parsing/parser.mly"
|
|
( _1 )
|
|
# 13610 "parsing/parser.ml"
|
|
|
|
in
|
|
let kind_priv_manifest =
|
|
let _1 = _1_inlined3 in
|
|
|
|
# 2872 "parsing/parser.mly"
|
|
( _2 )
|
|
# 13618 "parsing/parser.ml"
|
|
|
|
in
|
|
let id =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 13629 "parsing/parser.ml"
|
|
|
|
in
|
|
let flag =
|
|
# 3512 "parsing/parser.mly"
|
|
( Recursive )
|
|
# 13635 "parsing/parser.ml"
|
|
in
|
|
let attrs1 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 13642 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_attrs2_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2809 "parsing/parser.mly"
|
|
(
|
|
let (kind, priv, manifest) = kind_priv_manifest in
|
|
let docs = symbol_docs _sloc in
|
|
let attrs = attrs1 @ attrs2 in
|
|
let loc = make_loc _sloc in
|
|
(flag, ext),
|
|
Type.mk id ~params ~cstrs ~kind ~priv ?manifest ~attrs ~loc ~docs
|
|
)
|
|
# 13658 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined5;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined4;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = params;
|
|
MenhirLib.EngineTypes.startp = _startpos_params_;
|
|
MenhirLib.EngineTypes.endp = _endpos_params_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = ext;
|
|
MenhirLib.EngineTypes.startp = _startpos_ext_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ext_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined5 : (Parsetree.attributes) = Obj.magic _1_inlined5 in
|
|
let xs : ((Parsetree.core_type * Parsetree.core_type * Ast_helper.loc) list) = Obj.magic xs in
|
|
let _2 : (Parsetree.type_kind * Asttypes.private_flag * Parsetree.core_type option) = Obj.magic _2 in
|
|
let _1_inlined4 : unit = Obj.magic _1_inlined4 in
|
|
let _1_inlined3 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 13737 "parsing/parser.ml"
|
|
) = Obj.magic _1_inlined3 in
|
|
let params : ((Parsetree.core_type * Asttypes.variance) list) = Obj.magic params in
|
|
let _1_inlined2 : unit = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let ext : (string Asttypes.loc option) = Obj.magic ext in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined5_ in
|
|
let _v : ((Asttypes.rec_flag * string Asttypes.loc option) *
|
|
Parsetree.type_declaration) = let attrs2 =
|
|
let _1 = _1_inlined5 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 13753 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_attrs2_ = _endpos__1_inlined5_ in
|
|
let cstrs =
|
|
let _1 =
|
|
let xs =
|
|
# 253 "menhir/standard.mly"
|
|
( List.rev xs )
|
|
# 13762 "parsing/parser.ml"
|
|
in
|
|
|
|
# 876 "parsing/parser.mly"
|
|
( xs )
|
|
# 13767 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2837 "parsing/parser.mly"
|
|
( _1 )
|
|
# 13773 "parsing/parser.ml"
|
|
|
|
in
|
|
let kind_priv_manifest =
|
|
let _1 = _1_inlined4 in
|
|
|
|
# 2872 "parsing/parser.mly"
|
|
( _2 )
|
|
# 13781 "parsing/parser.ml"
|
|
|
|
in
|
|
let id =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined3_, _startpos__1_inlined3_, _1_inlined3) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 13792 "parsing/parser.ml"
|
|
|
|
in
|
|
let flag =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let _endpos = _endpos__1_ in
|
|
let _startpos = _startpos__1_ in
|
|
let _loc = (_startpos, _endpos) in
|
|
|
|
# 3513 "parsing/parser.mly"
|
|
( not_expecting _loc "nonrec flag" )
|
|
# 13803 "parsing/parser.ml"
|
|
|
|
in
|
|
let attrs1 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 13811 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_attrs2_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2809 "parsing/parser.mly"
|
|
(
|
|
let (kind, priv, manifest) = kind_priv_manifest in
|
|
let docs = symbol_docs _sloc in
|
|
let attrs = attrs1 @ attrs2 in
|
|
let loc = make_loc _sloc in
|
|
(flag, ext),
|
|
Type.mk id ~params ~cstrs ~kind ~priv ?manifest ~attrs ~loc ~docs
|
|
)
|
|
# 13827 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = kind_priv_manifest;
|
|
MenhirLib.EngineTypes.startp = _startpos_kind_priv_manifest_;
|
|
MenhirLib.EngineTypes.endp = _endpos_kind_priv_manifest_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = params;
|
|
MenhirLib.EngineTypes.startp = _startpos_params_;
|
|
MenhirLib.EngineTypes.endp = _endpos_params_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = ext;
|
|
MenhirLib.EngineTypes.startp = _startpos_ext_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ext_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined3 : (Parsetree.attributes) = Obj.magic _1_inlined3 in
|
|
let xs : ((Parsetree.core_type * Parsetree.core_type * Ast_helper.loc) list) = Obj.magic xs in
|
|
let kind_priv_manifest : (Parsetree.type_kind * Asttypes.private_flag * Parsetree.core_type option) = Obj.magic kind_priv_manifest in
|
|
let _1_inlined2 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 13893 "parsing/parser.ml"
|
|
) = Obj.magic _1_inlined2 in
|
|
let params : ((Parsetree.core_type * Asttypes.variance) list) = Obj.magic params in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let ext : (string Asttypes.loc option) = Obj.magic ext in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined3_ in
|
|
let _v : ((Asttypes.rec_flag * string Asttypes.loc option) *
|
|
Parsetree.type_declaration) = let attrs2 =
|
|
let _1 = _1_inlined3 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 13908 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_attrs2_ = _endpos__1_inlined3_ in
|
|
let cstrs =
|
|
let _1 =
|
|
let xs =
|
|
# 253 "menhir/standard.mly"
|
|
( List.rev xs )
|
|
# 13917 "parsing/parser.ml"
|
|
in
|
|
|
|
# 876 "parsing/parser.mly"
|
|
( xs )
|
|
# 13922 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2837 "parsing/parser.mly"
|
|
( _1 )
|
|
# 13928 "parsing/parser.ml"
|
|
|
|
in
|
|
let id =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 13939 "parsing/parser.ml"
|
|
|
|
in
|
|
let flag =
|
|
# 3508 "parsing/parser.mly"
|
|
( Recursive )
|
|
# 13945 "parsing/parser.ml"
|
|
in
|
|
let attrs1 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 13952 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_attrs2_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2809 "parsing/parser.mly"
|
|
(
|
|
let (kind, priv, manifest) = kind_priv_manifest in
|
|
let docs = symbol_docs _sloc in
|
|
let attrs = attrs1 @ attrs2 in
|
|
let loc = make_loc _sloc in
|
|
(flag, ext),
|
|
Type.mk id ~params ~cstrs ~kind ~priv ?manifest ~attrs ~loc ~docs
|
|
)
|
|
# 13968 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined4;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = kind_priv_manifest;
|
|
MenhirLib.EngineTypes.startp = _startpos_kind_priv_manifest_;
|
|
MenhirLib.EngineTypes.endp = _endpos_kind_priv_manifest_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = params;
|
|
MenhirLib.EngineTypes.startp = _startpos_params_;
|
|
MenhirLib.EngineTypes.endp = _endpos_params_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = ext;
|
|
MenhirLib.EngineTypes.startp = _startpos_ext_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ext_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined4 : (Parsetree.attributes) = Obj.magic _1_inlined4 in
|
|
let xs : ((Parsetree.core_type * Parsetree.core_type * Ast_helper.loc) list) = Obj.magic xs in
|
|
let kind_priv_manifest : (Parsetree.type_kind * Asttypes.private_flag * Parsetree.core_type option) = Obj.magic kind_priv_manifest in
|
|
let _1_inlined3 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 14040 "parsing/parser.ml"
|
|
) = Obj.magic _1_inlined3 in
|
|
let params : ((Parsetree.core_type * Asttypes.variance) list) = Obj.magic params in
|
|
let _1_inlined2 : unit = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let ext : (string Asttypes.loc option) = Obj.magic ext in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined4_ in
|
|
let _v : ((Asttypes.rec_flag * string Asttypes.loc option) *
|
|
Parsetree.type_declaration) = let attrs2 =
|
|
let _1 = _1_inlined4 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 14056 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_attrs2_ = _endpos__1_inlined4_ in
|
|
let cstrs =
|
|
let _1 =
|
|
let xs =
|
|
# 253 "menhir/standard.mly"
|
|
( List.rev xs )
|
|
# 14065 "parsing/parser.ml"
|
|
in
|
|
|
|
# 876 "parsing/parser.mly"
|
|
( xs )
|
|
# 14070 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2837 "parsing/parser.mly"
|
|
( _1 )
|
|
# 14076 "parsing/parser.ml"
|
|
|
|
in
|
|
let id =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined3_, _startpos__1_inlined3_, _1_inlined3) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 14087 "parsing/parser.ml"
|
|
|
|
in
|
|
let flag =
|
|
let _1 = _1_inlined2 in
|
|
|
|
# 3509 "parsing/parser.mly"
|
|
( Nonrecursive )
|
|
# 14095 "parsing/parser.ml"
|
|
|
|
in
|
|
let attrs1 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 14103 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_attrs2_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2809 "parsing/parser.mly"
|
|
(
|
|
let (kind, priv, manifest) = kind_priv_manifest in
|
|
let docs = symbol_docs _sloc in
|
|
let attrs = attrs1 @ attrs2 in
|
|
let loc = make_loc _sloc in
|
|
(flag, ext),
|
|
Type.mk id ~params ~cstrs ~kind ~priv ?manifest ~attrs ~loc ~docs
|
|
)
|
|
# 14119 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (
|
|
# 688 "parsing/parser.mly"
|
|
(string)
|
|
# 14140 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Asttypes.label) =
|
|
# 3365 "parsing/parser.mly"
|
|
( _1 )
|
|
# 14148 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 14169 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Asttypes.label) =
|
|
# 3366 "parsing/parser.mly"
|
|
( _1 )
|
|
# 14177 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.structure) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (
|
|
# 768 "parsing/parser.mly"
|
|
(Parsetree.structure)
|
|
# 14209 "parsing/parser.ml"
|
|
) =
|
|
# 1047 "parsing/parser.mly"
|
|
( _1 )
|
|
# 14213 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _endpos = _startpos in
|
|
let _v : (string) =
|
|
# 3412 "parsing/parser.mly"
|
|
( "" )
|
|
# 14231 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (string) =
|
|
# 3413 "parsing/parser.mly"
|
|
( ";.." )
|
|
# 14263 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.signature) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (
|
|
# 770 "parsing/parser.mly"
|
|
(Parsetree.signature)
|
|
# 14295 "parsing/parser.ml"
|
|
) =
|
|
# 1053 "parsing/parser.mly"
|
|
( _1 )
|
|
# 14299 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let _3 : (Parsetree.payload) = Obj.magic _3 in
|
|
let _2 : (string Asttypes.loc) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__4_ in
|
|
let _v : (Parsetree.extension) =
|
|
# 3686 "parsing/parser.mly"
|
|
( (_2, _3) )
|
|
# 14345 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined3 : (Parsetree.attributes) = Obj.magic _1_inlined3 in
|
|
let _1_inlined2 : (Parsetree.core_type) = Obj.magic _1_inlined2 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _1_inlined1 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 14393 "parsing/parser.ml"
|
|
) = Obj.magic _1_inlined1 in
|
|
let _1 : (Asttypes.mutable_flag) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined3_ in
|
|
let _v : (Parsetree.label_declaration) = let _5 =
|
|
let _1 = _1_inlined3 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 14404 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__5_ = _endpos__1_inlined3_ in
|
|
let _4 =
|
|
let _1 = _1_inlined2 in
|
|
|
|
# 3118 "parsing/parser.mly"
|
|
( _1 )
|
|
# 14413 "parsing/parser.ml"
|
|
|
|
in
|
|
let _2 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined1_, _startpos__1_inlined1_, _1_inlined1) in
|
|
let _1 =
|
|
# 3343 "parsing/parser.mly"
|
|
( _1 )
|
|
# 14421 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 14429 "parsing/parser.ml"
|
|
|
|
in
|
|
let _startpos__2_ = _startpos__1_inlined1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _symbolstartpos = if _startpos__1_ != _endpos__1_ then
|
|
_startpos__1_
|
|
else
|
|
_startpos__2_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2995 "parsing/parser.mly"
|
|
( let info = symbol_info _endpos in
|
|
Type.field _2 _4 ~mut:_1 ~attrs:_5 ~loc:(make_loc _sloc) ~info )
|
|
# 14443 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined4;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _6;
|
|
MenhirLib.EngineTypes.startp = _startpos__6_;
|
|
MenhirLib.EngineTypes.endp = _endpos__6_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined4 : (Parsetree.attributes) = Obj.magic _1_inlined4 in
|
|
let _6 : unit = Obj.magic _6 in
|
|
let _1_inlined3 : (Parsetree.attributes) = Obj.magic _1_inlined3 in
|
|
let _1_inlined2 : (Parsetree.core_type) = Obj.magic _1_inlined2 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _1_inlined1 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 14505 "parsing/parser.ml"
|
|
) = Obj.magic _1_inlined1 in
|
|
let _1 : (Asttypes.mutable_flag) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined4_ in
|
|
let _v : (Parsetree.label_declaration) = let _7 =
|
|
let _1 = _1_inlined4 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 14516 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__7_ = _endpos__1_inlined4_ in
|
|
let _5 =
|
|
let _1 = _1_inlined3 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 14525 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__5_ = _endpos__1_inlined3_ in
|
|
let _4 =
|
|
let _1 = _1_inlined2 in
|
|
|
|
# 3118 "parsing/parser.mly"
|
|
( _1 )
|
|
# 14534 "parsing/parser.ml"
|
|
|
|
in
|
|
let _2 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined1_, _startpos__1_inlined1_, _1_inlined1) in
|
|
let _1 =
|
|
# 3343 "parsing/parser.mly"
|
|
( _1 )
|
|
# 14542 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 14550 "parsing/parser.ml"
|
|
|
|
in
|
|
let _startpos__2_ = _startpos__1_inlined1_ in
|
|
let _endpos = _endpos__7_ in
|
|
let _symbolstartpos = if _startpos__1_ != _endpos__1_ then
|
|
_startpos__1_
|
|
else
|
|
_startpos__2_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 3000 "parsing/parser.mly"
|
|
( let info =
|
|
match rhs_info _endpos__5_ with
|
|
| Some _ as info_before_semi -> info_before_semi
|
|
| None -> symbol_info _endpos
|
|
in
|
|
Type.field _2 _4 ~mut:_1 ~attrs:(_5 @ _7) ~loc:(make_loc _sloc) ~info )
|
|
# 14568 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.label_declaration) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.label_declaration list) =
|
|
# 2989 "parsing/parser.mly"
|
|
( [_1] )
|
|
# 14593 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.label_declaration) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.label_declaration list) =
|
|
# 2990 "parsing/parser.mly"
|
|
( [_1] )
|
|
# 14618 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : (Parsetree.label_declaration list) = Obj.magic _2 in
|
|
let _1 : (Parsetree.label_declaration) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.label_declaration list) =
|
|
# 2991 "parsing/parser.mly"
|
|
( _1 :: _2 )
|
|
# 14650 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 14671 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string * Parsetree.pattern) = let x =
|
|
let _1 =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 14684 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2073 "parsing/parser.mly"
|
|
( (_1.Location.txt, mkpat ~loc:_sloc (Ppat_var _1)) )
|
|
# 14693 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2065 "parsing/parser.mly"
|
|
( x )
|
|
# 14699 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = cty;
|
|
MenhirLib.EngineTypes.startp = _startpos_cty_;
|
|
MenhirLib.EngineTypes.endp = _endpos_cty_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let cty : (Parsetree.core_type) = Obj.magic cty in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 14734 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_cty_ in
|
|
let _v : (string * Parsetree.pattern) = let x =
|
|
let _1 =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 14747 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2073 "parsing/parser.mly"
|
|
( (_1.Location.txt, mkpat ~loc:_sloc (Ppat_var _1)) )
|
|
# 14756 "parsing/parser.ml"
|
|
|
|
in
|
|
let _startpos_x_ = _startpos__1_ in
|
|
let _endpos = _endpos_cty_ in
|
|
let _symbolstartpos = _startpos_x_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2067 "parsing/parser.mly"
|
|
( let lab, pat = x in
|
|
lab,
|
|
mkpat ~loc:_sloc (Ppat_constraint (pat, cty)) )
|
|
# 14768 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 14789 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Longident.t) =
|
|
# 3438 "parsing/parser.mly"
|
|
( Lident _1 )
|
|
# 14797 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 14830 "parsing/parser.ml"
|
|
) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Longident.t) =
|
|
# 3439 "parsing/parser.mly"
|
|
( Ldot(_1, _3) )
|
|
# 14840 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.expression) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Asttypes.arg_label * Parsetree.expression) =
|
|
# 2350 "parsing/parser.mly"
|
|
( (Nolabel, _1) )
|
|
# 14865 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : (Parsetree.expression) = Obj.magic _2 in
|
|
let _1 : (
|
|
# 629 "parsing/parser.mly"
|
|
(string)
|
|
# 14893 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Asttypes.arg_label * Parsetree.expression) =
|
|
# 2352 "parsing/parser.mly"
|
|
( (Labelled _1, _2) )
|
|
# 14901 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = label;
|
|
MenhirLib.EngineTypes.startp = _startpos_label_;
|
|
MenhirLib.EngineTypes.endp = _endpos_label_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let label : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 14928 "parsing/parser.ml"
|
|
) = Obj.magic label in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_label_ in
|
|
let _v : (Asttypes.arg_label * Parsetree.expression) = let _loc_label_ = (_startpos_label_, _endpos_label_) in
|
|
|
|
# 2354 "parsing/parser.mly"
|
|
( let loc = _loc_label_ in
|
|
(Labelled label, mkexpvar ~loc label) )
|
|
# 14939 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = label;
|
|
MenhirLib.EngineTypes.startp = _startpos_label_;
|
|
MenhirLib.EngineTypes.endp = _endpos_label_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let label : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 14966 "parsing/parser.ml"
|
|
) = Obj.magic label in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_label_ in
|
|
let _v : (Asttypes.arg_label * Parsetree.expression) = let _loc_label_ = (_startpos_label_, _endpos_label_) in
|
|
|
|
# 2357 "parsing/parser.mly"
|
|
( let loc = _loc_label_ in
|
|
(Optional label, mkexpvar ~loc label) )
|
|
# 14977 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : (Parsetree.expression) = Obj.magic _2 in
|
|
let _1 : (
|
|
# 659 "parsing/parser.mly"
|
|
(string)
|
|
# 15005 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Asttypes.arg_label * Parsetree.expression) =
|
|
# 2360 "parsing/parser.mly"
|
|
( (Optional _1, _2) )
|
|
# 15013 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _1_inlined1 : (Parsetree.expression option) = Obj.magic _1_inlined1 in
|
|
let _3 : (string * Parsetree.pattern) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Asttypes.arg_label * Parsetree.expression option * Parsetree.pattern) = let _4 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 2061 "parsing/parser.mly"
|
|
( _1 )
|
|
# 15068 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2035 "parsing/parser.mly"
|
|
( (Optional (fst _3), _4, snd _3) )
|
|
# 15074 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined1 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 15101 "parsing/parser.ml"
|
|
) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined1_ in
|
|
let _v : (Asttypes.arg_label * Parsetree.expression option * Parsetree.pattern) = let _2 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined1_, _startpos__1_inlined1_, _1_inlined1) in
|
|
let _1 =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 15116 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2073 "parsing/parser.mly"
|
|
( (_1.Location.txt, mkpat ~loc:_sloc (Ppat_var _1)) )
|
|
# 15125 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2037 "parsing/parser.mly"
|
|
( (Optional (fst _2), None, snd _2) )
|
|
# 15131 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _1_inlined1 : (Parsetree.expression option) = Obj.magic _1_inlined1 in
|
|
let _3 : (Parsetree.pattern) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (
|
|
# 659 "parsing/parser.mly"
|
|
(string)
|
|
# 15180 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Asttypes.arg_label * Parsetree.expression option * Parsetree.pattern) = let _4 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 2061 "parsing/parser.mly"
|
|
( _1 )
|
|
# 15190 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2039 "parsing/parser.mly"
|
|
( (Optional _1, _4, _3) )
|
|
# 15196 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : (Parsetree.pattern) = Obj.magic _2 in
|
|
let _1 : (
|
|
# 659 "parsing/parser.mly"
|
|
(string)
|
|
# 15224 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Asttypes.arg_label * Parsetree.expression option * Parsetree.pattern) =
|
|
# 2041 "parsing/parser.mly"
|
|
( (Optional _1, None, _2) )
|
|
# 15232 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let _3 : (string * Parsetree.pattern) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__4_ in
|
|
let _v : (Asttypes.arg_label * Parsetree.expression option * Parsetree.pattern) =
|
|
# 2043 "parsing/parser.mly"
|
|
( (Labelled (fst _3), None, snd _3) )
|
|
# 15278 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined1 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 15305 "parsing/parser.ml"
|
|
) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined1_ in
|
|
let _v : (Asttypes.arg_label * Parsetree.expression option * Parsetree.pattern) = let _2 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined1_, _startpos__1_inlined1_, _1_inlined1) in
|
|
let _1 =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 15320 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2073 "parsing/parser.mly"
|
|
( (_1.Location.txt, mkpat ~loc:_sloc (Ppat_var _1)) )
|
|
# 15329 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2045 "parsing/parser.mly"
|
|
( (Labelled (fst _2), None, snd _2) )
|
|
# 15335 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : (Parsetree.pattern) = Obj.magic _2 in
|
|
let _1 : (
|
|
# 629 "parsing/parser.mly"
|
|
(string)
|
|
# 15363 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Asttypes.arg_label * Parsetree.expression option * Parsetree.pattern) =
|
|
# 2047 "parsing/parser.mly"
|
|
( (Labelled _1, None, _2) )
|
|
# 15371 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.pattern) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Asttypes.arg_label * Parsetree.expression option * Parsetree.pattern) =
|
|
# 2049 "parsing/parser.mly"
|
|
( (Nolabel, None, _1) )
|
|
# 15396 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : (Parsetree.expression) = Obj.magic _2 in
|
|
let _1 : (string) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.pattern * Parsetree.expression) = let _1 =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2367 "parsing/parser.mly"
|
|
( mkpatvar ~loc:_sloc _1 )
|
|
# 15432 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2371 "parsing/parser.mly"
|
|
( (_1, _2) )
|
|
# 15438 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _4 : (Parsetree.expression) = Obj.magic _4 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : (Parsetree.core_type option * Parsetree.core_type option) = Obj.magic _2 in
|
|
let _1 : (string) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__4_ in
|
|
let _v : (Parsetree.pattern * Parsetree.expression) = let _1 =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2367 "parsing/parser.mly"
|
|
( mkpatvar ~loc:_sloc _1 )
|
|
# 15488 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__4_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2373 "parsing/parser.mly"
|
|
( let v = _1 in (* PR#7344 *)
|
|
let t =
|
|
match _2 with
|
|
Some t, None -> t
|
|
| _, Some t -> t
|
|
| _ -> assert false
|
|
in
|
|
let loc = Location.(t.ptyp_loc.loc_start, t.ptyp_loc.loc_end) in
|
|
let typ = ghtyp ~loc (Ptyp_poly([],t)) in
|
|
let patloc = (_startpos__1_, _endpos__2_) in
|
|
(ghpat ~loc:patloc (Ppat_constraint(v, typ)),
|
|
mkexp_constraint ~loc:_sloc _4 _2) )
|
|
# 15508 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _7;
|
|
MenhirLib.EngineTypes.startp = _startpos__7_;
|
|
MenhirLib.EngineTypes.endp = _endpos__7_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _6;
|
|
MenhirLib.EngineTypes.startp = _startpos__6_;
|
|
MenhirLib.EngineTypes.endp = _endpos__6_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _7 : (Parsetree.expression) = Obj.magic _7 in
|
|
let _6 : unit = Obj.magic _6 in
|
|
let _5 : (Parsetree.core_type) = Obj.magic _5 in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let xs : (Asttypes.label Asttypes.loc list) = Obj.magic xs in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (string) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__7_ in
|
|
let _v : (Parsetree.pattern * Parsetree.expression) = let _3 =
|
|
let _1 =
|
|
let xs =
|
|
# 253 "menhir/standard.mly"
|
|
( List.rev xs )
|
|
# 15577 "parsing/parser.ml"
|
|
in
|
|
|
|
# 894 "parsing/parser.mly"
|
|
( xs )
|
|
# 15582 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3100 "parsing/parser.mly"
|
|
( _1 )
|
|
# 15588 "parsing/parser.ml"
|
|
|
|
in
|
|
let _startpos__3_ = _startpos_xs_ in
|
|
let _1 =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2367 "parsing/parser.mly"
|
|
( mkpatvar ~loc:_sloc _1 )
|
|
# 15599 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2389 "parsing/parser.mly"
|
|
( let typloc = (_startpos__3_, _endpos__5_) in
|
|
let patloc = (_startpos__1_, _endpos__5_) in
|
|
(ghpat ~loc:patloc
|
|
(Ppat_constraint(_1, ghtyp ~loc:typloc (Ptyp_poly(_3,_5)))),
|
|
_7) )
|
|
# 15609 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _8;
|
|
MenhirLib.EngineTypes.startp = _startpos__8_;
|
|
MenhirLib.EngineTypes.endp = _endpos__8_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _7;
|
|
MenhirLib.EngineTypes.startp = _startpos__7_;
|
|
MenhirLib.EngineTypes.endp = _endpos__7_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _6;
|
|
MenhirLib.EngineTypes.startp = _startpos__6_;
|
|
MenhirLib.EngineTypes.endp = _endpos__6_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _8 : (Parsetree.expression) = Obj.magic _8 in
|
|
let _7 : unit = Obj.magic _7 in
|
|
let _6 : (Parsetree.core_type) = Obj.magic _6 in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let xs : (string Asttypes.loc list) = Obj.magic xs in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (string) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__8_ in
|
|
let _v : (Parsetree.pattern * Parsetree.expression) = let _4 =
|
|
# 2364 "parsing/parser.mly"
|
|
( xs )
|
|
# 15683 "parsing/parser.ml"
|
|
in
|
|
let _1 =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2367 "parsing/parser.mly"
|
|
( mkpatvar ~loc:_sloc _1 )
|
|
# 15692 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__8_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2395 "parsing/parser.mly"
|
|
( let exp, poly =
|
|
wrap_type_annotation ~loc:_sloc _4 _6 _8 in
|
|
let loc = (_startpos__1_, _endpos__6_) in
|
|
(ghpat ~loc (Ppat_constraint(_1, poly)), exp) )
|
|
# 15704 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : (Parsetree.expression) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.pattern) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.pattern * Parsetree.expression) =
|
|
# 2400 "parsing/parser.mly"
|
|
( (_1, _3) )
|
|
# 15743 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : (Parsetree.expression) = Obj.magic _5 in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let _3 : (Parsetree.core_type) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.pattern) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.pattern * Parsetree.expression) =
|
|
# 2402 "parsing/parser.mly"
|
|
( let loc = (_startpos__1_, _endpos__3_) in
|
|
(ghpat ~loc (Ppat_constraint(_1, _3)), _5) )
|
|
# 15797 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = body;
|
|
MenhirLib.EngineTypes.startp = _startpos_body_;
|
|
MenhirLib.EngineTypes.endp = _endpos_body_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = rec_flag;
|
|
MenhirLib.EngineTypes.startp = _startpos_rec_flag_;
|
|
MenhirLib.EngineTypes.endp = _endpos_rec_flag_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = ext;
|
|
MenhirLib.EngineTypes.startp = _startpos_ext_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ext_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let body : (Parsetree.pattern * Parsetree.expression) = Obj.magic body in
|
|
let rec_flag : (Asttypes.rec_flag) = Obj.magic rec_flag in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let ext : (string Asttypes.loc option) = Obj.magic ext in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined2_ in
|
|
let _v : (let_bindings) = let _1 =
|
|
let attrs2 =
|
|
let _1 = _1_inlined2 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 15860 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_attrs2_ = _endpos__1_inlined2_ in
|
|
let attrs1 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 15869 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_attrs2_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2418 "parsing/parser.mly"
|
|
(
|
|
let attrs = attrs1 @ attrs2 in
|
|
mklbs ~loc:_sloc ext rec_flag (mklb ~loc:_sloc true body attrs)
|
|
)
|
|
# 15881 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2408 "parsing/parser.mly"
|
|
( _1 )
|
|
# 15887 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : (let_binding) = Obj.magic _2 in
|
|
let _1 : (let_bindings) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (let_bindings) =
|
|
# 2409 "parsing/parser.mly"
|
|
( addlb _1 _2 )
|
|
# 15919 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = body;
|
|
MenhirLib.EngineTypes.startp = _startpos_body_;
|
|
MenhirLib.EngineTypes.endp = _endpos_body_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = rec_flag;
|
|
MenhirLib.EngineTypes.startp = _startpos_rec_flag_;
|
|
MenhirLib.EngineTypes.endp = _endpos_rec_flag_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let body : (Parsetree.pattern * Parsetree.expression) = Obj.magic body in
|
|
let rec_flag : (Asttypes.rec_flag) = Obj.magic rec_flag in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined2_ in
|
|
let _v : (let_bindings) = let _1 =
|
|
let attrs2 =
|
|
let _1 = _1_inlined2 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 15975 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_attrs2_ = _endpos__1_inlined2_ in
|
|
let attrs1 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 15984 "parsing/parser.ml"
|
|
|
|
in
|
|
let ext =
|
|
# 3676 "parsing/parser.mly"
|
|
( None )
|
|
# 15990 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos_attrs2_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2418 "parsing/parser.mly"
|
|
(
|
|
let attrs = attrs1 @ attrs2 in
|
|
mklbs ~loc:_sloc ext rec_flag (mklb ~loc:_sloc true body attrs)
|
|
)
|
|
# 16001 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2408 "parsing/parser.mly"
|
|
( _1 )
|
|
# 16007 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = body;
|
|
MenhirLib.EngineTypes.startp = _startpos_body_;
|
|
MenhirLib.EngineTypes.endp = _endpos_body_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = rec_flag;
|
|
MenhirLib.EngineTypes.startp = _startpos_rec_flag_;
|
|
MenhirLib.EngineTypes.endp = _endpos_rec_flag_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined3 : (Parsetree.attributes) = Obj.magic _1_inlined3 in
|
|
let body : (Parsetree.pattern * Parsetree.expression) = Obj.magic body in
|
|
let rec_flag : (Asttypes.rec_flag) = Obj.magic rec_flag in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let _2 : (string Asttypes.loc) = Obj.magic _2 in
|
|
let _1_inlined1 : unit = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined3_ in
|
|
let _v : (let_bindings) = let _1 =
|
|
let attrs2 =
|
|
let _1 = _1_inlined3 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 16077 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_attrs2_ = _endpos__1_inlined3_ in
|
|
let attrs1 =
|
|
let _1 = _1_inlined2 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 16086 "parsing/parser.ml"
|
|
|
|
in
|
|
let ext =
|
|
let (_startpos__1_, _1) = (_startpos__1_inlined1_, _1_inlined1) in
|
|
let _endpos = _endpos__2_ in
|
|
let _startpos = _startpos__1_ in
|
|
let _loc = (_startpos, _endpos) in
|
|
|
|
# 3677 "parsing/parser.mly"
|
|
( not_expecting _loc "extension" )
|
|
# 16097 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_attrs2_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2418 "parsing/parser.mly"
|
|
(
|
|
let attrs = attrs1 @ attrs2 in
|
|
mklbs ~loc:_sloc ext rec_flag (mklb ~loc:_sloc true body attrs)
|
|
)
|
|
# 16109 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2408 "parsing/parser.mly"
|
|
( _1 )
|
|
# 16115 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : (let_binding) = Obj.magic _2 in
|
|
let _1 : (let_bindings) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (let_bindings) =
|
|
# 2409 "parsing/parser.mly"
|
|
( addlb _1 _2 )
|
|
# 16147 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.pattern) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.pattern) =
|
|
# 2077 "parsing/parser.mly"
|
|
( _1 )
|
|
# 16172 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : (Parsetree.core_type) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.pattern) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _1 =
|
|
# 2079 "parsing/parser.mly"
|
|
( Ppat_constraint(_1, _3) )
|
|
# 16212 "parsing/parser.ml"
|
|
in
|
|
let _endpos__1_ = _endpos__3_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 827 "parsing/parser.mly"
|
|
( mkpat ~loc:_sloc _1 )
|
|
# 16221 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2080 "parsing/parser.mly"
|
|
( _1 )
|
|
# 16227 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = exp;
|
|
MenhirLib.EngineTypes.startp = _startpos_exp_;
|
|
MenhirLib.EngineTypes.endp = _endpos_exp_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let exp : (Parsetree.expression) = Obj.magic exp in
|
|
let _1 : (string) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_exp_ in
|
|
let _v : (Parsetree.pattern * Parsetree.expression) = let pat =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2367 "parsing/parser.mly"
|
|
( mkpatvar ~loc:_sloc _1 )
|
|
# 16263 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2435 "parsing/parser.mly"
|
|
( (pat, exp) )
|
|
# 16269 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = exp;
|
|
MenhirLib.EngineTypes.startp = _startpos_exp_;
|
|
MenhirLib.EngineTypes.endp = _endpos_exp_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = typ;
|
|
MenhirLib.EngineTypes.startp = _startpos_typ_;
|
|
MenhirLib.EngineTypes.endp = _endpos_typ_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = pat;
|
|
MenhirLib.EngineTypes.startp = _startpos_pat_;
|
|
MenhirLib.EngineTypes.endp = _endpos_pat_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let exp : (Parsetree.expression) = Obj.magic exp in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let typ : (Parsetree.core_type) = Obj.magic typ in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let pat : (Parsetree.pattern) = Obj.magic pat in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_pat_ in
|
|
let _endpos = _endpos_exp_ in
|
|
let _v : (Parsetree.pattern * Parsetree.expression) =
|
|
# 2437 "parsing/parser.mly"
|
|
( let loc = (_startpos_pat_, _endpos_typ_) in
|
|
(ghpat ~loc (Ppat_constraint(pat, typ)), exp) )
|
|
# 16323 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = exp;
|
|
MenhirLib.EngineTypes.startp = _startpos_exp_;
|
|
MenhirLib.EngineTypes.endp = _endpos_exp_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = pat;
|
|
MenhirLib.EngineTypes.startp = _startpos_pat_;
|
|
MenhirLib.EngineTypes.endp = _endpos_pat_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let exp : (Parsetree.expression) = Obj.magic exp in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let pat : (Parsetree.pattern) = Obj.magic pat in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_pat_ in
|
|
let _endpos = _endpos_exp_ in
|
|
let _v : (Parsetree.pattern * Parsetree.expression) =
|
|
# 2440 "parsing/parser.mly"
|
|
( (pat, exp) )
|
|
# 16362 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = body;
|
|
MenhirLib.EngineTypes.startp = _startpos_body_;
|
|
MenhirLib.EngineTypes.endp = _endpos_body_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let body : (Parsetree.pattern * Parsetree.expression) = Obj.magic body in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_body_ in
|
|
let _endpos = _endpos_body_ in
|
|
let _v : (Parsetree.pattern * Parsetree.expression * Parsetree.binding_op list) =
|
|
# 2444 "parsing/parser.mly"
|
|
( let let_pat, let_exp = body in
|
|
let_pat, let_exp, [] )
|
|
# 16388 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = body;
|
|
MenhirLib.EngineTypes.startp = _startpos_body_;
|
|
MenhirLib.EngineTypes.endp = _endpos_body_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = bindings;
|
|
MenhirLib.EngineTypes.startp = _startpos_bindings_;
|
|
MenhirLib.EngineTypes.endp = _endpos_bindings_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let body : (Parsetree.pattern * Parsetree.expression) = Obj.magic body in
|
|
let _1 : (
|
|
# 625 "parsing/parser.mly"
|
|
(string)
|
|
# 16422 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let bindings : (Parsetree.pattern * Parsetree.expression * Parsetree.binding_op list) = Obj.magic bindings in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_bindings_ in
|
|
let _endpos = _endpos_body_ in
|
|
let _v : (Parsetree.pattern * Parsetree.expression * Parsetree.binding_op list) = let pbop_op =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 16435 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_body_ in
|
|
let _symbolstartpos = _startpos_bindings_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2447 "parsing/parser.mly"
|
|
( let let_pat, let_exp, rev_ands = bindings in
|
|
let pbop_pat, pbop_exp = body in
|
|
let pbop_loc = make_loc _sloc in
|
|
let and_ = {pbop_op; pbop_pat; pbop_exp; pbop_loc} in
|
|
let_pat, let_exp, and_ :: rev_ands )
|
|
# 16448 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _endpos = _startpos in
|
|
let _v : (Parsetree.class_declaration list) =
|
|
# 211 "menhir/standard.mly"
|
|
( [] )
|
|
# 16466 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = body;
|
|
MenhirLib.EngineTypes.startp = _startpos_body_;
|
|
MenhirLib.EngineTypes.endp = _endpos_body_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = params;
|
|
MenhirLib.EngineTypes.startp = _startpos_params_;
|
|
MenhirLib.EngineTypes.endp = _endpos_params_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = virt;
|
|
MenhirLib.EngineTypes.startp = _startpos_virt_;
|
|
MenhirLib.EngineTypes.endp = _endpos_virt_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let xs : (Parsetree.class_declaration list) = Obj.magic xs in
|
|
let _1_inlined3 : (Parsetree.attributes) = Obj.magic _1_inlined3 in
|
|
let body : (Parsetree.class_expr) = Obj.magic body in
|
|
let _1_inlined2 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 16532 "parsing/parser.ml"
|
|
) = Obj.magic _1_inlined2 in
|
|
let params : ((Parsetree.core_type * Asttypes.variance) list) = Obj.magic params in
|
|
let virt : (Asttypes.virtual_flag) = Obj.magic virt in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_xs_ in
|
|
let _v : (Parsetree.class_declaration list) = let x =
|
|
let attrs2 =
|
|
let _1 = _1_inlined3 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 16547 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_attrs2_ = _endpos__1_inlined3_ in
|
|
let id =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 16559 "parsing/parser.ml"
|
|
|
|
in
|
|
let attrs1 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 16567 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_attrs2_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1681 "parsing/parser.mly"
|
|
(
|
|
let attrs = attrs1 @ attrs2 in
|
|
let loc = make_loc _sloc in
|
|
let docs = symbol_docs _sloc in
|
|
let text = symbol_text _symbolstartpos in
|
|
Ci.mk id body ~virt ~params ~attrs ~loc ~text ~docs
|
|
)
|
|
# 16582 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 213 "menhir/standard.mly"
|
|
( x :: xs )
|
|
# 16588 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _endpos = _startpos in
|
|
let _v : (Parsetree.class_description list) =
|
|
# 211 "menhir/standard.mly"
|
|
( [] )
|
|
# 16606 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = cty;
|
|
MenhirLib.EngineTypes.startp = _startpos_cty_;
|
|
MenhirLib.EngineTypes.endp = _endpos_cty_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _6;
|
|
MenhirLib.EngineTypes.startp = _startpos__6_;
|
|
MenhirLib.EngineTypes.endp = _endpos__6_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = params;
|
|
MenhirLib.EngineTypes.startp = _startpos_params_;
|
|
MenhirLib.EngineTypes.endp = _endpos_params_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = virt;
|
|
MenhirLib.EngineTypes.startp = _startpos_virt_;
|
|
MenhirLib.EngineTypes.endp = _endpos_virt_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let xs : (Parsetree.class_description list) = Obj.magic xs in
|
|
let _1_inlined3 : (Parsetree.attributes) = Obj.magic _1_inlined3 in
|
|
let cty : (Parsetree.class_type) = Obj.magic cty in
|
|
let _6 : unit = Obj.magic _6 in
|
|
let _1_inlined2 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 16679 "parsing/parser.ml"
|
|
) = Obj.magic _1_inlined2 in
|
|
let params : ((Parsetree.core_type * Asttypes.variance) list) = Obj.magic params in
|
|
let virt : (Asttypes.virtual_flag) = Obj.magic virt in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_xs_ in
|
|
let _v : (Parsetree.class_description list) = let x =
|
|
let attrs2 =
|
|
let _1 = _1_inlined3 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 16694 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_attrs2_ = _endpos__1_inlined3_ in
|
|
let id =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 16706 "parsing/parser.ml"
|
|
|
|
in
|
|
let attrs1 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 16714 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_attrs2_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1972 "parsing/parser.mly"
|
|
(
|
|
let attrs = attrs1 @ attrs2 in
|
|
let loc = make_loc _sloc in
|
|
let docs = symbol_docs _sloc in
|
|
let text = symbol_text _symbolstartpos in
|
|
Ci.mk id cty ~virt ~params ~attrs ~loc ~text ~docs
|
|
)
|
|
# 16729 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 213 "menhir/standard.mly"
|
|
( x :: xs )
|
|
# 16735 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _endpos = _startpos in
|
|
let _v : (Parsetree.class_type_declaration list) =
|
|
# 211 "menhir/standard.mly"
|
|
( [] )
|
|
# 16753 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = csig;
|
|
MenhirLib.EngineTypes.startp = _startpos_csig_;
|
|
MenhirLib.EngineTypes.endp = _endpos_csig_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _6;
|
|
MenhirLib.EngineTypes.startp = _startpos__6_;
|
|
MenhirLib.EngineTypes.endp = _endpos__6_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = params;
|
|
MenhirLib.EngineTypes.startp = _startpos_params_;
|
|
MenhirLib.EngineTypes.endp = _endpos_params_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = virt;
|
|
MenhirLib.EngineTypes.startp = _startpos_virt_;
|
|
MenhirLib.EngineTypes.endp = _endpos_virt_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let xs : (Parsetree.class_type_declaration list) = Obj.magic xs in
|
|
let _1_inlined3 : (Parsetree.attributes) = Obj.magic _1_inlined3 in
|
|
let csig : (Parsetree.class_type) = Obj.magic csig in
|
|
let _6 : unit = Obj.magic _6 in
|
|
let _1_inlined2 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 16826 "parsing/parser.ml"
|
|
) = Obj.magic _1_inlined2 in
|
|
let params : ((Parsetree.core_type * Asttypes.variance) list) = Obj.magic params in
|
|
let virt : (Asttypes.virtual_flag) = Obj.magic virt in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_xs_ in
|
|
let _v : (Parsetree.class_type_declaration list) = let x =
|
|
let attrs2 =
|
|
let _1 = _1_inlined3 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 16841 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_attrs2_ = _endpos__1_inlined3_ in
|
|
let id =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 16853 "parsing/parser.ml"
|
|
|
|
in
|
|
let attrs1 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 16861 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_attrs2_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2011 "parsing/parser.mly"
|
|
(
|
|
let attrs = attrs1 @ attrs2 in
|
|
let loc = make_loc _sloc in
|
|
let docs = symbol_docs _sloc in
|
|
let text = symbol_text _symbolstartpos in
|
|
Ci.mk id csig ~virt ~params ~attrs ~loc ~text ~docs
|
|
)
|
|
# 16876 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 213 "menhir/standard.mly"
|
|
( x :: xs )
|
|
# 16882 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _endpos = _startpos in
|
|
let _v : (Parsetree.module_binding list) =
|
|
# 211 "menhir/standard.mly"
|
|
( [] )
|
|
# 16900 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = body;
|
|
MenhirLib.EngineTypes.startp = _startpos_body_;
|
|
MenhirLib.EngineTypes.endp = _endpos_body_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let xs : (Parsetree.module_binding list) = Obj.magic xs in
|
|
let _1_inlined3 : (Parsetree.attributes) = Obj.magic _1_inlined3 in
|
|
let body : (Parsetree.module_expr) = Obj.magic body in
|
|
let _1_inlined2 : (string option) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_xs_ in
|
|
let _v : (Parsetree.module_binding list) = let x =
|
|
let attrs2 =
|
|
let _1 = _1_inlined3 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 16963 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_attrs2_ = _endpos__1_inlined3_ in
|
|
let name =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 16975 "parsing/parser.ml"
|
|
|
|
in
|
|
let attrs1 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 16983 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_attrs2_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1363 "parsing/parser.mly"
|
|
(
|
|
let loc = make_loc _sloc in
|
|
let attrs = attrs1 @ attrs2 in
|
|
let docs = symbol_docs _sloc in
|
|
let text = symbol_text _symbolstartpos in
|
|
Mb.mk name body ~attrs ~loc ~text ~docs
|
|
)
|
|
# 16998 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 213 "menhir/standard.mly"
|
|
( x :: xs )
|
|
# 17004 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _endpos = _startpos in
|
|
let _v : (Parsetree.module_declaration list) =
|
|
# 211 "menhir/standard.mly"
|
|
( [] )
|
|
# 17022 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = mty;
|
|
MenhirLib.EngineTypes.startp = _startpos_mty_;
|
|
MenhirLib.EngineTypes.endp = _endpos_mty_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let xs : (Parsetree.module_declaration list) = Obj.magic xs in
|
|
let _1_inlined3 : (Parsetree.attributes) = Obj.magic _1_inlined3 in
|
|
let mty : (Parsetree.module_type) = Obj.magic mty in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let _1_inlined2 : (string option) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_xs_ in
|
|
let _v : (Parsetree.module_declaration list) = let x =
|
|
let attrs2 =
|
|
let _1 = _1_inlined3 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 17092 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_attrs2_ = _endpos__1_inlined3_ in
|
|
let name =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 17104 "parsing/parser.ml"
|
|
|
|
in
|
|
let attrs1 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 17112 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_attrs2_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1639 "parsing/parser.mly"
|
|
(
|
|
let attrs = attrs1 @ attrs2 in
|
|
let docs = symbol_docs _sloc in
|
|
let loc = make_loc _sloc in
|
|
let text = symbol_text _symbolstartpos in
|
|
Md.mk name mty ~attrs ~loc ~text ~docs
|
|
)
|
|
# 17127 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 213 "menhir/standard.mly"
|
|
( x :: xs )
|
|
# 17133 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _endpos = _startpos in
|
|
let _v : (Parsetree.attributes) =
|
|
# 211 "menhir/standard.mly"
|
|
( [] )
|
|
# 17151 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let xs : (Parsetree.attributes) = Obj.magic xs in
|
|
let x : (Parsetree.attribute) = Obj.magic x in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_x_ in
|
|
let _endpos = _endpos_xs_ in
|
|
let _v : (Parsetree.attributes) =
|
|
# 213 "menhir/standard.mly"
|
|
( x :: xs )
|
|
# 17183 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _endpos = _startpos in
|
|
let _v : (Parsetree.type_declaration list) =
|
|
# 211 "menhir/standard.mly"
|
|
( [] )
|
|
# 17201 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = kind_priv_manifest;
|
|
MenhirLib.EngineTypes.startp = _startpos_kind_priv_manifest_;
|
|
MenhirLib.EngineTypes.endp = _endpos_kind_priv_manifest_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = params;
|
|
MenhirLib.EngineTypes.startp = _startpos_params_;
|
|
MenhirLib.EngineTypes.endp = _endpos_params_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let xs : (Parsetree.type_declaration list) = Obj.magic xs in
|
|
let _1_inlined3 : (Parsetree.attributes) = Obj.magic _1_inlined3 in
|
|
let xs_inlined1 : ((Parsetree.core_type * Parsetree.core_type * Ast_helper.loc) list) = Obj.magic xs_inlined1 in
|
|
let kind_priv_manifest : (Parsetree.type_kind * Asttypes.private_flag * Parsetree.core_type option) = Obj.magic kind_priv_manifest in
|
|
let _1_inlined2 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 17268 "parsing/parser.ml"
|
|
) = Obj.magic _1_inlined2 in
|
|
let params : ((Parsetree.core_type * Asttypes.variance) list) = Obj.magic params in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_xs_ in
|
|
let _v : (Parsetree.type_declaration list) = let x =
|
|
let xs = xs_inlined1 in
|
|
let attrs2 =
|
|
let _1 = _1_inlined3 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 17283 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_attrs2_ = _endpos__1_inlined3_ in
|
|
let cstrs =
|
|
let _1 =
|
|
let xs =
|
|
# 253 "menhir/standard.mly"
|
|
( List.rev xs )
|
|
# 17292 "parsing/parser.ml"
|
|
in
|
|
|
|
# 876 "parsing/parser.mly"
|
|
( xs )
|
|
# 17297 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2837 "parsing/parser.mly"
|
|
( _1 )
|
|
# 17303 "parsing/parser.ml"
|
|
|
|
in
|
|
let id =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 17314 "parsing/parser.ml"
|
|
|
|
in
|
|
let attrs1 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 17322 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_attrs2_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2826 "parsing/parser.mly"
|
|
(
|
|
let (kind, priv, manifest) = kind_priv_manifest in
|
|
let docs = symbol_docs _sloc in
|
|
let attrs = attrs1 @ attrs2 in
|
|
let loc = make_loc _sloc in
|
|
let text = symbol_text _symbolstartpos in
|
|
Type.mk id ~params ~cstrs ~kind ~priv ?manifest ~attrs ~loc ~docs ~text
|
|
)
|
|
# 17338 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 213 "menhir/standard.mly"
|
|
( x :: xs )
|
|
# 17344 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _endpos = _startpos in
|
|
let _v : (Parsetree.type_declaration list) =
|
|
# 211 "menhir/standard.mly"
|
|
( [] )
|
|
# 17362 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined4;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = params;
|
|
MenhirLib.EngineTypes.startp = _startpos_params_;
|
|
MenhirLib.EngineTypes.endp = _endpos_params_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let xs : (Parsetree.type_declaration list) = Obj.magic xs in
|
|
let _1_inlined4 : (Parsetree.attributes) = Obj.magic _1_inlined4 in
|
|
let xs_inlined1 : ((Parsetree.core_type * Parsetree.core_type * Ast_helper.loc) list) = Obj.magic xs_inlined1 in
|
|
let _2 : (Parsetree.type_kind * Asttypes.private_flag * Parsetree.core_type option) = Obj.magic _2 in
|
|
let _1_inlined3 : unit = Obj.magic _1_inlined3 in
|
|
let _1_inlined2 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 17436 "parsing/parser.ml"
|
|
) = Obj.magic _1_inlined2 in
|
|
let params : ((Parsetree.core_type * Asttypes.variance) list) = Obj.magic params in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_xs_ in
|
|
let _v : (Parsetree.type_declaration list) = let x =
|
|
let xs = xs_inlined1 in
|
|
let attrs2 =
|
|
let _1 = _1_inlined4 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 17451 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_attrs2_ = _endpos__1_inlined4_ in
|
|
let cstrs =
|
|
let _1 =
|
|
let xs =
|
|
# 253 "menhir/standard.mly"
|
|
( List.rev xs )
|
|
# 17460 "parsing/parser.ml"
|
|
in
|
|
|
|
# 876 "parsing/parser.mly"
|
|
( xs )
|
|
# 17465 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2837 "parsing/parser.mly"
|
|
( _1 )
|
|
# 17471 "parsing/parser.ml"
|
|
|
|
in
|
|
let kind_priv_manifest =
|
|
let _1 = _1_inlined3 in
|
|
|
|
# 2872 "parsing/parser.mly"
|
|
( _2 )
|
|
# 17479 "parsing/parser.ml"
|
|
|
|
in
|
|
let id =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 17490 "parsing/parser.ml"
|
|
|
|
in
|
|
let attrs1 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 17498 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_attrs2_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2826 "parsing/parser.mly"
|
|
(
|
|
let (kind, priv, manifest) = kind_priv_manifest in
|
|
let docs = symbol_docs _sloc in
|
|
let attrs = attrs1 @ attrs2 in
|
|
let loc = make_loc _sloc in
|
|
let text = symbol_text _symbolstartpos in
|
|
Type.mk id ~params ~cstrs ~kind ~priv ?manifest ~attrs ~loc ~docs ~text
|
|
)
|
|
# 17514 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 213 "menhir/standard.mly"
|
|
( x :: xs )
|
|
# 17520 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _endpos = _startpos in
|
|
let _v : (Parsetree.attributes) =
|
|
# 211 "menhir/standard.mly"
|
|
( [] )
|
|
# 17538 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let xs : (Parsetree.attributes) = Obj.magic xs in
|
|
let x : (Parsetree.attribute) = Obj.magic x in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_x_ in
|
|
let _endpos = _endpos_xs_ in
|
|
let _v : (Parsetree.attributes) =
|
|
# 213 "menhir/standard.mly"
|
|
( x :: xs )
|
|
# 17570 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _endpos = _startpos in
|
|
let _v : (Parsetree.signature_item list list) =
|
|
# 211 "menhir/standard.mly"
|
|
( [] )
|
|
# 17588 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let xs : (Parsetree.signature_item list list) = Obj.magic xs in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_xs_ in
|
|
let _v : (Parsetree.signature_item list list) = let x =
|
|
let _1 =
|
|
let _startpos = _startpos__1_ in
|
|
|
|
# 802 "parsing/parser.mly"
|
|
( text_sig _startpos )
|
|
# 17623 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1501 "parsing/parser.mly"
|
|
( _1 )
|
|
# 17629 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 213 "menhir/standard.mly"
|
|
( x :: xs )
|
|
# 17635 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let xs : (Parsetree.signature_item list list) = Obj.magic xs in
|
|
let _1 : (Parsetree.signature_item) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_xs_ in
|
|
let _v : (Parsetree.signature_item list list) = let x =
|
|
let _1 =
|
|
let _startpos = _startpos__1_ in
|
|
|
|
# 800 "parsing/parser.mly"
|
|
( text_sig _startpos @ [_1] )
|
|
# 17670 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1501 "parsing/parser.mly"
|
|
( _1 )
|
|
# 17676 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 213 "menhir/standard.mly"
|
|
( x :: xs )
|
|
# 17682 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _endpos = _startpos in
|
|
let _v : (Parsetree.structure_item list list) =
|
|
# 211 "menhir/standard.mly"
|
|
( [] )
|
|
# 17700 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let xs : (Parsetree.structure_item list list) = Obj.magic xs in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_xs_ in
|
|
let _v : (Parsetree.structure_item list list) = let x =
|
|
let _1 =
|
|
let ys =
|
|
let items =
|
|
# 862 "parsing/parser.mly"
|
|
( [] )
|
|
# 17735 "parsing/parser.ml"
|
|
in
|
|
|
|
# 1247 "parsing/parser.mly"
|
|
( items )
|
|
# 17740 "parsing/parser.ml"
|
|
|
|
in
|
|
let xs =
|
|
let _startpos = _startpos__1_ in
|
|
|
|
# 798 "parsing/parser.mly"
|
|
( text_str _startpos )
|
|
# 17748 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 267 "menhir/standard.mly"
|
|
( xs @ ys )
|
|
# 17754 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1263 "parsing/parser.mly"
|
|
( _1 )
|
|
# 17760 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 213 "menhir/standard.mly"
|
|
( x :: xs )
|
|
# 17766 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = e;
|
|
MenhirLib.EngineTypes.startp = _startpos_e_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let xs : (Parsetree.structure_item list list) = Obj.magic xs in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let e : (Parsetree.expression) = Obj.magic e in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_xs_ in
|
|
let _v : (Parsetree.structure_item list list) = let x =
|
|
let _1 =
|
|
let ys =
|
|
let (_endpos__1_, _1) = (_endpos__1_inlined1_, _1_inlined1) in
|
|
let items =
|
|
let x =
|
|
let _1 =
|
|
let _1 =
|
|
let attrs =
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 17820 "parsing/parser.ml"
|
|
in
|
|
|
|
# 1254 "parsing/parser.mly"
|
|
( mkstrexp e attrs )
|
|
# 17825 "parsing/parser.ml"
|
|
|
|
in
|
|
let _startpos__1_ = _startpos_e_ in
|
|
let _startpos = _startpos__1_ in
|
|
|
|
# 796 "parsing/parser.mly"
|
|
( text_str _startpos @ [_1] )
|
|
# 17833 "parsing/parser.ml"
|
|
|
|
in
|
|
let _startpos__1_ = _startpos_e_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _startpos = _startpos__1_ in
|
|
|
|
# 815 "parsing/parser.mly"
|
|
( mark_rhs_docs _startpos _endpos;
|
|
_1 )
|
|
# 17843 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 864 "parsing/parser.mly"
|
|
( x )
|
|
# 17849 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1247 "parsing/parser.mly"
|
|
( items )
|
|
# 17855 "parsing/parser.ml"
|
|
|
|
in
|
|
let xs =
|
|
let _startpos = _startpos__1_ in
|
|
|
|
# 798 "parsing/parser.mly"
|
|
( text_str _startpos )
|
|
# 17863 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 267 "menhir/standard.mly"
|
|
( xs @ ys )
|
|
# 17869 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1263 "parsing/parser.mly"
|
|
( _1 )
|
|
# 17875 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 213 "menhir/standard.mly"
|
|
( x :: xs )
|
|
# 17881 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let xs : (Parsetree.structure_item list list) = Obj.magic xs in
|
|
let _1 : (Parsetree.structure_item) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_xs_ in
|
|
let _v : (Parsetree.structure_item list list) = let x =
|
|
let _1 =
|
|
let _startpos = _startpos__1_ in
|
|
|
|
# 796 "parsing/parser.mly"
|
|
( text_str _startpos @ [_1] )
|
|
# 17916 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1263 "parsing/parser.mly"
|
|
( _1 )
|
|
# 17922 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 213 "menhir/standard.mly"
|
|
( x :: xs )
|
|
# 17928 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _endpos = _startpos in
|
|
let _v : (Parsetree.class_type_field list list) =
|
|
# 211 "menhir/standard.mly"
|
|
( [] )
|
|
# 17946 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let xs : (Parsetree.class_type_field list list) = Obj.magic xs in
|
|
let _1 : (Parsetree.class_type_field) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_xs_ in
|
|
let _v : (Parsetree.class_type_field list list) = let x =
|
|
let _startpos = _startpos__1_ in
|
|
|
|
# 810 "parsing/parser.mly"
|
|
( text_csig _startpos @ [_1] )
|
|
# 17980 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 213 "menhir/standard.mly"
|
|
( x :: xs )
|
|
# 17986 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _endpos = _startpos in
|
|
let _v : (Parsetree.class_field list list) =
|
|
# 211 "menhir/standard.mly"
|
|
( [] )
|
|
# 18004 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let xs : (Parsetree.class_field list list) = Obj.magic xs in
|
|
let _1 : (Parsetree.class_field) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_xs_ in
|
|
let _v : (Parsetree.class_field list list) = let x =
|
|
let _startpos = _startpos__1_ in
|
|
|
|
# 808 "parsing/parser.mly"
|
|
( text_cstr _startpos @ [_1] )
|
|
# 18038 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 213 "menhir/standard.mly"
|
|
( x :: xs )
|
|
# 18044 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _endpos = _startpos in
|
|
let _v : (Parsetree.structure_item list list) =
|
|
# 211 "menhir/standard.mly"
|
|
( [] )
|
|
# 18062 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let xs : (Parsetree.structure_item list list) = Obj.magic xs in
|
|
let _1 : (Parsetree.structure_item) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_xs_ in
|
|
let _v : (Parsetree.structure_item list list) = let x =
|
|
let _startpos = _startpos__1_ in
|
|
|
|
# 796 "parsing/parser.mly"
|
|
( text_str _startpos @ [_1] )
|
|
# 18096 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 213 "menhir/standard.mly"
|
|
( x :: xs )
|
|
# 18102 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _endpos = _startpos in
|
|
let _v : (Parsetree.toplevel_phrase list list) =
|
|
# 211 "menhir/standard.mly"
|
|
( [] )
|
|
# 18120 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let xs : (Parsetree.toplevel_phrase list list) = Obj.magic xs in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_xs_ in
|
|
let _v : (Parsetree.toplevel_phrase list list) = let x =
|
|
let _1 =
|
|
let x =
|
|
let _1 =
|
|
# 862 "parsing/parser.mly"
|
|
( [] )
|
|
# 18155 "parsing/parser.ml"
|
|
in
|
|
|
|
# 1092 "parsing/parser.mly"
|
|
( _1 )
|
|
# 18160 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 183 "menhir/standard.mly"
|
|
( x )
|
|
# 18166 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1104 "parsing/parser.mly"
|
|
( _1 )
|
|
# 18172 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 213 "menhir/standard.mly"
|
|
( x :: xs )
|
|
# 18178 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = e;
|
|
MenhirLib.EngineTypes.startp = _startpos_e_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let xs : (Parsetree.toplevel_phrase list list) = Obj.magic xs in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let e : (Parsetree.expression) = Obj.magic e in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_xs_ in
|
|
let _v : (Parsetree.toplevel_phrase list list) = let x =
|
|
let _1 =
|
|
let x =
|
|
let _1 = _1_inlined1 in
|
|
let _1 =
|
|
let x =
|
|
let _1 =
|
|
let _1 =
|
|
let attrs =
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 18232 "parsing/parser.ml"
|
|
in
|
|
|
|
# 1254 "parsing/parser.mly"
|
|
( mkstrexp e attrs )
|
|
# 18237 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 806 "parsing/parser.mly"
|
|
( Ptop_def [_1] )
|
|
# 18243 "parsing/parser.ml"
|
|
|
|
in
|
|
let _startpos__1_ = _startpos_e_ in
|
|
let _startpos = _startpos__1_ in
|
|
|
|
# 804 "parsing/parser.mly"
|
|
( text_def _startpos @ [_1] )
|
|
# 18251 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 864 "parsing/parser.mly"
|
|
( x )
|
|
# 18257 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1092 "parsing/parser.mly"
|
|
( _1 )
|
|
# 18263 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 183 "menhir/standard.mly"
|
|
( x )
|
|
# 18269 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1104 "parsing/parser.mly"
|
|
( _1 )
|
|
# 18275 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 213 "menhir/standard.mly"
|
|
( x :: xs )
|
|
# 18281 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let xs : (Parsetree.toplevel_phrase list list) = Obj.magic xs in
|
|
let _1 : (Parsetree.structure_item) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_xs_ in
|
|
let _v : (Parsetree.toplevel_phrase list list) = let x =
|
|
let _1 =
|
|
let _1 =
|
|
# 806 "parsing/parser.mly"
|
|
( Ptop_def [_1] )
|
|
# 18315 "parsing/parser.ml"
|
|
in
|
|
let _startpos = _startpos__1_ in
|
|
|
|
# 804 "parsing/parser.mly"
|
|
( text_def _startpos @ [_1] )
|
|
# 18321 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1104 "parsing/parser.mly"
|
|
( _1 )
|
|
# 18327 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 213 "menhir/standard.mly"
|
|
( x :: xs )
|
|
# 18333 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let xs : (Parsetree.toplevel_phrase list list) = Obj.magic xs in
|
|
let _1 : (Parsetree.toplevel_phrase) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_xs_ in
|
|
let _v : (Parsetree.toplevel_phrase list list) = let x =
|
|
let _1 =
|
|
let _1 =
|
|
let _endpos = _endpos__1_ in
|
|
let _startpos = _startpos__1_ in
|
|
|
|
# 815 "parsing/parser.mly"
|
|
( mark_rhs_docs _startpos _endpos;
|
|
_1 )
|
|
# 18371 "parsing/parser.ml"
|
|
|
|
in
|
|
let _startpos = _startpos__1_ in
|
|
|
|
# 804 "parsing/parser.mly"
|
|
( text_def _startpos @ [_1] )
|
|
# 18378 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1104 "parsing/parser.mly"
|
|
( _1 )
|
|
# 18384 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 213 "menhir/standard.mly"
|
|
( x :: xs )
|
|
# 18390 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = opat;
|
|
MenhirLib.EngineTypes.startp = _startpos_opat_;
|
|
MenhirLib.EngineTypes.endp = _endpos_opat_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = octy;
|
|
MenhirLib.EngineTypes.startp = _startpos_octy_;
|
|
MenhirLib.EngineTypes.endp = _endpos_octy_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let opat : (Parsetree.pattern option) = Obj.magic opat in
|
|
let octy : (Parsetree.core_type option) = Obj.magic octy in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_opat_ in
|
|
let _v : ((Longident.t Asttypes.loc * Parsetree.pattern) list * unit option) = let _2 =
|
|
# 124 "menhir/standard.mly"
|
|
( None )
|
|
# 18429 "parsing/parser.ml"
|
|
in
|
|
let x =
|
|
let label =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 18439 "parsing/parser.ml"
|
|
|
|
in
|
|
let _startpos_label_ = _startpos__1_ in
|
|
let _endpos = _endpos_opat_ in
|
|
let _symbolstartpos = _startpos_label_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2715 "parsing/parser.mly"
|
|
( let pat =
|
|
match opat with
|
|
| None ->
|
|
(* No pattern; this is a pun. Desugar it. *)
|
|
pat_of_label ~loc:_sloc label
|
|
| Some pat ->
|
|
pat
|
|
in
|
|
label, mkpat_opt_constraint ~loc:_sloc pat octy
|
|
)
|
|
# 18458 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1031 "parsing/parser.mly"
|
|
( [x], None )
|
|
# 18464 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = opat;
|
|
MenhirLib.EngineTypes.startp = _startpos_opat_;
|
|
MenhirLib.EngineTypes.endp = _endpos_opat_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = octy;
|
|
MenhirLib.EngineTypes.startp = _startpos_octy_;
|
|
MenhirLib.EngineTypes.endp = _endpos_octy_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let x : unit = Obj.magic x in
|
|
let opat : (Parsetree.pattern option) = Obj.magic opat in
|
|
let octy : (Parsetree.core_type option) = Obj.magic octy in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_x_ in
|
|
let _v : ((Longident.t Asttypes.loc * Parsetree.pattern) list * unit option) = let _2 =
|
|
# 126 "menhir/standard.mly"
|
|
( Some x )
|
|
# 18510 "parsing/parser.ml"
|
|
in
|
|
let x =
|
|
let label =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 18520 "parsing/parser.ml"
|
|
|
|
in
|
|
let _startpos_label_ = _startpos__1_ in
|
|
let _endpos = _endpos_opat_ in
|
|
let _symbolstartpos = _startpos_label_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2715 "parsing/parser.mly"
|
|
( let pat =
|
|
match opat with
|
|
| None ->
|
|
(* No pattern; this is a pun. Desugar it. *)
|
|
pat_of_label ~loc:_sloc label
|
|
| Some pat ->
|
|
pat
|
|
in
|
|
label, mkpat_opt_constraint ~loc:_sloc pat octy
|
|
)
|
|
# 18539 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1031 "parsing/parser.mly"
|
|
( [x], None )
|
|
# 18545 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = y;
|
|
MenhirLib.EngineTypes.startp = _startpos_y_;
|
|
MenhirLib.EngineTypes.endp = _endpos_y_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = opat;
|
|
MenhirLib.EngineTypes.startp = _startpos_opat_;
|
|
MenhirLib.EngineTypes.endp = _endpos_opat_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = octy;
|
|
MenhirLib.EngineTypes.startp = _startpos_octy_;
|
|
MenhirLib.EngineTypes.endp = _endpos_octy_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _4 : (unit option) = Obj.magic _4 in
|
|
let y : unit = Obj.magic y in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let opat : (Parsetree.pattern option) = Obj.magic opat in
|
|
let octy : (Parsetree.core_type option) = Obj.magic octy in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__4_ in
|
|
let _v : ((Longident.t Asttypes.loc * Parsetree.pattern) list * unit option) = let x =
|
|
let label =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 18610 "parsing/parser.ml"
|
|
|
|
in
|
|
let _startpos_label_ = _startpos__1_ in
|
|
let _endpos = _endpos_opat_ in
|
|
let _symbolstartpos = _startpos_label_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2715 "parsing/parser.mly"
|
|
( let pat =
|
|
match opat with
|
|
| None ->
|
|
(* No pattern; this is a pun. Desugar it. *)
|
|
pat_of_label ~loc:_sloc label
|
|
| Some pat ->
|
|
pat
|
|
in
|
|
label, mkpat_opt_constraint ~loc:_sloc pat octy
|
|
)
|
|
# 18629 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1033 "parsing/parser.mly"
|
|
( [x], Some y )
|
|
# 18635 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = tail;
|
|
MenhirLib.EngineTypes.startp = _startpos_tail_;
|
|
MenhirLib.EngineTypes.endp = _endpos_tail_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = opat;
|
|
MenhirLib.EngineTypes.startp = _startpos_opat_;
|
|
MenhirLib.EngineTypes.endp = _endpos_opat_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = octy;
|
|
MenhirLib.EngineTypes.startp = _startpos_octy_;
|
|
MenhirLib.EngineTypes.endp = _endpos_octy_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let tail : ((Longident.t Asttypes.loc * Parsetree.pattern) list * unit option) = Obj.magic tail in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let opat : (Parsetree.pattern option) = Obj.magic opat in
|
|
let octy : (Parsetree.core_type option) = Obj.magic octy in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_tail_ in
|
|
let _v : ((Longident.t Asttypes.loc * Parsetree.pattern) list * unit option) = let x =
|
|
let label =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 18693 "parsing/parser.ml"
|
|
|
|
in
|
|
let _startpos_label_ = _startpos__1_ in
|
|
let _endpos = _endpos_opat_ in
|
|
let _symbolstartpos = _startpos_label_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2715 "parsing/parser.mly"
|
|
( let pat =
|
|
match opat with
|
|
| None ->
|
|
(* No pattern; this is a pun. Desugar it. *)
|
|
pat_of_label ~loc:_sloc label
|
|
| Some pat ->
|
|
pat
|
|
in
|
|
label, mkpat_opt_constraint ~loc:_sloc pat octy
|
|
)
|
|
# 18712 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1037 "parsing/parser.mly"
|
|
( let xs, y = tail in
|
|
x :: xs, y )
|
|
# 18719 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : (Parsetree.expression) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.pattern) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.case) =
|
|
# 2473 "parsing/parser.mly"
|
|
( Exp.case _1 _3 )
|
|
# 18758 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : (Parsetree.expression) = Obj.magic _5 in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let _3 : (Parsetree.expression) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.pattern) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.case) =
|
|
# 2475 "parsing/parser.mly"
|
|
( Exp.case _1 ~guard:_3 _5 )
|
|
# 18811 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.pattern) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.case) = let _loc__3_ = (_startpos__3_, _endpos__3_) in
|
|
|
|
# 2477 "parsing/parser.mly"
|
|
( Exp.case _1 (Exp.unreachable ~loc:(make_loc _loc__3_) ()) )
|
|
# 18851 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = tail;
|
|
MenhirLib.EngineTypes.startp = _startpos_tail_;
|
|
MenhirLib.EngineTypes.endp = _endpos_tail_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let tail : (Parsetree.object_field list * Asttypes.closed_flag) = Obj.magic tail in
|
|
let _1_inlined3 : (Parsetree.attributes) = Obj.magic _1_inlined3 in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (Parsetree.core_type) = Obj.magic _1_inlined1 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 18914 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_tail_ in
|
|
let _v : (Parsetree.object_field list * Asttypes.closed_flag) = let head =
|
|
let _6 =
|
|
let _1 = _1_inlined3 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 18925 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__6_ = _endpos__1_inlined3_ in
|
|
let _4 =
|
|
let _1 = _1_inlined2 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 18934 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__4_ = _endpos__1_inlined2_ in
|
|
let _3 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3118 "parsing/parser.mly"
|
|
( _1 )
|
|
# 18943 "parsing/parser.ml"
|
|
|
|
in
|
|
let _1 =
|
|
let _1 =
|
|
# 3343 "parsing/parser.mly"
|
|
( _1 )
|
|
# 18950 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 18958 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__6_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 3328 "parsing/parser.mly"
|
|
( let info =
|
|
match rhs_info _endpos__4_ with
|
|
| Some _ as info_before_semi -> info_before_semi
|
|
| None -> symbol_info _endpos
|
|
in
|
|
let attrs = add_info_attrs info (_4 @ _6) in
|
|
Of.tag ~loc:(make_loc _sloc) ~attrs _1 _3 )
|
|
# 18973 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3309 "parsing/parser.mly"
|
|
( let (f, c) = tail in (head :: f, c) )
|
|
# 18979 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = tail;
|
|
MenhirLib.EngineTypes.startp = _startpos_tail_;
|
|
MenhirLib.EngineTypes.endp = _endpos_tail_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = ty;
|
|
MenhirLib.EngineTypes.startp = _startpos_ty_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ty_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let tail : (Parsetree.object_field list * Asttypes.closed_flag) = Obj.magic tail in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let ty : (Parsetree.core_type) = Obj.magic ty in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_ty_ in
|
|
let _endpos = _endpos_tail_ in
|
|
let _v : (Parsetree.object_field list * Asttypes.closed_flag) = let head =
|
|
let _endpos = _endpos_ty_ in
|
|
let _symbolstartpos = _startpos_ty_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 3339 "parsing/parser.mly"
|
|
( Of.inherit_ ~loc:(make_loc _sloc) ty )
|
|
# 19022 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3309 "parsing/parser.mly"
|
|
( let (f, c) = tail in (head :: f, c) )
|
|
# 19028 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined3 : (Parsetree.attributes) = Obj.magic _1_inlined3 in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (Parsetree.core_type) = Obj.magic _1_inlined1 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 19084 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined3_ in
|
|
let _v : (Parsetree.object_field list * Asttypes.closed_flag) = let head =
|
|
let _6 =
|
|
let _1 = _1_inlined3 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 19095 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__6_ = _endpos__1_inlined3_ in
|
|
let _4 =
|
|
let _1 = _1_inlined2 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 19104 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__4_ = _endpos__1_inlined2_ in
|
|
let _3 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3118 "parsing/parser.mly"
|
|
( _1 )
|
|
# 19113 "parsing/parser.ml"
|
|
|
|
in
|
|
let _1 =
|
|
let _1 =
|
|
# 3343 "parsing/parser.mly"
|
|
( _1 )
|
|
# 19120 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 19128 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__6_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 3328 "parsing/parser.mly"
|
|
( let info =
|
|
match rhs_info _endpos__4_ with
|
|
| Some _ as info_before_semi -> info_before_semi
|
|
| None -> symbol_info _endpos
|
|
in
|
|
let attrs = add_info_attrs info (_4 @ _6) in
|
|
Of.tag ~loc:(make_loc _sloc) ~attrs _1 _3 )
|
|
# 19143 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3312 "parsing/parser.mly"
|
|
( [head], Closed )
|
|
# 19149 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = ty;
|
|
MenhirLib.EngineTypes.startp = _startpos_ty_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ty_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let ty : (Parsetree.core_type) = Obj.magic ty in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_ty_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.object_field list * Asttypes.closed_flag) = let head =
|
|
let _endpos = _endpos_ty_ in
|
|
let _symbolstartpos = _startpos_ty_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 3339 "parsing/parser.mly"
|
|
( Of.inherit_ ~loc:(make_loc _sloc) ty )
|
|
# 19185 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3312 "parsing/parser.mly"
|
|
( [head], Closed )
|
|
# 19191 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (Parsetree.core_type) = Obj.magic _1_inlined1 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 19233 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined2_ in
|
|
let _v : (Parsetree.object_field list * Asttypes.closed_flag) = let head =
|
|
let _4 =
|
|
let _1 = _1_inlined2 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 19244 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__4_ = _endpos__1_inlined2_ in
|
|
let _3 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3118 "parsing/parser.mly"
|
|
( _1 )
|
|
# 19253 "parsing/parser.ml"
|
|
|
|
in
|
|
let _1 =
|
|
let _1 =
|
|
# 3343 "parsing/parser.mly"
|
|
( _1 )
|
|
# 19260 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 19268 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__4_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 3321 "parsing/parser.mly"
|
|
( let info = symbol_info _endpos in
|
|
let attrs = add_info_attrs info _4 in
|
|
Of.tag ~loc:(make_loc _sloc) ~attrs _1 _3 )
|
|
# 19279 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3315 "parsing/parser.mly"
|
|
( [head], Closed )
|
|
# 19285 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = ty;
|
|
MenhirLib.EngineTypes.startp = _startpos_ty_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ty_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let ty : (Parsetree.core_type) = Obj.magic ty in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_ty_ in
|
|
let _endpos = _endpos_ty_ in
|
|
let _v : (Parsetree.object_field list * Asttypes.closed_flag) = let head =
|
|
let _endpos = _endpos_ty_ in
|
|
let _symbolstartpos = _startpos_ty_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 3339 "parsing/parser.mly"
|
|
( Of.inherit_ ~loc:(make_loc _sloc) ty )
|
|
# 19314 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3315 "parsing/parser.mly"
|
|
( [head], Closed )
|
|
# 19320 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.object_field list * Asttypes.closed_flag) =
|
|
# 3317 "parsing/parser.mly"
|
|
( [], Open )
|
|
# 19345 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = private_;
|
|
MenhirLib.EngineTypes.startp = _startpos_private__;
|
|
MenhirLib.EngineTypes.endp = _endpos_private__;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined2 : (Parsetree.core_type) = Obj.magic _1_inlined2 in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _1_inlined1 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 19392 "parsing/parser.ml"
|
|
) = Obj.magic _1_inlined1 in
|
|
let private_ : (Asttypes.private_flag) = Obj.magic private_ in
|
|
let _1 : (Parsetree.attributes) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined2_ in
|
|
let _v : ((Asttypes.label Asttypes.loc * Asttypes.private_flag *
|
|
Parsetree.class_field_kind) *
|
|
Parsetree.attributes) = let ty =
|
|
let _1 = _1_inlined2 in
|
|
|
|
# 3114 "parsing/parser.mly"
|
|
( _1 )
|
|
# 19406 "parsing/parser.ml"
|
|
|
|
in
|
|
let label =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined1_, _startpos__1_inlined1_, _1_inlined1) in
|
|
let _1 =
|
|
# 3343 "parsing/parser.mly"
|
|
( _1 )
|
|
# 19414 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 19422 "parsing/parser.ml"
|
|
|
|
in
|
|
let attrs =
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 19428 "parsing/parser.ml"
|
|
in
|
|
let _1 =
|
|
# 3568 "parsing/parser.mly"
|
|
( Fresh )
|
|
# 19433 "parsing/parser.ml"
|
|
in
|
|
|
|
# 1819 "parsing/parser.mly"
|
|
( (label, private_, Cfk_virtual ty), attrs )
|
|
# 19438 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : (Parsetree.expression) = Obj.magic _5 in
|
|
let _1_inlined1 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 19478 "parsing/parser.ml"
|
|
) = Obj.magic _1_inlined1 in
|
|
let _3 : (Asttypes.private_flag) = Obj.magic _3 in
|
|
let _1 : (Parsetree.attributes) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : ((Asttypes.label Asttypes.loc * Asttypes.private_flag *
|
|
Parsetree.class_field_kind) *
|
|
Parsetree.attributes) = let _4 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined1_, _startpos__1_inlined1_, _1_inlined1) in
|
|
let _1 =
|
|
# 3343 "parsing/parser.mly"
|
|
( _1 )
|
|
# 19492 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 19500 "parsing/parser.ml"
|
|
|
|
in
|
|
let _2 =
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 19506 "parsing/parser.ml"
|
|
in
|
|
let _1 =
|
|
# 3571 "parsing/parser.mly"
|
|
( Fresh )
|
|
# 19511 "parsing/parser.ml"
|
|
in
|
|
|
|
# 1821 "parsing/parser.mly"
|
|
( let e = _5 in
|
|
let loc = Location.(e.pexp_loc.loc_start, e.pexp_loc.loc_end) in
|
|
(_4, _3,
|
|
Cfk_concrete (_1, ghexp ~loc (Pexp_poly (e, None)))), _2 )
|
|
# 19519 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : (Parsetree.expression) = Obj.magic _5 in
|
|
let _1_inlined2 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 19565 "parsing/parser.ml"
|
|
) = Obj.magic _1_inlined2 in
|
|
let _3 : (Asttypes.private_flag) = Obj.magic _3 in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : ((Asttypes.label Asttypes.loc * Asttypes.private_flag *
|
|
Parsetree.class_field_kind) *
|
|
Parsetree.attributes) = let _4 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let _1 =
|
|
# 3343 "parsing/parser.mly"
|
|
( _1 )
|
|
# 19580 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 19588 "parsing/parser.ml"
|
|
|
|
in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 19596 "parsing/parser.ml"
|
|
|
|
in
|
|
let _1 =
|
|
# 3572 "parsing/parser.mly"
|
|
( Override )
|
|
# 19602 "parsing/parser.ml"
|
|
in
|
|
|
|
# 1821 "parsing/parser.mly"
|
|
( let e = _5 in
|
|
let loc = Location.(e.pexp_loc.loc_start, e.pexp_loc.loc_end) in
|
|
(_4, _3,
|
|
Cfk_concrete (_1, ghexp ~loc (Pexp_poly (e, None)))), _2 )
|
|
# 19610 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _8;
|
|
MenhirLib.EngineTypes.startp = _startpos__8_;
|
|
MenhirLib.EngineTypes.endp = _endpos__8_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _7;
|
|
MenhirLib.EngineTypes.startp = _startpos__7_;
|
|
MenhirLib.EngineTypes.endp = _endpos__7_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _8 : (Parsetree.expression) = Obj.magic _8 in
|
|
let _7 : unit = Obj.magic _7 in
|
|
let _1_inlined2 : (Parsetree.core_type) = Obj.magic _1_inlined2 in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _1_inlined1 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 19671 "parsing/parser.ml"
|
|
) = Obj.magic _1_inlined1 in
|
|
let _3 : (Asttypes.private_flag) = Obj.magic _3 in
|
|
let _1 : (Parsetree.attributes) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__8_ in
|
|
let _v : ((Asttypes.label Asttypes.loc * Asttypes.private_flag *
|
|
Parsetree.class_field_kind) *
|
|
Parsetree.attributes) = let _6 =
|
|
let _1 = _1_inlined2 in
|
|
|
|
# 3114 "parsing/parser.mly"
|
|
( _1 )
|
|
# 19685 "parsing/parser.ml"
|
|
|
|
in
|
|
let _startpos__6_ = _startpos__1_inlined2_ in
|
|
let _4 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined1_, _startpos__1_inlined1_, _1_inlined1) in
|
|
let _1 =
|
|
# 3343 "parsing/parser.mly"
|
|
( _1 )
|
|
# 19694 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 19702 "parsing/parser.ml"
|
|
|
|
in
|
|
let _2 =
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 19708 "parsing/parser.ml"
|
|
in
|
|
let _1 =
|
|
# 3571 "parsing/parser.mly"
|
|
( Fresh )
|
|
# 19713 "parsing/parser.ml"
|
|
in
|
|
|
|
# 1827 "parsing/parser.mly"
|
|
( let poly_exp =
|
|
let loc = (_startpos__6_, _endpos__8_) in
|
|
ghexp ~loc (Pexp_poly(_8, Some _6)) in
|
|
(_4, _3, Cfk_concrete (_1, poly_exp)), _2 )
|
|
# 19721 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _8;
|
|
MenhirLib.EngineTypes.startp = _startpos__8_;
|
|
MenhirLib.EngineTypes.endp = _endpos__8_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _7;
|
|
MenhirLib.EngineTypes.startp = _startpos__7_;
|
|
MenhirLib.EngineTypes.endp = _endpos__7_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _8 : (Parsetree.expression) = Obj.magic _8 in
|
|
let _7 : unit = Obj.magic _7 in
|
|
let _1_inlined3 : (Parsetree.core_type) = Obj.magic _1_inlined3 in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _1_inlined2 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 19788 "parsing/parser.ml"
|
|
) = Obj.magic _1_inlined2 in
|
|
let _3 : (Asttypes.private_flag) = Obj.magic _3 in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__8_ in
|
|
let _v : ((Asttypes.label Asttypes.loc * Asttypes.private_flag *
|
|
Parsetree.class_field_kind) *
|
|
Parsetree.attributes) = let _6 =
|
|
let _1 = _1_inlined3 in
|
|
|
|
# 3114 "parsing/parser.mly"
|
|
( _1 )
|
|
# 19803 "parsing/parser.ml"
|
|
|
|
in
|
|
let _startpos__6_ = _startpos__1_inlined3_ in
|
|
let _4 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let _1 =
|
|
# 3343 "parsing/parser.mly"
|
|
( _1 )
|
|
# 19812 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 19820 "parsing/parser.ml"
|
|
|
|
in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 19828 "parsing/parser.ml"
|
|
|
|
in
|
|
let _1 =
|
|
# 3572 "parsing/parser.mly"
|
|
( Override )
|
|
# 19834 "parsing/parser.ml"
|
|
in
|
|
|
|
# 1827 "parsing/parser.mly"
|
|
( let poly_exp =
|
|
let loc = (_startpos__6_, _endpos__8_) in
|
|
ghexp ~loc (Pexp_poly(_8, Some _6)) in
|
|
(_4, _3, Cfk_concrete (_1, poly_exp)), _2 )
|
|
# 19842 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _11;
|
|
MenhirLib.EngineTypes.startp = _startpos__11_;
|
|
MenhirLib.EngineTypes.endp = _endpos__11_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _10;
|
|
MenhirLib.EngineTypes.startp = _startpos__10_;
|
|
MenhirLib.EngineTypes.endp = _endpos__10_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _9;
|
|
MenhirLib.EngineTypes.startp = _startpos__9_;
|
|
MenhirLib.EngineTypes.endp = _endpos__9_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _8;
|
|
MenhirLib.EngineTypes.startp = _startpos__8_;
|
|
MenhirLib.EngineTypes.endp = _endpos__8_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _6;
|
|
MenhirLib.EngineTypes.startp = _startpos__6_;
|
|
MenhirLib.EngineTypes.endp = _endpos__6_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _11 : (Parsetree.expression) = Obj.magic _11 in
|
|
let _10 : unit = Obj.magic _10 in
|
|
let _9 : (Parsetree.core_type) = Obj.magic _9 in
|
|
let _8 : unit = Obj.magic _8 in
|
|
let xs : (string Asttypes.loc list) = Obj.magic xs in
|
|
let _6 : unit = Obj.magic _6 in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _1_inlined1 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 19924 "parsing/parser.ml"
|
|
) = Obj.magic _1_inlined1 in
|
|
let _3 : (Asttypes.private_flag) = Obj.magic _3 in
|
|
let _1 : (Parsetree.attributes) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__11_ in
|
|
let _v : ((Asttypes.label Asttypes.loc * Asttypes.private_flag *
|
|
Parsetree.class_field_kind) *
|
|
Parsetree.attributes) = let _7 =
|
|
# 2364 "parsing/parser.mly"
|
|
( xs )
|
|
# 19936 "parsing/parser.ml"
|
|
in
|
|
let _startpos__7_ = _startpos_xs_ in
|
|
let _4 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined1_, _startpos__1_inlined1_, _1_inlined1) in
|
|
let _1 =
|
|
# 3343 "parsing/parser.mly"
|
|
( _1 )
|
|
# 19944 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 19952 "parsing/parser.ml"
|
|
|
|
in
|
|
let _startpos__4_ = _startpos__1_inlined1_ in
|
|
let _2 =
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 19959 "parsing/parser.ml"
|
|
in
|
|
let (_endpos__2_, _startpos__2_) = (_endpos__1_, _startpos__1_) in
|
|
let _1 =
|
|
# 3571 "parsing/parser.mly"
|
|
( Fresh )
|
|
# 19965 "parsing/parser.ml"
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos__0_, _endpos__0_) in
|
|
let _endpos = _endpos__11_ in
|
|
let _symbolstartpos = if _startpos__1_ != _endpos__1_ then
|
|
_startpos__1_
|
|
else
|
|
if _startpos__2_ != _endpos__2_ then
|
|
_startpos__2_
|
|
else
|
|
if _startpos__3_ != _endpos__3_ then
|
|
_startpos__3_
|
|
else
|
|
_startpos__4_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1833 "parsing/parser.mly"
|
|
( let poly_exp_loc = (_startpos__7_, _endpos__11_) in
|
|
let poly_exp =
|
|
let exp, poly =
|
|
(* it seems odd to use the global ~loc here while poly_exp_loc
|
|
is tighter, but this is what ocamlyacc does;
|
|
TODO improve parser.mly *)
|
|
wrap_type_annotation ~loc:_sloc _7 _9 _11 in
|
|
ghexp ~loc:poly_exp_loc (Pexp_poly(exp, Some poly)) in
|
|
(_4, _3,
|
|
Cfk_concrete (_1, poly_exp)), _2 )
|
|
# 19992 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _11;
|
|
MenhirLib.EngineTypes.startp = _startpos__11_;
|
|
MenhirLib.EngineTypes.endp = _endpos__11_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _10;
|
|
MenhirLib.EngineTypes.startp = _startpos__10_;
|
|
MenhirLib.EngineTypes.endp = _endpos__10_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _9;
|
|
MenhirLib.EngineTypes.startp = _startpos__9_;
|
|
MenhirLib.EngineTypes.endp = _endpos__9_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _8;
|
|
MenhirLib.EngineTypes.startp = _startpos__8_;
|
|
MenhirLib.EngineTypes.endp = _endpos__8_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _6;
|
|
MenhirLib.EngineTypes.startp = _startpos__6_;
|
|
MenhirLib.EngineTypes.endp = _endpos__6_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _11 : (Parsetree.expression) = Obj.magic _11 in
|
|
let _10 : unit = Obj.magic _10 in
|
|
let _9 : (Parsetree.core_type) = Obj.magic _9 in
|
|
let _8 : unit = Obj.magic _8 in
|
|
let xs : (string Asttypes.loc list) = Obj.magic xs in
|
|
let _6 : unit = Obj.magic _6 in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _1_inlined2 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 20080 "parsing/parser.ml"
|
|
) = Obj.magic _1_inlined2 in
|
|
let _3 : (Asttypes.private_flag) = Obj.magic _3 in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__11_ in
|
|
let _v : ((Asttypes.label Asttypes.loc * Asttypes.private_flag *
|
|
Parsetree.class_field_kind) *
|
|
Parsetree.attributes) = let _7 =
|
|
# 2364 "parsing/parser.mly"
|
|
( xs )
|
|
# 20093 "parsing/parser.ml"
|
|
in
|
|
let _startpos__7_ = _startpos_xs_ in
|
|
let _4 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let _1 =
|
|
# 3343 "parsing/parser.mly"
|
|
( _1 )
|
|
# 20101 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 20109 "parsing/parser.ml"
|
|
|
|
in
|
|
let _startpos__4_ = _startpos__1_inlined2_ in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 20118 "parsing/parser.ml"
|
|
|
|
in
|
|
let (_endpos__2_, _startpos__2_) = (_endpos__1_inlined1_, _startpos__1_inlined1_) in
|
|
let _1 =
|
|
# 3572 "parsing/parser.mly"
|
|
( Override )
|
|
# 20125 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__11_ in
|
|
let _symbolstartpos = if _startpos__1_ != _endpos__1_ then
|
|
_startpos__1_
|
|
else
|
|
if _startpos__2_ != _endpos__2_ then
|
|
_startpos__2_
|
|
else
|
|
if _startpos__3_ != _endpos__3_ then
|
|
_startpos__3_
|
|
else
|
|
_startpos__4_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1833 "parsing/parser.mly"
|
|
( let poly_exp_loc = (_startpos__7_, _endpos__11_) in
|
|
let poly_exp =
|
|
let exp, poly =
|
|
(* it seems odd to use the global ~loc here while poly_exp_loc
|
|
is tighter, but this is what ocamlyacc does;
|
|
TODO improve parser.mly *)
|
|
wrap_type_annotation ~loc:_sloc _7 _9 _11 in
|
|
ghexp ~loc:poly_exp_loc (Pexp_poly(exp, Some poly)) in
|
|
(_4, _3,
|
|
Cfk_concrete (_1, poly_exp)), _2 )
|
|
# 20151 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (
|
|
# 688 "parsing/parser.mly"
|
|
(string)
|
|
# 20172 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Longident.t) =
|
|
# 3450 "parsing/parser.mly"
|
|
( Lident _1 )
|
|
# 20180 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : (
|
|
# 688 "parsing/parser.mly"
|
|
(string)
|
|
# 20213 "parsing/parser.ml"
|
|
) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Longident.t) =
|
|
# 3451 "parsing/parser.mly"
|
|
( Ldot(_1, _3) )
|
|
# 20223 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let _3 : (Longident.t) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__4_ in
|
|
let _v : (Longident.t) = let _endpos = _endpos__4_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 3453 "parsing/parser.mly"
|
|
( lapply ~loc:_sloc _1 _3 )
|
|
# 20272 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Longident.t) = let _loc__3_ = (_startpos__3_, _endpos__3_) in
|
|
|
|
# 3455 "parsing/parser.mly"
|
|
( expecting _loc__3_ "module path" )
|
|
# 20312 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (
|
|
# 688 "parsing/parser.mly"
|
|
(string)
|
|
# 20333 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Longident.t) =
|
|
# 3446 "parsing/parser.mly"
|
|
( Lident _1 )
|
|
# 20341 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : (
|
|
# 688 "parsing/parser.mly"
|
|
(string)
|
|
# 20374 "parsing/parser.ml"
|
|
) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Longident.t) =
|
|
# 3447 "parsing/parser.mly"
|
|
( Ldot(_1, _3) )
|
|
# 20384 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = me;
|
|
MenhirLib.EngineTypes.startp = _startpos_me_;
|
|
MenhirLib.EngineTypes.endp = _endpos_me_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let me : (Parsetree.module_expr) = Obj.magic me in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_me_ in
|
|
let _v : (Parsetree.module_expr) =
|
|
# 1323 "parsing/parser.mly"
|
|
( me )
|
|
# 20416 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = me;
|
|
MenhirLib.EngineTypes.startp = _startpos_me_;
|
|
MenhirLib.EngineTypes.endp = _endpos_me_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = mty;
|
|
MenhirLib.EngineTypes.startp = _startpos_mty_;
|
|
MenhirLib.EngineTypes.endp = _endpos_mty_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let me : (Parsetree.module_expr) = Obj.magic me in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let mty : (Parsetree.module_type) = Obj.magic mty in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_me_ in
|
|
let _v : (Parsetree.module_expr) = let _1 =
|
|
let _1 =
|
|
# 1326 "parsing/parser.mly"
|
|
( Pmod_constraint(me, mty) )
|
|
# 20463 "parsing/parser.ml"
|
|
in
|
|
let _endpos__1_ = _endpos_me_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 835 "parsing/parser.mly"
|
|
( mkmod ~loc:_sloc _1 )
|
|
# 20472 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1329 "parsing/parser.mly"
|
|
( _1 )
|
|
# 20478 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = body;
|
|
MenhirLib.EngineTypes.startp = _startpos_body_;
|
|
MenhirLib.EngineTypes.endp = _endpos_body_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = arg;
|
|
MenhirLib.EngineTypes.startp = _startpos_arg_;
|
|
MenhirLib.EngineTypes.endp = _endpos_arg_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let body : (Parsetree.module_expr) = Obj.magic body in
|
|
let arg : (Parsetree.functor_parameter) = Obj.magic arg in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_arg_ in
|
|
let _endpos = _endpos_body_ in
|
|
let _v : (Parsetree.module_expr) = let _1 =
|
|
let _1 =
|
|
# 1328 "parsing/parser.mly"
|
|
( Pmod_functor(arg, body) )
|
|
# 20511 "parsing/parser.ml"
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_body_, _startpos_arg_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 835 "parsing/parser.mly"
|
|
( mkmod ~loc:_sloc _1 )
|
|
# 20520 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1329 "parsing/parser.mly"
|
|
( _1 )
|
|
# 20526 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = mty;
|
|
MenhirLib.EngineTypes.startp = _startpos_mty_;
|
|
MenhirLib.EngineTypes.endp = _endpos_mty_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let mty : (Parsetree.module_type) = Obj.magic mty in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_mty_ in
|
|
let _v : (Parsetree.module_type) =
|
|
# 1566 "parsing/parser.mly"
|
|
( mty )
|
|
# 20558 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = body;
|
|
MenhirLib.EngineTypes.startp = _startpos_body_;
|
|
MenhirLib.EngineTypes.endp = _endpos_body_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = arg;
|
|
MenhirLib.EngineTypes.startp = _startpos_arg_;
|
|
MenhirLib.EngineTypes.endp = _endpos_arg_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let body : (Parsetree.module_type) = Obj.magic body in
|
|
let arg : (Parsetree.functor_parameter) = Obj.magic arg in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_arg_ in
|
|
let _endpos = _endpos_body_ in
|
|
let _v : (Parsetree.module_type) = let _1 =
|
|
let _1 =
|
|
# 1569 "parsing/parser.mly"
|
|
( Pmty_functor(arg, body) )
|
|
# 20591 "parsing/parser.ml"
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_body_, _startpos_arg_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 837 "parsing/parser.mly"
|
|
( mkmty ~loc:_sloc _1 )
|
|
# 20600 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1571 "parsing/parser.mly"
|
|
( _1 )
|
|
# 20606 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = s;
|
|
MenhirLib.EngineTypes.startp = _startpos_s_;
|
|
MenhirLib.EngineTypes.endp = _endpos_s_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let s : (Parsetree.structure) = Obj.magic s in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__4_ in
|
|
let _v : (Parsetree.module_expr) = let attrs =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 20654 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__4_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1162 "parsing/parser.mly"
|
|
( mkmod ~loc:_sloc ~attrs (Pmod_structure s) )
|
|
# 20663 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let _3 : (Parsetree.structure) = Obj.magic _3 in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__4_ in
|
|
let _v : (Parsetree.module_expr) = let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 20711 "parsing/parser.ml"
|
|
|
|
in
|
|
let _loc__4_ = (_startpos__4_, _endpos__4_) in
|
|
let _loc__1_ = (_startpos__1_, _endpos__1_) in
|
|
|
|
# 1164 "parsing/parser.mly"
|
|
( unclosed "struct" _loc__1_ "end" _loc__4_ )
|
|
# 20719 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = me;
|
|
MenhirLib.EngineTypes.startp = _startpos_me_;
|
|
MenhirLib.EngineTypes.endp = _endpos_me_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let me : (Parsetree.module_expr) = Obj.magic me in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let _1_inlined2 : (Parsetree.functor_parameter list) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_me_ in
|
|
let _v : (Parsetree.module_expr) = let args =
|
|
let _1 = _1_inlined2 in
|
|
|
|
# 1128 "parsing/parser.mly"
|
|
( _1 )
|
|
# 20774 "parsing/parser.ml"
|
|
|
|
in
|
|
let attrs =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 20782 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_me_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1166 "parsing/parser.mly"
|
|
( wrap_mod_attrs ~loc:_sloc attrs (
|
|
List.fold_left (fun acc arg ->
|
|
mkmod ~loc:_sloc (Pmod_functor (arg, acc))
|
|
) me args
|
|
) )
|
|
# 20795 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = me;
|
|
MenhirLib.EngineTypes.startp = _startpos_me_;
|
|
MenhirLib.EngineTypes.endp = _endpos_me_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let me : (Parsetree.module_expr) = Obj.magic me in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_me_ in
|
|
let _endpos = _endpos_me_ in
|
|
let _v : (Parsetree.module_expr) =
|
|
# 1172 "parsing/parser.mly"
|
|
( me )
|
|
# 20820 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = attr;
|
|
MenhirLib.EngineTypes.startp = _startpos_attr_;
|
|
MenhirLib.EngineTypes.endp = _endpos_attr_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = me;
|
|
MenhirLib.EngineTypes.startp = _startpos_me_;
|
|
MenhirLib.EngineTypes.endp = _endpos_me_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let attr : (Parsetree.attribute) = Obj.magic attr in
|
|
let me : (Parsetree.module_expr) = Obj.magic me in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_me_ in
|
|
let _endpos = _endpos_attr_ in
|
|
let _v : (Parsetree.module_expr) =
|
|
# 1174 "parsing/parser.mly"
|
|
( Mod.attr me attr )
|
|
# 20852 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.module_expr) = let _1 =
|
|
let _1 =
|
|
let x =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 20883 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1178 "parsing/parser.mly"
|
|
( Pmod_ident x )
|
|
# 20889 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 835 "parsing/parser.mly"
|
|
( mkmod ~loc:_sloc _1 )
|
|
# 20898 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1190 "parsing/parser.mly"
|
|
( _1 )
|
|
# 20904 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = me2;
|
|
MenhirLib.EngineTypes.startp = _startpos_me2_;
|
|
MenhirLib.EngineTypes.endp = _endpos_me2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = me1;
|
|
MenhirLib.EngineTypes.startp = _startpos_me1_;
|
|
MenhirLib.EngineTypes.endp = _endpos_me1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let me2 : (Parsetree.module_expr) = Obj.magic me2 in
|
|
let me1 : (Parsetree.module_expr) = Obj.magic me1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_me1_ in
|
|
let _endpos = _endpos_me2_ in
|
|
let _v : (Parsetree.module_expr) = let _1 =
|
|
let _1 =
|
|
# 1181 "parsing/parser.mly"
|
|
( Pmod_apply(me1, me2) )
|
|
# 20937 "parsing/parser.ml"
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_me2_, _startpos_me1_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 835 "parsing/parser.mly"
|
|
( mkmod ~loc:_sloc _1 )
|
|
# 20946 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1190 "parsing/parser.mly"
|
|
( _1 )
|
|
# 20952 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = me1;
|
|
MenhirLib.EngineTypes.startp = _startpos_me1_;
|
|
MenhirLib.EngineTypes.endp = _endpos_me1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let me1 : (Parsetree.module_expr) = Obj.magic me1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_me1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.module_expr) = let _1 =
|
|
let _1 =
|
|
let _endpos = _endpos__3_ in
|
|
let _symbolstartpos = _startpos_me1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1184 "parsing/parser.mly"
|
|
( (* TODO review mkmod location *)
|
|
Pmod_apply(me1, mkmod ~loc:_sloc (Pmod_structure [])) )
|
|
# 20997 "parsing/parser.ml"
|
|
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos__3_, _startpos_me1_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 835 "parsing/parser.mly"
|
|
( mkmod ~loc:_sloc _1 )
|
|
# 21007 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1190 "parsing/parser.mly"
|
|
( _1 )
|
|
# 21013 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = ex;
|
|
MenhirLib.EngineTypes.startp = _startpos_ex_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ex_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let ex : (Parsetree.extension) = Obj.magic ex in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_ex_ in
|
|
let _endpos = _endpos_ex_ in
|
|
let _v : (Parsetree.module_expr) = let _1 =
|
|
let _1 =
|
|
# 1188 "parsing/parser.mly"
|
|
( Pmod_extension ex )
|
|
# 21039 "parsing/parser.ml"
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_ex_, _startpos_ex_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 835 "parsing/parser.mly"
|
|
( mkmod ~loc:_sloc _1 )
|
|
# 21048 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1190 "parsing/parser.mly"
|
|
( _1 )
|
|
# 21054 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let x : (
|
|
# 688 "parsing/parser.mly"
|
|
(string)
|
|
# 21075 "parsing/parser.ml"
|
|
) = Obj.magic x in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_x_ in
|
|
let _endpos = _endpos_x_ in
|
|
let _v : (string option) =
|
|
# 1145 "parsing/parser.mly"
|
|
( Some x )
|
|
# 21083 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string option) =
|
|
# 1148 "parsing/parser.mly"
|
|
( None )
|
|
# 21108 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined4;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = ext;
|
|
MenhirLib.EngineTypes.startp = _startpos_ext_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ext_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined4 : (Parsetree.attributes) = Obj.magic _1_inlined4 in
|
|
let _1_inlined3 : (Longident.t) = Obj.magic _1_inlined3 in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _1_inlined2 : (
|
|
# 688 "parsing/parser.mly"
|
|
(string)
|
|
# 21168 "parsing/parser.ml"
|
|
) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let ext : (string Asttypes.loc option) = Obj.magic ext in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined4_ in
|
|
let _v : (Parsetree.module_substitution * string Asttypes.loc option) = let attrs2 =
|
|
let _1 = _1_inlined4 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 21181 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_attrs2_ = _endpos__1_inlined4_ in
|
|
let body =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined3_, _startpos__1_inlined3_, _1_inlined3) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 21193 "parsing/parser.ml"
|
|
|
|
in
|
|
let uid =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 21204 "parsing/parser.ml"
|
|
|
|
in
|
|
let attrs1 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 21212 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_attrs2_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1601 "parsing/parser.mly"
|
|
(
|
|
let attrs = attrs1 @ attrs2 in
|
|
let loc = make_loc _sloc in
|
|
let docs = symbol_docs _sloc in
|
|
Ms.mk uid body ~attrs ~loc ~docs, ext
|
|
)
|
|
# 21226 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _6;
|
|
MenhirLib.EngineTypes.startp = _startpos__6_;
|
|
MenhirLib.EngineTypes.endp = _endpos__6_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _6 : unit = Obj.magic _6 in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _1_inlined2 : (
|
|
# 688 "parsing/parser.mly"
|
|
(string)
|
|
# 21279 "parsing/parser.ml"
|
|
) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _2 : (string Asttypes.loc option) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__6_ in
|
|
let _v : (Parsetree.module_substitution * string Asttypes.loc option) = let _4 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 21295 "parsing/parser.ml"
|
|
|
|
in
|
|
let _3 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 21303 "parsing/parser.ml"
|
|
|
|
in
|
|
let _loc__6_ = (_startpos__6_, _endpos__6_) in
|
|
|
|
# 1608 "parsing/parser.mly"
|
|
( expecting _loc__6_ "module path" )
|
|
# 21310 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = s;
|
|
MenhirLib.EngineTypes.startp = _startpos_s_;
|
|
MenhirLib.EngineTypes.endp = _endpos_s_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let s : (Parsetree.signature) = Obj.magic s in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__4_ in
|
|
let _v : (Parsetree.module_type) = let attrs =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 21358 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__4_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1454 "parsing/parser.mly"
|
|
( mkmty ~loc:_sloc ~attrs (Pmty_signature s) )
|
|
# 21367 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let _3 : (Parsetree.signature) = Obj.magic _3 in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__4_ in
|
|
let _v : (Parsetree.module_type) = let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 21415 "parsing/parser.ml"
|
|
|
|
in
|
|
let _loc__4_ = (_startpos__4_, _endpos__4_) in
|
|
let _loc__1_ = (_startpos__1_, _endpos__1_) in
|
|
|
|
# 1456 "parsing/parser.mly"
|
|
( unclosed "sig" _loc__1_ "end" _loc__4_ )
|
|
# 21423 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = mty;
|
|
MenhirLib.EngineTypes.startp = _startpos_mty_;
|
|
MenhirLib.EngineTypes.endp = _endpos_mty_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let mty : (Parsetree.module_type) = Obj.magic mty in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let _1_inlined2 : (Parsetree.functor_parameter list) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_mty_ in
|
|
let _v : (Parsetree.module_type) = let args =
|
|
let _1 = _1_inlined2 in
|
|
|
|
# 1128 "parsing/parser.mly"
|
|
( _1 )
|
|
# 21478 "parsing/parser.ml"
|
|
|
|
in
|
|
let attrs =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 21486 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_mty_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1460 "parsing/parser.mly"
|
|
( wrap_mty_attrs ~loc:_sloc attrs (
|
|
List.fold_left (fun acc arg ->
|
|
mkmty ~loc:_sloc (Pmty_functor (arg, acc))
|
|
) mty args
|
|
) )
|
|
# 21499 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : (Parsetree.module_expr) = Obj.magic _5 in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.module_type) = let _4 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 21554 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__5_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1466 "parsing/parser.mly"
|
|
( mkmty ~loc:_sloc ~attrs:_4 (Pmty_typeof _5) )
|
|
# 21563 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : (Parsetree.module_type) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.module_type) =
|
|
# 1468 "parsing/parser.mly"
|
|
( _2 )
|
|
# 21602 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : (Parsetree.module_type) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.module_type) = let _loc__3_ = (_startpos__3_, _endpos__3_) in
|
|
let _loc__1_ = (_startpos__1_, _endpos__1_) in
|
|
|
|
# 1470 "parsing/parser.mly"
|
|
( unclosed "(" _loc__1_ ")" _loc__3_ )
|
|
# 21643 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : (Parsetree.attribute) = Obj.magic _2 in
|
|
let _1 : (Parsetree.module_type) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.module_type) =
|
|
# 1472 "parsing/parser.mly"
|
|
( Mty.attr _1 _2 )
|
|
# 21675 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.module_type) = let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 21706 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1475 "parsing/parser.mly"
|
|
( Pmty_ident _1 )
|
|
# 21712 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 837 "parsing/parser.mly"
|
|
( mkmty ~loc:_sloc _1 )
|
|
# 21721 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1486 "parsing/parser.mly"
|
|
( _1 )
|
|
# 21727 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : (Parsetree.module_type) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.module_type) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.module_type) = let _1 =
|
|
let _1 =
|
|
# 1478 "parsing/parser.mly"
|
|
( Pmty_functor(Named (mknoloc None, _1), _3) )
|
|
# 21767 "parsing/parser.ml"
|
|
in
|
|
let _endpos__1_ = _endpos__3_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 837 "parsing/parser.mly"
|
|
( mkmty ~loc:_sloc _1 )
|
|
# 21776 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1486 "parsing/parser.mly"
|
|
( _1 )
|
|
# 21782 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let xs : (Parsetree.with_constraint list) = Obj.magic xs in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.module_type) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_xs_ in
|
|
let _v : (Parsetree.module_type) = let _1 =
|
|
let _1 =
|
|
let _3 =
|
|
let xs =
|
|
# 253 "menhir/standard.mly"
|
|
( List.rev xs )
|
|
# 21824 "parsing/parser.ml"
|
|
in
|
|
|
|
# 926 "parsing/parser.mly"
|
|
( xs )
|
|
# 21829 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1480 "parsing/parser.mly"
|
|
( Pmty_with(_1, _3) )
|
|
# 21835 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos_xs_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 837 "parsing/parser.mly"
|
|
( mkmty ~loc:_sloc _1 )
|
|
# 21845 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1486 "parsing/parser.mly"
|
|
( _1 )
|
|
# 21851 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.extension) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.module_type) = let _1 =
|
|
let _1 =
|
|
# 1484 "parsing/parser.mly"
|
|
( Pmty_extension _1 )
|
|
# 21877 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 837 "parsing/parser.mly"
|
|
( mkmty ~loc:_sloc _1 )
|
|
# 21885 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1486 "parsing/parser.mly"
|
|
( _1 )
|
|
# 21891 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = typ;
|
|
MenhirLib.EngineTypes.startp = _startpos_typ_;
|
|
MenhirLib.EngineTypes.endp = _endpos_typ_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = ext;
|
|
MenhirLib.EngineTypes.startp = _startpos_ext_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ext_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined3 : (Parsetree.attributes) = Obj.magic _1_inlined3 in
|
|
let typ : (Parsetree.module_type option) = Obj.magic typ in
|
|
let _1_inlined2 : (Asttypes.label) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let ext : (string Asttypes.loc option) = Obj.magic ext in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined3_ in
|
|
let _v : (Parsetree.module_type_declaration * string Asttypes.loc option) = let attrs2 =
|
|
let _1 = _1_inlined3 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 21960 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_attrs2_ = _endpos__1_inlined3_ in
|
|
let id =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 21972 "parsing/parser.ml"
|
|
|
|
in
|
|
let attrs1 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 21980 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_attrs2_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1400 "parsing/parser.mly"
|
|
(
|
|
let attrs = attrs1 @ attrs2 in
|
|
let loc = make_loc _sloc in
|
|
let docs = symbol_docs _sloc in
|
|
Mtd.mk id ?typ ~attrs ~loc ~docs, ext
|
|
)
|
|
# 21994 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Asttypes.label) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Longident.t) =
|
|
# 3458 "parsing/parser.mly"
|
|
( Lident _1 )
|
|
# 22019 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : (Asttypes.label) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Longident.t) =
|
|
# 3459 "parsing/parser.mly"
|
|
( Ldot(_1, _3) )
|
|
# 22058 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _endpos = _startpos in
|
|
let _v : (Asttypes.mutable_flag) =
|
|
# 3528 "parsing/parser.mly"
|
|
( Immutable )
|
|
# 22076 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Asttypes.mutable_flag) =
|
|
# 3529 "parsing/parser.mly"
|
|
( Mutable )
|
|
# 22101 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _endpos = _startpos in
|
|
let _v : (Asttypes.mutable_flag * Asttypes.virtual_flag) =
|
|
# 3537 "parsing/parser.mly"
|
|
( Immutable, Concrete )
|
|
# 22119 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Asttypes.mutable_flag * Asttypes.virtual_flag) =
|
|
# 3539 "parsing/parser.mly"
|
|
( Mutable, Concrete )
|
|
# 22144 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Asttypes.mutable_flag * Asttypes.virtual_flag) =
|
|
# 3541 "parsing/parser.mly"
|
|
( Immutable, Virtual )
|
|
# 22169 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Asttypes.mutable_flag * Asttypes.virtual_flag) =
|
|
# 3544 "parsing/parser.mly"
|
|
( Mutable, Virtual )
|
|
# 22201 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Asttypes.mutable_flag * Asttypes.virtual_flag) =
|
|
# 3544 "parsing/parser.mly"
|
|
( Mutable, Virtual )
|
|
# 22233 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : (Asttypes.label) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Asttypes.label) =
|
|
# 3501 "parsing/parser.mly"
|
|
( _2 )
|
|
# 22265 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 22286 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string Asttypes.loc list) = let x =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 22298 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 221 "menhir/standard.mly"
|
|
( [ x ] )
|
|
# 22304 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let xs : (string Asttypes.loc list) = Obj.magic xs in
|
|
let _1 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 22332 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_xs_ in
|
|
let _v : (string Asttypes.loc list) = let x =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 22344 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 223 "menhir/standard.mly"
|
|
( x :: xs )
|
|
# 22350 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = s;
|
|
MenhirLib.EngineTypes.startp = _startpos_s_;
|
|
MenhirLib.EngineTypes.endp = _endpos_s_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let s : (
|
|
# 680 "parsing/parser.mly"
|
|
(string * string option)
|
|
# 22371 "parsing/parser.ml"
|
|
) = Obj.magic s in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_s_ in
|
|
let _endpos = _endpos_s_ in
|
|
let _v : (string list) = let x =
|
|
# 3497 "parsing/parser.mly"
|
|
( fst s )
|
|
# 22379 "parsing/parser.ml"
|
|
in
|
|
|
|
# 221 "menhir/standard.mly"
|
|
( [ x ] )
|
|
# 22384 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = s;
|
|
MenhirLib.EngineTypes.startp = _startpos_s_;
|
|
MenhirLib.EngineTypes.endp = _endpos_s_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let xs : (string list) = Obj.magic xs in
|
|
let s : (
|
|
# 680 "parsing/parser.mly"
|
|
(string * string option)
|
|
# 22412 "parsing/parser.ml"
|
|
) = Obj.magic s in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_s_ in
|
|
let _endpos = _endpos_xs_ in
|
|
let _v : (string list) = let x =
|
|
# 3497 "parsing/parser.mly"
|
|
( fst s )
|
|
# 22420 "parsing/parser.ml"
|
|
in
|
|
|
|
# 223 "menhir/standard.mly"
|
|
( x :: xs )
|
|
# 22425 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = ty;
|
|
MenhirLib.EngineTypes.startp = _startpos_ty_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ty_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let ty : (Parsetree.core_type) = Obj.magic ty in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_ty_ in
|
|
let _endpos = _endpos_ty_ in
|
|
let _v : (Parsetree.type_kind * Asttypes.private_flag * Parsetree.core_type option) = let priv =
|
|
# 3524 "parsing/parser.mly"
|
|
( Public )
|
|
# 22450 "parsing/parser.ml"
|
|
in
|
|
|
|
# 2846 "parsing/parser.mly"
|
|
( (Ptype_abstract, priv, Some ty) )
|
|
# 22455 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = ty;
|
|
MenhirLib.EngineTypes.startp = _startpos_ty_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ty_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let ty : (Parsetree.core_type) = Obj.magic ty in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_ty_ in
|
|
let _v : (Parsetree.type_kind * Asttypes.private_flag * Parsetree.core_type option) = let priv =
|
|
# 3525 "parsing/parser.mly"
|
|
( Private )
|
|
# 22487 "parsing/parser.ml"
|
|
in
|
|
|
|
# 2846 "parsing/parser.mly"
|
|
( (Ptype_abstract, priv, Some ty) )
|
|
# 22492 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = cs;
|
|
MenhirLib.EngineTypes.startp = _startpos_cs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_cs_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let cs : (Parsetree.constructor_declaration list) = Obj.magic cs in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_cs_ in
|
|
let _endpos = _endpos_cs_ in
|
|
let _v : (Parsetree.type_kind * Asttypes.private_flag * Parsetree.core_type option) = let priv =
|
|
# 3524 "parsing/parser.mly"
|
|
( Public )
|
|
# 22517 "parsing/parser.ml"
|
|
in
|
|
let oty =
|
|
let _1 =
|
|
# 124 "menhir/standard.mly"
|
|
( None )
|
|
# 22523 "parsing/parser.ml"
|
|
in
|
|
|
|
# 2862 "parsing/parser.mly"
|
|
( _1 )
|
|
# 22528 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2850 "parsing/parser.mly"
|
|
( (Ptype_variant cs, priv, oty) )
|
|
# 22534 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = cs;
|
|
MenhirLib.EngineTypes.startp = _startpos_cs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_cs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let cs : (Parsetree.constructor_declaration list) = Obj.magic cs in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_cs_ in
|
|
let _v : (Parsetree.type_kind * Asttypes.private_flag * Parsetree.core_type option) = let priv =
|
|
# 3525 "parsing/parser.mly"
|
|
( Private )
|
|
# 22566 "parsing/parser.ml"
|
|
in
|
|
let oty =
|
|
let _1 =
|
|
# 124 "menhir/standard.mly"
|
|
( None )
|
|
# 22572 "parsing/parser.ml"
|
|
in
|
|
|
|
# 2862 "parsing/parser.mly"
|
|
( _1 )
|
|
# 22577 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2850 "parsing/parser.mly"
|
|
( (Ptype_variant cs, priv, oty) )
|
|
# 22583 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = cs;
|
|
MenhirLib.EngineTypes.startp = _startpos_cs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_cs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let cs : (Parsetree.constructor_declaration list) = Obj.magic cs in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let x : (Parsetree.core_type) = Obj.magic x in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_x_ in
|
|
let _endpos = _endpos_cs_ in
|
|
let _v : (Parsetree.type_kind * Asttypes.private_flag * Parsetree.core_type option) = let priv =
|
|
# 3524 "parsing/parser.mly"
|
|
( Public )
|
|
# 22622 "parsing/parser.ml"
|
|
in
|
|
let oty =
|
|
let _1 =
|
|
let x =
|
|
# 191 "menhir/standard.mly"
|
|
( x )
|
|
# 22629 "parsing/parser.ml"
|
|
in
|
|
|
|
# 126 "menhir/standard.mly"
|
|
( Some x )
|
|
# 22634 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2862 "parsing/parser.mly"
|
|
( _1 )
|
|
# 22640 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2850 "parsing/parser.mly"
|
|
( (Ptype_variant cs, priv, oty) )
|
|
# 22646 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = cs;
|
|
MenhirLib.EngineTypes.startp = _startpos_cs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_cs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let cs : (Parsetree.constructor_declaration list) = Obj.magic cs in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let x : (Parsetree.core_type) = Obj.magic x in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_x_ in
|
|
let _endpos = _endpos_cs_ in
|
|
let _v : (Parsetree.type_kind * Asttypes.private_flag * Parsetree.core_type option) = let priv =
|
|
# 3525 "parsing/parser.mly"
|
|
( Private )
|
|
# 22692 "parsing/parser.ml"
|
|
in
|
|
let oty =
|
|
let _1 =
|
|
let x =
|
|
# 191 "menhir/standard.mly"
|
|
( x )
|
|
# 22699 "parsing/parser.ml"
|
|
in
|
|
|
|
# 126 "menhir/standard.mly"
|
|
( Some x )
|
|
# 22704 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2862 "parsing/parser.mly"
|
|
( _1 )
|
|
# 22710 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2850 "parsing/parser.mly"
|
|
( (Ptype_variant cs, priv, oty) )
|
|
# 22716 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__3_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.type_kind * Asttypes.private_flag * Parsetree.core_type option) = let priv =
|
|
# 3524 "parsing/parser.mly"
|
|
( Public )
|
|
# 22741 "parsing/parser.ml"
|
|
in
|
|
let oty =
|
|
let _1 =
|
|
# 124 "menhir/standard.mly"
|
|
( None )
|
|
# 22747 "parsing/parser.ml"
|
|
in
|
|
|
|
# 2862 "parsing/parser.mly"
|
|
( _1 )
|
|
# 22752 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2854 "parsing/parser.mly"
|
|
( (Ptype_open, priv, oty) )
|
|
# 22758 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.type_kind * Asttypes.private_flag * Parsetree.core_type option) = let priv =
|
|
# 3525 "parsing/parser.mly"
|
|
( Private )
|
|
# 22790 "parsing/parser.ml"
|
|
in
|
|
let oty =
|
|
let _1 =
|
|
# 124 "menhir/standard.mly"
|
|
( None )
|
|
# 22796 "parsing/parser.ml"
|
|
in
|
|
|
|
# 2862 "parsing/parser.mly"
|
|
( _1 )
|
|
# 22801 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2854 "parsing/parser.mly"
|
|
( (Ptype_open, priv, oty) )
|
|
# 22807 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let x : (Parsetree.core_type) = Obj.magic x in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_x_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.type_kind * Asttypes.private_flag * Parsetree.core_type option) = let priv =
|
|
# 3524 "parsing/parser.mly"
|
|
( Public )
|
|
# 22846 "parsing/parser.ml"
|
|
in
|
|
let oty =
|
|
let _1 =
|
|
let x =
|
|
# 191 "menhir/standard.mly"
|
|
( x )
|
|
# 22853 "parsing/parser.ml"
|
|
in
|
|
|
|
# 126 "menhir/standard.mly"
|
|
( Some x )
|
|
# 22858 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2862 "parsing/parser.mly"
|
|
( _1 )
|
|
# 22864 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2854 "parsing/parser.mly"
|
|
( (Ptype_open, priv, oty) )
|
|
# 22870 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let x : (Parsetree.core_type) = Obj.magic x in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_x_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.type_kind * Asttypes.private_flag * Parsetree.core_type option) = let priv =
|
|
# 3525 "parsing/parser.mly"
|
|
( Private )
|
|
# 22916 "parsing/parser.ml"
|
|
in
|
|
let oty =
|
|
let _1 =
|
|
let x =
|
|
# 191 "menhir/standard.mly"
|
|
( x )
|
|
# 22923 "parsing/parser.ml"
|
|
in
|
|
|
|
# 126 "menhir/standard.mly"
|
|
( Some x )
|
|
# 22928 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2862 "parsing/parser.mly"
|
|
( _1 )
|
|
# 22934 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2854 "parsing/parser.mly"
|
|
( (Ptype_open, priv, oty) )
|
|
# 22940 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = ls;
|
|
MenhirLib.EngineTypes.startp = _startpos_ls_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ls_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let ls : (Parsetree.label_declaration list) = Obj.magic ls in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__3_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.type_kind * Asttypes.private_flag * Parsetree.core_type option) = let priv =
|
|
# 3524 "parsing/parser.mly"
|
|
( Public )
|
|
# 22979 "parsing/parser.ml"
|
|
in
|
|
let oty =
|
|
let _1 =
|
|
# 124 "menhir/standard.mly"
|
|
( None )
|
|
# 22985 "parsing/parser.ml"
|
|
in
|
|
|
|
# 2862 "parsing/parser.mly"
|
|
( _1 )
|
|
# 22990 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2858 "parsing/parser.mly"
|
|
( (Ptype_record ls, priv, oty) )
|
|
# 22996 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = ls;
|
|
MenhirLib.EngineTypes.startp = _startpos_ls_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ls_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let ls : (Parsetree.label_declaration list) = Obj.magic ls in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.type_kind * Asttypes.private_flag * Parsetree.core_type option) = let priv =
|
|
# 3525 "parsing/parser.mly"
|
|
( Private )
|
|
# 23042 "parsing/parser.ml"
|
|
in
|
|
let oty =
|
|
let _1 =
|
|
# 124 "menhir/standard.mly"
|
|
( None )
|
|
# 23048 "parsing/parser.ml"
|
|
in
|
|
|
|
# 2862 "parsing/parser.mly"
|
|
( _1 )
|
|
# 23053 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2858 "parsing/parser.mly"
|
|
( (Ptype_record ls, priv, oty) )
|
|
# 23059 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = ls;
|
|
MenhirLib.EngineTypes.startp = _startpos_ls_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ls_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let ls : (Parsetree.label_declaration list) = Obj.magic ls in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let x : (Parsetree.core_type) = Obj.magic x in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_x_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.type_kind * Asttypes.private_flag * Parsetree.core_type option) = let priv =
|
|
# 3524 "parsing/parser.mly"
|
|
( Public )
|
|
# 23112 "parsing/parser.ml"
|
|
in
|
|
let oty =
|
|
let _1 =
|
|
let x =
|
|
# 191 "menhir/standard.mly"
|
|
( x )
|
|
# 23119 "parsing/parser.ml"
|
|
in
|
|
|
|
# 126 "menhir/standard.mly"
|
|
( Some x )
|
|
# 23124 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2862 "parsing/parser.mly"
|
|
( _1 )
|
|
# 23130 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2858 "parsing/parser.mly"
|
|
( (Ptype_record ls, priv, oty) )
|
|
# 23136 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = ls;
|
|
MenhirLib.EngineTypes.startp = _startpos_ls_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ls_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let ls : (Parsetree.label_declaration list) = Obj.magic ls in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let x : (Parsetree.core_type) = Obj.magic x in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_x_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.type_kind * Asttypes.private_flag * Parsetree.core_type option) = let priv =
|
|
# 3525 "parsing/parser.mly"
|
|
( Private )
|
|
# 23196 "parsing/parser.ml"
|
|
in
|
|
let oty =
|
|
let _1 =
|
|
let x =
|
|
# 191 "menhir/standard.mly"
|
|
( x )
|
|
# 23203 "parsing/parser.ml"
|
|
in
|
|
|
|
# 126 "menhir/standard.mly"
|
|
( Some x )
|
|
# 23208 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2862 "parsing/parser.mly"
|
|
( _1 )
|
|
# 23214 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2858 "parsing/parser.mly"
|
|
( (Ptype_record ls, priv, oty) )
|
|
# 23220 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = me;
|
|
MenhirLib.EngineTypes.startp = _startpos_me_;
|
|
MenhirLib.EngineTypes.endp = _endpos_me_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = ext;
|
|
MenhirLib.EngineTypes.startp = _startpos_ext_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ext_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let me : (Parsetree.module_expr) = Obj.magic me in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let ext : (string Asttypes.loc option) = Obj.magic ext in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined2_ in
|
|
let _v : (Parsetree.open_declaration * string Asttypes.loc option) = let attrs2 =
|
|
let _1 = _1_inlined2 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 23275 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_attrs2_ = _endpos__1_inlined2_ in
|
|
let attrs1 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 23284 "parsing/parser.ml"
|
|
|
|
in
|
|
let override =
|
|
# 3571 "parsing/parser.mly"
|
|
( Fresh )
|
|
# 23290 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos_attrs2_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1419 "parsing/parser.mly"
|
|
(
|
|
let attrs = attrs1 @ attrs2 in
|
|
let loc = make_loc _sloc in
|
|
let docs = symbol_docs _sloc in
|
|
Opn.mk me ~override ~attrs ~loc ~docs, ext
|
|
)
|
|
# 23303 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = me;
|
|
MenhirLib.EngineTypes.startp = _startpos_me_;
|
|
MenhirLib.EngineTypes.endp = _endpos_me_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = ext;
|
|
MenhirLib.EngineTypes.startp = _startpos_ext_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ext_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined3 : (Parsetree.attributes) = Obj.magic _1_inlined3 in
|
|
let me : (Parsetree.module_expr) = Obj.magic me in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let ext : (string Asttypes.loc option) = Obj.magic ext in
|
|
let _1_inlined1 : unit = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined3_ in
|
|
let _v : (Parsetree.open_declaration * string Asttypes.loc option) = let attrs2 =
|
|
let _1 = _1_inlined3 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 23365 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_attrs2_ = _endpos__1_inlined3_ in
|
|
let attrs1 =
|
|
let _1 = _1_inlined2 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 23374 "parsing/parser.ml"
|
|
|
|
in
|
|
let override =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3572 "parsing/parser.mly"
|
|
( Override )
|
|
# 23382 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_attrs2_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1419 "parsing/parser.mly"
|
|
(
|
|
let attrs = attrs1 @ attrs2 in
|
|
let loc = make_loc _sloc in
|
|
let docs = symbol_docs _sloc in
|
|
Opn.mk me ~override ~attrs ~loc ~docs, ext
|
|
)
|
|
# 23396 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = ext;
|
|
MenhirLib.EngineTypes.startp = _startpos_ext_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ext_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined3 : (Parsetree.attributes) = Obj.magic _1_inlined3 in
|
|
let _1_inlined2 : (Longident.t) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let ext : (string Asttypes.loc option) = Obj.magic ext in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined3_ in
|
|
let _v : (Parsetree.open_description * string Asttypes.loc option) = let attrs2 =
|
|
let _1 = _1_inlined3 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 23451 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_attrs2_ = _endpos__1_inlined3_ in
|
|
let id =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 23463 "parsing/parser.ml"
|
|
|
|
in
|
|
let attrs1 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 23471 "parsing/parser.ml"
|
|
|
|
in
|
|
let override =
|
|
# 3571 "parsing/parser.mly"
|
|
( Fresh )
|
|
# 23477 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos_attrs2_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1434 "parsing/parser.mly"
|
|
(
|
|
let attrs = attrs1 @ attrs2 in
|
|
let loc = make_loc _sloc in
|
|
let docs = symbol_docs _sloc in
|
|
Opn.mk id ~override ~attrs ~loc ~docs, ext
|
|
)
|
|
# 23490 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined4;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = ext;
|
|
MenhirLib.EngineTypes.startp = _startpos_ext_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ext_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined4 : (Parsetree.attributes) = Obj.magic _1_inlined4 in
|
|
let _1_inlined3 : (Longident.t) = Obj.magic _1_inlined3 in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let ext : (string Asttypes.loc option) = Obj.magic ext in
|
|
let _1_inlined1 : unit = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined4_ in
|
|
let _v : (Parsetree.open_description * string Asttypes.loc option) = let attrs2 =
|
|
let _1 = _1_inlined4 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 23552 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_attrs2_ = _endpos__1_inlined4_ in
|
|
let id =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined3_, _startpos__1_inlined3_, _1_inlined3) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 23564 "parsing/parser.ml"
|
|
|
|
in
|
|
let attrs1 =
|
|
let _1 = _1_inlined2 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 23572 "parsing/parser.ml"
|
|
|
|
in
|
|
let override =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3572 "parsing/parser.mly"
|
|
( Override )
|
|
# 23580 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_attrs2_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1434 "parsing/parser.mly"
|
|
(
|
|
let attrs = attrs1 @ attrs2 in
|
|
let loc = make_loc _sloc in
|
|
let docs = symbol_docs _sloc in
|
|
Opn.mk id ~override ~attrs ~loc ~docs, ext
|
|
)
|
|
# 23594 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (
|
|
# 666 "parsing/parser.mly"
|
|
(string)
|
|
# 23615 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3376 "parsing/parser.mly"
|
|
( _1 )
|
|
# 23623 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (
|
|
# 624 "parsing/parser.mly"
|
|
(string)
|
|
# 23644 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3377 "parsing/parser.mly"
|
|
( _1 )
|
|
# 23652 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (
|
|
# 625 "parsing/parser.mly"
|
|
(string)
|
|
# 23673 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3378 "parsing/parser.mly"
|
|
( _1 )
|
|
# 23681 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let _3 : (string) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (
|
|
# 623 "parsing/parser.mly"
|
|
(string)
|
|
# 23723 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__4_ in
|
|
let _v : (string) =
|
|
# 3379 "parsing/parser.mly"
|
|
( "."^ _1 ^"(" ^ _3 ^ ")" )
|
|
# 23731 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let _3 : (string) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (
|
|
# 623 "parsing/parser.mly"
|
|
(string)
|
|
# 23780 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (string) =
|
|
# 3380 "parsing/parser.mly"
|
|
( "."^ _1 ^ "(" ^ _3 ^ ")<-" )
|
|
# 23788 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let _3 : (string) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (
|
|
# 623 "parsing/parser.mly"
|
|
(string)
|
|
# 23830 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__4_ in
|
|
let _v : (string) =
|
|
# 3381 "parsing/parser.mly"
|
|
( "."^ _1 ^"[" ^ _3 ^ "]" )
|
|
# 23838 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let _3 : (string) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (
|
|
# 623 "parsing/parser.mly"
|
|
(string)
|
|
# 23887 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (string) =
|
|
# 3382 "parsing/parser.mly"
|
|
( "."^ _1 ^ "[" ^ _3 ^ "]<-" )
|
|
# 23895 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let _3 : (string) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (
|
|
# 623 "parsing/parser.mly"
|
|
(string)
|
|
# 23937 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__4_ in
|
|
let _v : (string) =
|
|
# 3383 "parsing/parser.mly"
|
|
( "."^ _1 ^"{" ^ _3 ^ "}" )
|
|
# 23945 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let _3 : (string) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (
|
|
# 623 "parsing/parser.mly"
|
|
(string)
|
|
# 23994 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (string) =
|
|
# 3384 "parsing/parser.mly"
|
|
( "."^ _1 ^ "{" ^ _3 ^ "}<-" )
|
|
# 24002 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (
|
|
# 677 "parsing/parser.mly"
|
|
(string)
|
|
# 24023 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3385 "parsing/parser.mly"
|
|
( _1 )
|
|
# 24031 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3386 "parsing/parser.mly"
|
|
( "!" )
|
|
# 24056 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = op;
|
|
MenhirLib.EngineTypes.startp = _startpos_op_;
|
|
MenhirLib.EngineTypes.endp = _endpos_op_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let op : (
|
|
# 618 "parsing/parser.mly"
|
|
(string)
|
|
# 24077 "parsing/parser.ml"
|
|
) = Obj.magic op in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_op_ in
|
|
let _endpos = _endpos_op_ in
|
|
let _v : (string) = let _1 =
|
|
# 3390 "parsing/parser.mly"
|
|
( op )
|
|
# 24085 "parsing/parser.ml"
|
|
in
|
|
|
|
# 3387 "parsing/parser.mly"
|
|
( _1 )
|
|
# 24090 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = op;
|
|
MenhirLib.EngineTypes.startp = _startpos_op_;
|
|
MenhirLib.EngineTypes.endp = _endpos_op_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let op : (
|
|
# 619 "parsing/parser.mly"
|
|
(string)
|
|
# 24111 "parsing/parser.ml"
|
|
) = Obj.magic op in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_op_ in
|
|
let _endpos = _endpos_op_ in
|
|
let _v : (string) = let _1 =
|
|
# 3391 "parsing/parser.mly"
|
|
( op )
|
|
# 24119 "parsing/parser.ml"
|
|
in
|
|
|
|
# 3387 "parsing/parser.mly"
|
|
( _1 )
|
|
# 24124 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = op;
|
|
MenhirLib.EngineTypes.startp = _startpos_op_;
|
|
MenhirLib.EngineTypes.endp = _endpos_op_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let op : (
|
|
# 620 "parsing/parser.mly"
|
|
(string)
|
|
# 24145 "parsing/parser.ml"
|
|
) = Obj.magic op in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_op_ in
|
|
let _endpos = _endpos_op_ in
|
|
let _v : (string) = let _1 =
|
|
# 3392 "parsing/parser.mly"
|
|
( op )
|
|
# 24153 "parsing/parser.ml"
|
|
in
|
|
|
|
# 3387 "parsing/parser.mly"
|
|
( _1 )
|
|
# 24158 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = op;
|
|
MenhirLib.EngineTypes.startp = _startpos_op_;
|
|
MenhirLib.EngineTypes.endp = _endpos_op_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let op : (
|
|
# 621 "parsing/parser.mly"
|
|
(string)
|
|
# 24179 "parsing/parser.ml"
|
|
) = Obj.magic op in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_op_ in
|
|
let _endpos = _endpos_op_ in
|
|
let _v : (string) = let _1 =
|
|
# 3393 "parsing/parser.mly"
|
|
( op )
|
|
# 24187 "parsing/parser.ml"
|
|
in
|
|
|
|
# 3387 "parsing/parser.mly"
|
|
( _1 )
|
|
# 24192 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = op;
|
|
MenhirLib.EngineTypes.startp = _startpos_op_;
|
|
MenhirLib.EngineTypes.endp = _endpos_op_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let op : (
|
|
# 622 "parsing/parser.mly"
|
|
(string)
|
|
# 24213 "parsing/parser.ml"
|
|
) = Obj.magic op in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_op_ in
|
|
let _endpos = _endpos_op_ in
|
|
let _v : (string) = let _1 =
|
|
# 3394 "parsing/parser.mly"
|
|
( op )
|
|
# 24221 "parsing/parser.ml"
|
|
in
|
|
|
|
# 3387 "parsing/parser.mly"
|
|
( _1 )
|
|
# 24226 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) = let _1 =
|
|
# 3395 "parsing/parser.mly"
|
|
("+")
|
|
# 24251 "parsing/parser.ml"
|
|
in
|
|
|
|
# 3387 "parsing/parser.mly"
|
|
( _1 )
|
|
# 24256 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) = let _1 =
|
|
# 3396 "parsing/parser.mly"
|
|
("+.")
|
|
# 24281 "parsing/parser.ml"
|
|
in
|
|
|
|
# 3387 "parsing/parser.mly"
|
|
( _1 )
|
|
# 24286 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) = let _1 =
|
|
# 3397 "parsing/parser.mly"
|
|
("+=")
|
|
# 24311 "parsing/parser.ml"
|
|
in
|
|
|
|
# 3387 "parsing/parser.mly"
|
|
( _1 )
|
|
# 24316 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) = let _1 =
|
|
# 3398 "parsing/parser.mly"
|
|
("-")
|
|
# 24341 "parsing/parser.ml"
|
|
in
|
|
|
|
# 3387 "parsing/parser.mly"
|
|
( _1 )
|
|
# 24346 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) = let _1 =
|
|
# 3399 "parsing/parser.mly"
|
|
("-.")
|
|
# 24371 "parsing/parser.ml"
|
|
in
|
|
|
|
# 3387 "parsing/parser.mly"
|
|
( _1 )
|
|
# 24376 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) = let _1 =
|
|
# 3400 "parsing/parser.mly"
|
|
("*")
|
|
# 24401 "parsing/parser.ml"
|
|
in
|
|
|
|
# 3387 "parsing/parser.mly"
|
|
( _1 )
|
|
# 24406 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) = let _1 =
|
|
# 3401 "parsing/parser.mly"
|
|
("%")
|
|
# 24431 "parsing/parser.ml"
|
|
in
|
|
|
|
# 3387 "parsing/parser.mly"
|
|
( _1 )
|
|
# 24436 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) = let _1 =
|
|
# 3402 "parsing/parser.mly"
|
|
("=")
|
|
# 24461 "parsing/parser.ml"
|
|
in
|
|
|
|
# 3387 "parsing/parser.mly"
|
|
( _1 )
|
|
# 24466 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) = let _1 =
|
|
# 3403 "parsing/parser.mly"
|
|
("<")
|
|
# 24491 "parsing/parser.ml"
|
|
in
|
|
|
|
# 3387 "parsing/parser.mly"
|
|
( _1 )
|
|
# 24496 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) = let _1 =
|
|
# 3404 "parsing/parser.mly"
|
|
(">")
|
|
# 24521 "parsing/parser.ml"
|
|
in
|
|
|
|
# 3387 "parsing/parser.mly"
|
|
( _1 )
|
|
# 24526 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) = let _1 =
|
|
# 3405 "parsing/parser.mly"
|
|
("or")
|
|
# 24551 "parsing/parser.ml"
|
|
in
|
|
|
|
# 3387 "parsing/parser.mly"
|
|
( _1 )
|
|
# 24556 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) = let _1 =
|
|
# 3406 "parsing/parser.mly"
|
|
("||")
|
|
# 24581 "parsing/parser.ml"
|
|
in
|
|
|
|
# 3387 "parsing/parser.mly"
|
|
( _1 )
|
|
# 24586 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) = let _1 =
|
|
# 3407 "parsing/parser.mly"
|
|
("&")
|
|
# 24611 "parsing/parser.ml"
|
|
in
|
|
|
|
# 3387 "parsing/parser.mly"
|
|
( _1 )
|
|
# 24616 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) = let _1 =
|
|
# 3408 "parsing/parser.mly"
|
|
("&&")
|
|
# 24641 "parsing/parser.ml"
|
|
in
|
|
|
|
# 3387 "parsing/parser.mly"
|
|
( _1 )
|
|
# 24646 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) = let _1 =
|
|
# 3409 "parsing/parser.mly"
|
|
(":=")
|
|
# 24671 "parsing/parser.ml"
|
|
in
|
|
|
|
# 3387 "parsing/parser.mly"
|
|
( _1 )
|
|
# 24676 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (bool) =
|
|
# 3294 "parsing/parser.mly"
|
|
( true )
|
|
# 24701 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _endpos = _startpos in
|
|
let _v : (bool) =
|
|
# 3295 "parsing/parser.mly"
|
|
( false )
|
|
# 24719 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _endpos = _startpos in
|
|
let _v : (unit option) =
|
|
# 114 "menhir/standard.mly"
|
|
( None )
|
|
# 24737 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let x : unit = Obj.magic x in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_x_ in
|
|
let _endpos = _endpos_x_ in
|
|
let _v : (unit option) =
|
|
# 116 "menhir/standard.mly"
|
|
( Some x )
|
|
# 24762 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _endpos = _startpos in
|
|
let _v : (unit option) =
|
|
# 114 "menhir/standard.mly"
|
|
( None )
|
|
# 24780 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let x : unit = Obj.magic x in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_x_ in
|
|
let _endpos = _endpos_x_ in
|
|
let _v : (unit option) =
|
|
# 116 "menhir/standard.mly"
|
|
( Some x )
|
|
# 24805 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _endpos = _startpos in
|
|
let _v : (string Asttypes.loc option) =
|
|
# 114 "menhir/standard.mly"
|
|
( None )
|
|
# 24823 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined1 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 24850 "parsing/parser.ml"
|
|
) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined1_ in
|
|
let _v : (string Asttypes.loc option) = let x =
|
|
let x =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined1_, _startpos__1_inlined1_, _1_inlined1) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 24865 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 183 "menhir/standard.mly"
|
|
( x )
|
|
# 24871 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 116 "menhir/standard.mly"
|
|
( Some x )
|
|
# 24877 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _endpos = _startpos in
|
|
let _v : (Parsetree.core_type option) =
|
|
# 114 "menhir/standard.mly"
|
|
( None )
|
|
# 24895 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let x : (Parsetree.core_type) = Obj.magic x in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_x_ in
|
|
let _v : (Parsetree.core_type option) = let x =
|
|
# 183 "menhir/standard.mly"
|
|
( x )
|
|
# 24927 "parsing/parser.ml"
|
|
in
|
|
|
|
# 116 "menhir/standard.mly"
|
|
( Some x )
|
|
# 24932 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _endpos = _startpos in
|
|
let _v : (Parsetree.expression option) =
|
|
# 114 "menhir/standard.mly"
|
|
( None )
|
|
# 24950 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let x : (Parsetree.expression) = Obj.magic x in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_x_ in
|
|
let _v : (Parsetree.expression option) = let x =
|
|
# 183 "menhir/standard.mly"
|
|
( x )
|
|
# 24982 "parsing/parser.ml"
|
|
in
|
|
|
|
# 116 "menhir/standard.mly"
|
|
( Some x )
|
|
# 24987 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _endpos = _startpos in
|
|
let _v : (Parsetree.module_type option) =
|
|
# 114 "menhir/standard.mly"
|
|
( None )
|
|
# 25005 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let x : (Parsetree.module_type) = Obj.magic x in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_x_ in
|
|
let _v : (Parsetree.module_type option) = let x =
|
|
# 183 "menhir/standard.mly"
|
|
( x )
|
|
# 25037 "parsing/parser.ml"
|
|
in
|
|
|
|
# 116 "menhir/standard.mly"
|
|
( Some x )
|
|
# 25042 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _endpos = _startpos in
|
|
let _v : (Parsetree.pattern option) =
|
|
# 114 "menhir/standard.mly"
|
|
( None )
|
|
# 25060 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let x : (Parsetree.pattern) = Obj.magic x in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_x_ in
|
|
let _v : (Parsetree.pattern option) = let x =
|
|
# 183 "menhir/standard.mly"
|
|
( x )
|
|
# 25092 "parsing/parser.ml"
|
|
in
|
|
|
|
# 116 "menhir/standard.mly"
|
|
( Some x )
|
|
# 25097 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _endpos = _startpos in
|
|
let _v : (Parsetree.expression option) =
|
|
# 114 "menhir/standard.mly"
|
|
( None )
|
|
# 25115 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let x : (Parsetree.expression) = Obj.magic x in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_x_ in
|
|
let _v : (Parsetree.expression option) = let x =
|
|
# 183 "menhir/standard.mly"
|
|
( x )
|
|
# 25147 "parsing/parser.ml"
|
|
in
|
|
|
|
# 116 "menhir/standard.mly"
|
|
( Some x )
|
|
# 25152 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _endpos = _startpos in
|
|
let _v : ((Parsetree.core_type option * Parsetree.core_type option) option) =
|
|
# 114 "menhir/standard.mly"
|
|
( None )
|
|
# 25170 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let x : (Parsetree.core_type option * Parsetree.core_type option) = Obj.magic x in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_x_ in
|
|
let _endpos = _endpos_x_ in
|
|
let _v : ((Parsetree.core_type option * Parsetree.core_type option) option) =
|
|
# 116 "menhir/standard.mly"
|
|
( Some x )
|
|
# 25195 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (
|
|
# 659 "parsing/parser.mly"
|
|
(string)
|
|
# 25216 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3583 "parsing/parser.mly"
|
|
( _1 )
|
|
# 25224 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 25258 "parsing/parser.ml"
|
|
) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (string) =
|
|
# 3584 "parsing/parser.mly"
|
|
( _2 )
|
|
# 25267 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = mty;
|
|
MenhirLib.EngineTypes.startp = _startpos_mty_;
|
|
MenhirLib.EngineTypes.endp = _endpos_mty_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = me;
|
|
MenhirLib.EngineTypes.startp = _startpos_me_;
|
|
MenhirLib.EngineTypes.endp = _endpos_me_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let mty : (Parsetree.module_type) = Obj.magic mty in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let me : (Parsetree.module_expr) = Obj.magic me in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.module_expr) = let _endpos = _endpos__5_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1199 "parsing/parser.mly"
|
|
( mkmod ~loc:_sloc (Pmod_constraint(me, mty)) )
|
|
# 25323 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _4 : (Parsetree.module_type) = Obj.magic _4 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : (Parsetree.module_expr) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.module_expr) = let _loc__5_ = (_startpos__5_, _endpos__5_) in
|
|
let _loc__1_ = (_startpos__1_, _endpos__1_) in
|
|
|
|
# 1201 "parsing/parser.mly"
|
|
( unclosed "(" _loc__1_ ")" _loc__5_ )
|
|
# 25378 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = me;
|
|
MenhirLib.EngineTypes.startp = _startpos_me_;
|
|
MenhirLib.EngineTypes.endp = _endpos_me_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let me : (Parsetree.module_expr) = Obj.magic me in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.module_expr) =
|
|
# 1204 "parsing/parser.mly"
|
|
( me (* TODO consider reloc *) )
|
|
# 25417 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : (Parsetree.module_expr) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.module_expr) = let _loc__3_ = (_startpos__3_, _endpos__3_) in
|
|
let _loc__1_ = (_startpos__1_, _endpos__1_) in
|
|
|
|
# 1206 "parsing/parser.mly"
|
|
( unclosed "(" _loc__1_ ")" _loc__3_ )
|
|
# 25458 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = e;
|
|
MenhirLib.EngineTypes.startp = _startpos_e_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let e : (Parsetree.expression) = Obj.magic e in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.module_expr) = let e =
|
|
# 1223 "parsing/parser.mly"
|
|
( e )
|
|
# 25511 "parsing/parser.ml"
|
|
in
|
|
let attrs =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 25518 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__5_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1210 "parsing/parser.mly"
|
|
( mkmod ~loc:_sloc ~attrs (Pmod_unpack e) )
|
|
# 25527 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = e;
|
|
MenhirLib.EngineTypes.startp = _startpos_e_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _1_inlined2 : (Parsetree.module_type) = Obj.magic _1_inlined2 in
|
|
let _2_inlined1 : unit = Obj.magic _2_inlined1 in
|
|
let e : (Parsetree.expression) = Obj.magic e in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.module_expr) = let e =
|
|
let (_endpos__1_, _startpos__1_, _1, _2) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2, _2_inlined1) in
|
|
let ty =
|
|
let _1 =
|
|
let _1 =
|
|
# 3270 "parsing/parser.mly"
|
|
( Ptyp_package (package_type_of_module_type _1) )
|
|
# 25598 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 829 "parsing/parser.mly"
|
|
( mktyp ~loc:_sloc _1 )
|
|
# 25606 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3271 "parsing/parser.mly"
|
|
( _1 )
|
|
# 25612 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_ty_ = _endpos__1_ in
|
|
let _endpos = _endpos_ty_ in
|
|
let _startpos = _startpos_e_ in
|
|
let _loc = (_startpos, _endpos) in
|
|
|
|
# 1225 "parsing/parser.mly"
|
|
( ghexp ~loc:_loc (Pexp_constraint (e, ty)) )
|
|
# 25622 "parsing/parser.ml"
|
|
|
|
in
|
|
let attrs =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 25630 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__5_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1210 "parsing/parser.mly"
|
|
( mkmod ~loc:_sloc ~attrs (Pmod_unpack e) )
|
|
# 25639 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = e;
|
|
MenhirLib.EngineTypes.startp = _startpos_e_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _1_inlined3 : (Parsetree.module_type) = Obj.magic _1_inlined3 in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let _1_inlined2 : (Parsetree.module_type) = Obj.magic _1_inlined2 in
|
|
let _2_inlined1 : unit = Obj.magic _2_inlined1 in
|
|
let e : (Parsetree.expression) = Obj.magic e in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.module_expr) = let e =
|
|
let (_endpos__1_inlined1_, _startpos__1_inlined1_, _endpos__1_, _startpos__1_, _1_inlined1, _1, _2) = (_endpos__1_inlined3_, _startpos__1_inlined3_, _endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined3, _1_inlined2, _2_inlined1) in
|
|
let ty2 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined1_, _startpos__1_inlined1_, _1_inlined1) in
|
|
let _1 =
|
|
let _1 =
|
|
# 3270 "parsing/parser.mly"
|
|
( Ptyp_package (package_type_of_module_type _1) )
|
|
# 25725 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 829 "parsing/parser.mly"
|
|
( mktyp ~loc:_sloc _1 )
|
|
# 25733 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3271 "parsing/parser.mly"
|
|
( _1 )
|
|
# 25739 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_ty2_ = _endpos__1_inlined1_ in
|
|
let ty1 =
|
|
let _1 =
|
|
let _1 =
|
|
# 3270 "parsing/parser.mly"
|
|
( Ptyp_package (package_type_of_module_type _1) )
|
|
# 25748 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 829 "parsing/parser.mly"
|
|
( mktyp ~loc:_sloc _1 )
|
|
# 25756 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3271 "parsing/parser.mly"
|
|
( _1 )
|
|
# 25762 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_ty2_ in
|
|
let _startpos = _startpos_e_ in
|
|
let _loc = (_startpos, _endpos) in
|
|
|
|
# 1227 "parsing/parser.mly"
|
|
( ghexp ~loc:_loc (Pexp_coerce (e, Some ty1, ty2)) )
|
|
# 25771 "parsing/parser.ml"
|
|
|
|
in
|
|
let attrs =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 25779 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__5_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1210 "parsing/parser.mly"
|
|
( mkmod ~loc:_sloc ~attrs (Pmod_unpack e) )
|
|
# 25788 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = e;
|
|
MenhirLib.EngineTypes.startp = _startpos_e_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _1_inlined2 : (Parsetree.module_type) = Obj.magic _1_inlined2 in
|
|
let _2_inlined1 : unit = Obj.magic _2_inlined1 in
|
|
let e : (Parsetree.expression) = Obj.magic e in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.module_expr) = let e =
|
|
let (_endpos__1_, _startpos__1_, _1, _2) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2, _2_inlined1) in
|
|
let ty2 =
|
|
let _1 =
|
|
let _1 =
|
|
# 3270 "parsing/parser.mly"
|
|
( Ptyp_package (package_type_of_module_type _1) )
|
|
# 25859 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 829 "parsing/parser.mly"
|
|
( mktyp ~loc:_sloc _1 )
|
|
# 25867 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3271 "parsing/parser.mly"
|
|
( _1 )
|
|
# 25873 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_ty2_ = _endpos__1_ in
|
|
let _endpos = _endpos_ty2_ in
|
|
let _startpos = _startpos_e_ in
|
|
let _loc = (_startpos, _endpos) in
|
|
|
|
# 1229 "parsing/parser.mly"
|
|
( ghexp ~loc:_loc (Pexp_coerce (e, None, ty2)) )
|
|
# 25883 "parsing/parser.ml"
|
|
|
|
in
|
|
let attrs =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 25891 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__5_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1210 "parsing/parser.mly"
|
|
( mkmod ~loc:_sloc ~attrs (Pmod_unpack e) )
|
|
# 25900 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _6;
|
|
MenhirLib.EngineTypes.startp = _startpos__6_;
|
|
MenhirLib.EngineTypes.endp = _endpos__6_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _6 : unit = Obj.magic _6 in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _4 : (Parsetree.expression) = Obj.magic _4 in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__6_ in
|
|
let _v : (Parsetree.module_expr) = let _3 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 25962 "parsing/parser.ml"
|
|
|
|
in
|
|
let _loc__6_ = (_startpos__6_, _endpos__6_) in
|
|
let _loc__1_ = (_startpos__1_, _endpos__1_) in
|
|
|
|
# 1212 "parsing/parser.mly"
|
|
( unclosed "(" _loc__1_ ")" _loc__6_ )
|
|
# 25970 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _6;
|
|
MenhirLib.EngineTypes.startp = _startpos__6_;
|
|
MenhirLib.EngineTypes.endp = _endpos__6_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _6 : unit = Obj.magic _6 in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _4 : (Parsetree.expression) = Obj.magic _4 in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__6_ in
|
|
let _v : (Parsetree.module_expr) = let _3 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 26032 "parsing/parser.ml"
|
|
|
|
in
|
|
let _loc__6_ = (_startpos__6_, _endpos__6_) in
|
|
let _loc__1_ = (_startpos__1_, _endpos__1_) in
|
|
|
|
# 1214 "parsing/parser.mly"
|
|
( unclosed "(" _loc__1_ ")" _loc__6_ )
|
|
# 26040 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _4 : (Parsetree.expression) = Obj.magic _4 in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.module_expr) = let _3 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 26095 "parsing/parser.ml"
|
|
|
|
in
|
|
let _loc__5_ = (_startpos__5_, _endpos__5_) in
|
|
let _loc__1_ = (_startpos__1_, _endpos__1_) in
|
|
|
|
# 1216 "parsing/parser.mly"
|
|
( unclosed "(" _loc__1_ ")" _loc__5_ )
|
|
# 26103 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.core_type) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (
|
|
# 776 "parsing/parser.mly"
|
|
(Parsetree.core_type)
|
|
# 26135 "parsing/parser.ml"
|
|
) =
|
|
# 1109 "parsing/parser.mly"
|
|
( _1 )
|
|
# 26139 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.expression) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (
|
|
# 778 "parsing/parser.mly"
|
|
(Parsetree.expression)
|
|
# 26171 "parsing/parser.ml"
|
|
) =
|
|
# 1114 "parsing/parser.mly"
|
|
( _1 )
|
|
# 26175 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.pattern) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (
|
|
# 780 "parsing/parser.mly"
|
|
(Parsetree.pattern)
|
|
# 26207 "parsing/parser.ml"
|
|
) =
|
|
# 1119 "parsing/parser.mly"
|
|
( _1 )
|
|
# 26211 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : (Parsetree.pattern) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.pattern) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _endpos = _endpos__3_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _loc__2_ = (_startpos__2_, _endpos__2_) in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2581 "parsing/parser.mly"
|
|
( mkpat_cons ~loc:_sloc _loc__2_ (ghpat ~loc:_sloc (Ppat_tuple[_1;_3])) )
|
|
# 26255 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2569 "parsing/parser.mly"
|
|
( _1 )
|
|
# 26261 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : (Parsetree.attribute) = Obj.magic _2 in
|
|
let _1 : (Parsetree.pattern) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
# 2583 "parsing/parser.mly"
|
|
( Pat.attr _1 _2 )
|
|
# 26293 "parsing/parser.ml"
|
|
in
|
|
|
|
# 2569 "parsing/parser.mly"
|
|
( _1 )
|
|
# 26298 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.pattern) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
# 2585 "parsing/parser.mly"
|
|
( _1 )
|
|
# 26323 "parsing/parser.ml"
|
|
in
|
|
|
|
# 2569 "parsing/parser.mly"
|
|
( _1 )
|
|
# 26328 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined1 : (string) = Obj.magic _1_inlined1 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.pattern) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined1_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let _3 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined1_, _startpos__1_inlined1_, _1_inlined1) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 26375 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2588 "parsing/parser.mly"
|
|
( Ppat_alias(_1, _3) )
|
|
# 26381 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__1_inlined1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 827 "parsing/parser.mly"
|
|
( mkpat ~loc:_sloc _1 )
|
|
# 26391 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2599 "parsing/parser.mly"
|
|
( _1 )
|
|
# 26397 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2569 "parsing/parser.mly"
|
|
( _1 )
|
|
# 26403 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.pattern) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let _loc__3_ = (_startpos__3_, _endpos__3_) in
|
|
|
|
# 2590 "parsing/parser.mly"
|
|
( expecting _loc__3_ "identifier" )
|
|
# 26446 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__3_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 827 "parsing/parser.mly"
|
|
( mkpat ~loc:_sloc _1 )
|
|
# 26456 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2599 "parsing/parser.mly"
|
|
( _1 )
|
|
# 26462 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2569 "parsing/parser.mly"
|
|
( _1 )
|
|
# 26468 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.pattern list) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
# 2592 "parsing/parser.mly"
|
|
( Ppat_tuple(List.rev _1) )
|
|
# 26495 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 827 "parsing/parser.mly"
|
|
( mkpat ~loc:_sloc _1 )
|
|
# 26503 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2599 "parsing/parser.mly"
|
|
( _1 )
|
|
# 26509 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2569 "parsing/parser.mly"
|
|
( _1 )
|
|
# 26515 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.pattern) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let _loc__3_ = (_startpos__3_, _endpos__3_) in
|
|
|
|
# 2594 "parsing/parser.mly"
|
|
( expecting _loc__3_ "pattern" )
|
|
# 26558 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__3_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 827 "parsing/parser.mly"
|
|
( mkpat ~loc:_sloc _1 )
|
|
# 26568 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2599 "parsing/parser.mly"
|
|
( _1 )
|
|
# 26574 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2569 "parsing/parser.mly"
|
|
( _1 )
|
|
# 26580 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : (Parsetree.pattern) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.pattern) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
# 2596 "parsing/parser.mly"
|
|
( Ppat_or(_1, _3) )
|
|
# 26621 "parsing/parser.ml"
|
|
in
|
|
let _endpos__1_ = _endpos__3_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 827 "parsing/parser.mly"
|
|
( mkpat ~loc:_sloc _1 )
|
|
# 26630 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2599 "parsing/parser.mly"
|
|
( _1 )
|
|
# 26636 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2569 "parsing/parser.mly"
|
|
( _1 )
|
|
# 26642 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.pattern) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let _loc__3_ = (_startpos__3_, _endpos__3_) in
|
|
|
|
# 2598 "parsing/parser.mly"
|
|
( expecting _loc__3_ "pattern" )
|
|
# 26685 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__3_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 827 "parsing/parser.mly"
|
|
( mkpat ~loc:_sloc _1 )
|
|
# 26695 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2599 "parsing/parser.mly"
|
|
( _1 )
|
|
# 26701 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2569 "parsing/parser.mly"
|
|
( _1 )
|
|
# 26707 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : (Parsetree.pattern) = Obj.magic _3 in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (string Asttypes.loc option) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.pattern) = let _2 =
|
|
let (_1_inlined1, _1) = (_1_inlined2, _1_inlined1) in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 26757 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3680 "parsing/parser.mly"
|
|
( _1, _2 )
|
|
# 26763 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__3_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2571 "parsing/parser.mly"
|
|
( mkpat_attrs ~loc:_sloc (Ppat_exception _3) _2)
|
|
# 26772 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : (Parsetree.pattern) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.pattern list) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.pattern list) =
|
|
# 2695 "parsing/parser.mly"
|
|
( _3 :: _1 )
|
|
# 26811 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : (Parsetree.pattern) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.pattern) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.pattern list) =
|
|
# 2696 "parsing/parser.mly"
|
|
( [_3; _1] )
|
|
# 26850 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.pattern) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.pattern list) = let _loc__3_ = (_startpos__3_, _endpos__3_) in
|
|
|
|
# 2697 "parsing/parser.mly"
|
|
( expecting _loc__3_ "pattern" )
|
|
# 26890 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : (Parsetree.pattern) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.pattern list) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.pattern list) =
|
|
# 2695 "parsing/parser.mly"
|
|
( _3 :: _1 )
|
|
# 26929 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : (Parsetree.pattern) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.pattern) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.pattern list) =
|
|
# 2696 "parsing/parser.mly"
|
|
( [_3; _1] )
|
|
# 26968 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.pattern) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.pattern list) = let _loc__3_ = (_startpos__3_, _endpos__3_) in
|
|
|
|
# 2697 "parsing/parser.mly"
|
|
( expecting _loc__3_ "pattern" )
|
|
# 27008 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.pattern) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.pattern) =
|
|
# 2604 "parsing/parser.mly"
|
|
( _1 )
|
|
# 27033 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : (Parsetree.pattern) = Obj.magic _2 in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 27071 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2607 "parsing/parser.mly"
|
|
( Ppat_construct(_1, Some _2) )
|
|
# 27077 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__2_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 827 "parsing/parser.mly"
|
|
( mkpat ~loc:_sloc _1 )
|
|
# 27087 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2610 "parsing/parser.mly"
|
|
( _1 )
|
|
# 27093 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : (Parsetree.pattern) = Obj.magic _2 in
|
|
let _1 : (Asttypes.label) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _1 =
|
|
# 2609 "parsing/parser.mly"
|
|
( Ppat_variant(_1, Some _2) )
|
|
# 27126 "parsing/parser.ml"
|
|
in
|
|
let _endpos__1_ = _endpos__2_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 827 "parsing/parser.mly"
|
|
( mkpat ~loc:_sloc _1 )
|
|
# 27135 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2610 "parsing/parser.mly"
|
|
( _1 )
|
|
# 27141 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : (Parsetree.pattern) = Obj.magic _3 in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (string Asttypes.loc option) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.pattern) = let _2 =
|
|
let (_1_inlined1, _1) = (_1_inlined2, _1_inlined1) in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 27191 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3680 "parsing/parser.mly"
|
|
( _1, _2 )
|
|
# 27197 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__3_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2612 "parsing/parser.mly"
|
|
( mkpat_attrs ~loc:_sloc (Ppat_lazy _3) _2)
|
|
# 27206 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : (Parsetree.pattern) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.pattern) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _endpos = _endpos__3_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _loc__2_ = (_startpos__2_, _endpos__2_) in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2581 "parsing/parser.mly"
|
|
( mkpat_cons ~loc:_sloc _loc__2_ (ghpat ~loc:_sloc (Ppat_tuple[_1;_3])) )
|
|
# 27250 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2576 "parsing/parser.mly"
|
|
( _1 )
|
|
# 27256 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : (Parsetree.attribute) = Obj.magic _2 in
|
|
let _1 : (Parsetree.pattern) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
# 2583 "parsing/parser.mly"
|
|
( Pat.attr _1 _2 )
|
|
# 27288 "parsing/parser.ml"
|
|
in
|
|
|
|
# 2576 "parsing/parser.mly"
|
|
( _1 )
|
|
# 27293 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.pattern) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
# 2585 "parsing/parser.mly"
|
|
( _1 )
|
|
# 27318 "parsing/parser.ml"
|
|
in
|
|
|
|
# 2576 "parsing/parser.mly"
|
|
( _1 )
|
|
# 27323 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined1 : (string) = Obj.magic _1_inlined1 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.pattern) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined1_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let _3 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined1_, _startpos__1_inlined1_, _1_inlined1) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 27370 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2588 "parsing/parser.mly"
|
|
( Ppat_alias(_1, _3) )
|
|
# 27376 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__1_inlined1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 827 "parsing/parser.mly"
|
|
( mkpat ~loc:_sloc _1 )
|
|
# 27386 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2599 "parsing/parser.mly"
|
|
( _1 )
|
|
# 27392 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2576 "parsing/parser.mly"
|
|
( _1 )
|
|
# 27398 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.pattern) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let _loc__3_ = (_startpos__3_, _endpos__3_) in
|
|
|
|
# 2590 "parsing/parser.mly"
|
|
( expecting _loc__3_ "identifier" )
|
|
# 27441 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__3_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 827 "parsing/parser.mly"
|
|
( mkpat ~loc:_sloc _1 )
|
|
# 27451 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2599 "parsing/parser.mly"
|
|
( _1 )
|
|
# 27457 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2576 "parsing/parser.mly"
|
|
( _1 )
|
|
# 27463 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.pattern list) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
# 2592 "parsing/parser.mly"
|
|
( Ppat_tuple(List.rev _1) )
|
|
# 27490 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 827 "parsing/parser.mly"
|
|
( mkpat ~loc:_sloc _1 )
|
|
# 27498 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2599 "parsing/parser.mly"
|
|
( _1 )
|
|
# 27504 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2576 "parsing/parser.mly"
|
|
( _1 )
|
|
# 27510 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.pattern) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let _loc__3_ = (_startpos__3_, _endpos__3_) in
|
|
|
|
# 2594 "parsing/parser.mly"
|
|
( expecting _loc__3_ "pattern" )
|
|
# 27553 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__3_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 827 "parsing/parser.mly"
|
|
( mkpat ~loc:_sloc _1 )
|
|
# 27563 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2599 "parsing/parser.mly"
|
|
( _1 )
|
|
# 27569 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2576 "parsing/parser.mly"
|
|
( _1 )
|
|
# 27575 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : (Parsetree.pattern) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.pattern) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
# 2596 "parsing/parser.mly"
|
|
( Ppat_or(_1, _3) )
|
|
# 27616 "parsing/parser.ml"
|
|
in
|
|
let _endpos__1_ = _endpos__3_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 827 "parsing/parser.mly"
|
|
( mkpat ~loc:_sloc _1 )
|
|
# 27625 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2599 "parsing/parser.mly"
|
|
( _1 )
|
|
# 27631 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2576 "parsing/parser.mly"
|
|
( _1 )
|
|
# 27637 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.pattern) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let _loc__3_ = (_startpos__3_, _endpos__3_) in
|
|
|
|
# 2598 "parsing/parser.mly"
|
|
( expecting _loc__3_ "pattern" )
|
|
# 27680 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__3_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 827 "parsing/parser.mly"
|
|
( mkpat ~loc:_sloc _1 )
|
|
# 27690 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2599 "parsing/parser.mly"
|
|
( _1 )
|
|
# 27696 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2576 "parsing/parser.mly"
|
|
( _1 )
|
|
# 27702 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 27723 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 27737 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2054 "parsing/parser.mly"
|
|
( Ppat_var _1 )
|
|
# 27743 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 827 "parsing/parser.mly"
|
|
( mkpat ~loc:_sloc _1 )
|
|
# 27752 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2056 "parsing/parser.mly"
|
|
( _1 )
|
|
# 27758 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _1 =
|
|
# 2055 "parsing/parser.mly"
|
|
( Ppat_any )
|
|
# 27784 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 827 "parsing/parser.mly"
|
|
( mkpat ~loc:_sloc _1 )
|
|
# 27792 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2056 "parsing/parser.mly"
|
|
( _1 )
|
|
# 27798 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.structure) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.payload) =
|
|
# 3689 "parsing/parser.mly"
|
|
( PStr _1 )
|
|
# 27823 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : (Parsetree.signature) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.payload) =
|
|
# 3690 "parsing/parser.mly"
|
|
( PSig _2 )
|
|
# 27855 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : (Parsetree.core_type) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.payload) =
|
|
# 3691 "parsing/parser.mly"
|
|
( PTyp _2 )
|
|
# 27887 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : (Parsetree.pattern) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.payload) =
|
|
# 3692 "parsing/parser.mly"
|
|
( PPat (_2, None) )
|
|
# 27919 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _4 : (Parsetree.expression) = Obj.magic _4 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : (Parsetree.pattern) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__4_ in
|
|
let _v : (Parsetree.payload) =
|
|
# 3693 "parsing/parser.mly"
|
|
( PPat (_2, Some _4) )
|
|
# 27965 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.core_type) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.core_type) =
|
|
# 3108 "parsing/parser.mly"
|
|
( _1 )
|
|
# 27990 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : (Parsetree.core_type) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let xs : (Asttypes.label Asttypes.loc list) = Obj.magic xs in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_xs_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.core_type) = let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let xs =
|
|
# 253 "menhir/standard.mly"
|
|
( List.rev xs )
|
|
# 28033 "parsing/parser.ml"
|
|
in
|
|
|
|
# 894 "parsing/parser.mly"
|
|
( xs )
|
|
# 28038 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3100 "parsing/parser.mly"
|
|
( _1 )
|
|
# 28044 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3104 "parsing/parser.mly"
|
|
( Ptyp_poly(_1, _3) )
|
|
# 28050 "parsing/parser.ml"
|
|
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos__3_, _startpos_xs_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 829 "parsing/parser.mly"
|
|
( mktyp ~loc:_sloc _1 )
|
|
# 28060 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3110 "parsing/parser.mly"
|
|
( _1 )
|
|
# 28066 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.core_type) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.core_type) = let _1 =
|
|
# 3139 "parsing/parser.mly"
|
|
( _1 )
|
|
# 28091 "parsing/parser.ml"
|
|
in
|
|
|
|
# 3108 "parsing/parser.mly"
|
|
( _1 )
|
|
# 28096 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.core_type) = Obj.magic _1 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let xs : (Asttypes.label Asttypes.loc list) = Obj.magic xs in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_xs_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.core_type) = let _1 =
|
|
let _1 =
|
|
let _3 =
|
|
# 3139 "parsing/parser.mly"
|
|
( _1 )
|
|
# 28137 "parsing/parser.ml"
|
|
in
|
|
let _1 =
|
|
let _1 =
|
|
let xs =
|
|
# 253 "menhir/standard.mly"
|
|
( List.rev xs )
|
|
# 28144 "parsing/parser.ml"
|
|
in
|
|
|
|
# 894 "parsing/parser.mly"
|
|
( xs )
|
|
# 28149 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3100 "parsing/parser.mly"
|
|
( _1 )
|
|
# 28155 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3104 "parsing/parser.mly"
|
|
( Ptyp_poly(_1, _3) )
|
|
# 28161 "parsing/parser.ml"
|
|
|
|
in
|
|
let _startpos__1_ = _startpos_xs_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 829 "parsing/parser.mly"
|
|
( mktyp ~loc:_sloc _1 )
|
|
# 28171 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3110 "parsing/parser.mly"
|
|
( _1 )
|
|
# 28177 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let _3 : (Parsetree.payload) = Obj.magic _3 in
|
|
let _2 : (string Asttypes.loc) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__4_ in
|
|
let _v : (Parsetree.attribute) = let _endpos = _endpos__4_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 3656 "parsing/parser.mly"
|
|
( Attr.mk ~loc:(make_loc _sloc) _2 _3 )
|
|
# 28226 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = prim;
|
|
MenhirLib.EngineTypes.startp = _startpos_prim_;
|
|
MenhirLib.EngineTypes.endp = _endpos_prim_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _7;
|
|
MenhirLib.EngineTypes.startp = _startpos__7_;
|
|
MenhirLib.EngineTypes.endp = _endpos__7_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = ty;
|
|
MenhirLib.EngineTypes.startp = _startpos_ty_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ty_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = ext;
|
|
MenhirLib.EngineTypes.startp = _startpos_ext_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ext_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined3 : (Parsetree.attributes) = Obj.magic _1_inlined3 in
|
|
let prim : (string list) = Obj.magic prim in
|
|
let _7 : unit = Obj.magic _7 in
|
|
let ty : (Parsetree.core_type) = Obj.magic ty in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _1_inlined2 : (string) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let ext : (string Asttypes.loc option) = Obj.magic ext in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined3_ in
|
|
let _v : (Parsetree.value_description * string Asttypes.loc option) = let attrs2 =
|
|
let _1 = _1_inlined3 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 28309 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_attrs2_ = _endpos__1_inlined3_ in
|
|
let id =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 28321 "parsing/parser.ml"
|
|
|
|
in
|
|
let attrs1 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 28329 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_attrs2_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2756 "parsing/parser.mly"
|
|
( let attrs = attrs1 @ attrs2 in
|
|
let loc = make_loc _sloc in
|
|
let docs = symbol_docs _sloc in
|
|
Val.mk id ty ~prim ~attrs ~loc ~docs,
|
|
ext )
|
|
# 28342 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _endpos = _startpos in
|
|
let _v : (Asttypes.private_flag) = let _1 =
|
|
# 3524 "parsing/parser.mly"
|
|
( Public )
|
|
# 28360 "parsing/parser.ml"
|
|
in
|
|
|
|
# 3521 "parsing/parser.mly"
|
|
( _1 )
|
|
# 28365 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Asttypes.private_flag) = let _1 =
|
|
# 3525 "parsing/parser.mly"
|
|
( Private )
|
|
# 28390 "parsing/parser.ml"
|
|
in
|
|
|
|
# 3521 "parsing/parser.mly"
|
|
( _1 )
|
|
# 28395 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _endpos = _startpos in
|
|
let _v : (Asttypes.private_flag * Asttypes.virtual_flag) =
|
|
# 3547 "parsing/parser.mly"
|
|
( Public, Concrete )
|
|
# 28413 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Asttypes.private_flag * Asttypes.virtual_flag) =
|
|
# 3548 "parsing/parser.mly"
|
|
( Private, Concrete )
|
|
# 28438 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Asttypes.private_flag * Asttypes.virtual_flag) =
|
|
# 3549 "parsing/parser.mly"
|
|
( Public, Virtual )
|
|
# 28463 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Asttypes.private_flag * Asttypes.virtual_flag) =
|
|
# 3550 "parsing/parser.mly"
|
|
( Private, Virtual )
|
|
# 28495 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Asttypes.private_flag * Asttypes.virtual_flag) =
|
|
# 3551 "parsing/parser.mly"
|
|
( Private, Virtual )
|
|
# 28527 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _endpos = _startpos in
|
|
let _v : (Asttypes.rec_flag) =
|
|
# 3504 "parsing/parser.mly"
|
|
( Nonrecursive )
|
|
# 28545 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Asttypes.rec_flag) =
|
|
# 3505 "parsing/parser.mly"
|
|
( Recursive )
|
|
# 28570 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = fields;
|
|
MenhirLib.EngineTypes.startp = _startpos_fields_;
|
|
MenhirLib.EngineTypes.endp = _endpos_fields_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let fields : ((Longident.t Asttypes.loc * Parsetree.expression) list) = Obj.magic fields in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_fields_ in
|
|
let _endpos = _endpos_fields_ in
|
|
let _v : (Parsetree.expression option *
|
|
(Longident.t Asttypes.loc * Parsetree.expression) list) = let eo =
|
|
# 124 "menhir/standard.mly"
|
|
( None )
|
|
# 28596 "parsing/parser.ml"
|
|
in
|
|
|
|
# 2501 "parsing/parser.mly"
|
|
( eo, fields )
|
|
# 28601 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = fields;
|
|
MenhirLib.EngineTypes.startp = _startpos_fields_;
|
|
MenhirLib.EngineTypes.endp = _endpos_fields_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let fields : ((Longident.t Asttypes.loc * Parsetree.expression) list) = Obj.magic fields in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let x : (Parsetree.expression) = Obj.magic x in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_x_ in
|
|
let _endpos = _endpos_fields_ in
|
|
let _v : (Parsetree.expression option *
|
|
(Longident.t Asttypes.loc * Parsetree.expression) list) = let eo =
|
|
let x =
|
|
# 191 "menhir/standard.mly"
|
|
( x )
|
|
# 28642 "parsing/parser.ml"
|
|
in
|
|
|
|
# 126 "menhir/standard.mly"
|
|
( Some x )
|
|
# 28647 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2501 "parsing/parser.mly"
|
|
( eo, fields )
|
|
# 28653 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = d;
|
|
MenhirLib.EngineTypes.startp = _startpos_d_;
|
|
MenhirLib.EngineTypes.endp = _endpos_d_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let d : (Ast_helper.str * Parsetree.constructor_arguments *
|
|
Parsetree.core_type option * Parsetree.attributes * Location.t *
|
|
Docstrings.info) = Obj.magic d in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_d_ in
|
|
let _endpos = _endpos_d_ in
|
|
let _v : (Parsetree.constructor_declaration list) = let x =
|
|
# 2930 "parsing/parser.mly"
|
|
(
|
|
let cid, args, res, attrs, loc, info = d in
|
|
Type.constructor cid ~args ?res ~attrs ~loc ~info
|
|
)
|
|
# 28683 "parsing/parser.ml"
|
|
in
|
|
|
|
# 1004 "parsing/parser.mly"
|
|
( [x] )
|
|
# 28688 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = d;
|
|
MenhirLib.EngineTypes.startp = _startpos_d_;
|
|
MenhirLib.EngineTypes.endp = _endpos_d_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let d : (Ast_helper.str * Parsetree.constructor_arguments *
|
|
Parsetree.core_type option * Parsetree.attributes * Location.t *
|
|
Docstrings.info) = Obj.magic d in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_d_ in
|
|
let _endpos = _endpos_d_ in
|
|
let _v : (Parsetree.constructor_declaration list) = let x =
|
|
# 2930 "parsing/parser.mly"
|
|
(
|
|
let cid, args, res, attrs, loc, info = d in
|
|
Type.constructor cid ~args ?res ~attrs ~loc ~info
|
|
)
|
|
# 28718 "parsing/parser.ml"
|
|
in
|
|
|
|
# 1007 "parsing/parser.mly"
|
|
( [x] )
|
|
# 28723 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = d;
|
|
MenhirLib.EngineTypes.startp = _startpos_d_;
|
|
MenhirLib.EngineTypes.endp = _endpos_d_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let d : (Ast_helper.str * Parsetree.constructor_arguments *
|
|
Parsetree.core_type option * Parsetree.attributes * Location.t *
|
|
Docstrings.info) = Obj.magic d in
|
|
let xs : (Parsetree.constructor_declaration list) = Obj.magic xs in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_xs_ in
|
|
let _endpos = _endpos_d_ in
|
|
let _v : (Parsetree.constructor_declaration list) = let x =
|
|
# 2930 "parsing/parser.mly"
|
|
(
|
|
let cid, args, res, attrs, loc, info = d in
|
|
Type.constructor cid ~args ?res ~attrs ~loc ~info
|
|
)
|
|
# 28760 "parsing/parser.ml"
|
|
in
|
|
|
|
# 1011 "parsing/parser.mly"
|
|
( x :: xs )
|
|
# 28765 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = d;
|
|
MenhirLib.EngineTypes.startp = _startpos_d_;
|
|
MenhirLib.EngineTypes.endp = _endpos_d_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let d : (Ast_helper.str * Parsetree.constructor_arguments *
|
|
Parsetree.core_type option * Parsetree.attributes * Location.t *
|
|
Docstrings.info) = Obj.magic d in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_d_ in
|
|
let _endpos = _endpos_d_ in
|
|
let _v : (Parsetree.extension_constructor list) = let x =
|
|
let _1 =
|
|
# 3042 "parsing/parser.mly"
|
|
(
|
|
let cid, args, res, attrs, loc, info = d in
|
|
Te.decl cid ~args ?res ~attrs ~loc ~info
|
|
)
|
|
# 28796 "parsing/parser.ml"
|
|
in
|
|
|
|
# 3036 "parsing/parser.mly"
|
|
( _1 )
|
|
# 28801 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1004 "parsing/parser.mly"
|
|
( [x] )
|
|
# 28807 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.extension_constructor) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.extension_constructor list) = let x =
|
|
# 3038 "parsing/parser.mly"
|
|
( _1 )
|
|
# 28832 "parsing/parser.ml"
|
|
in
|
|
|
|
# 1004 "parsing/parser.mly"
|
|
( [x] )
|
|
# 28837 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = d;
|
|
MenhirLib.EngineTypes.startp = _startpos_d_;
|
|
MenhirLib.EngineTypes.endp = _endpos_d_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let d : (Ast_helper.str * Parsetree.constructor_arguments *
|
|
Parsetree.core_type option * Parsetree.attributes * Location.t *
|
|
Docstrings.info) = Obj.magic d in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_d_ in
|
|
let _endpos = _endpos_d_ in
|
|
let _v : (Parsetree.extension_constructor list) = let x =
|
|
let _1 =
|
|
# 3042 "parsing/parser.mly"
|
|
(
|
|
let cid, args, res, attrs, loc, info = d in
|
|
Te.decl cid ~args ?res ~attrs ~loc ~info
|
|
)
|
|
# 28868 "parsing/parser.ml"
|
|
in
|
|
|
|
# 3036 "parsing/parser.mly"
|
|
( _1 )
|
|
# 28873 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1007 "parsing/parser.mly"
|
|
( [x] )
|
|
# 28879 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.extension_constructor) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.extension_constructor list) = let x =
|
|
# 3038 "parsing/parser.mly"
|
|
( _1 )
|
|
# 28904 "parsing/parser.ml"
|
|
in
|
|
|
|
# 1007 "parsing/parser.mly"
|
|
( [x] )
|
|
# 28909 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = d;
|
|
MenhirLib.EngineTypes.startp = _startpos_d_;
|
|
MenhirLib.EngineTypes.endp = _endpos_d_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let d : (Ast_helper.str * Parsetree.constructor_arguments *
|
|
Parsetree.core_type option * Parsetree.attributes * Location.t *
|
|
Docstrings.info) = Obj.magic d in
|
|
let xs : (Parsetree.extension_constructor list) = Obj.magic xs in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_xs_ in
|
|
let _endpos = _endpos_d_ in
|
|
let _v : (Parsetree.extension_constructor list) = let x =
|
|
let _1 =
|
|
# 3042 "parsing/parser.mly"
|
|
(
|
|
let cid, args, res, attrs, loc, info = d in
|
|
Te.decl cid ~args ?res ~attrs ~loc ~info
|
|
)
|
|
# 28947 "parsing/parser.ml"
|
|
in
|
|
|
|
# 3036 "parsing/parser.mly"
|
|
( _1 )
|
|
# 28952 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1011 "parsing/parser.mly"
|
|
( x :: xs )
|
|
# 28958 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.extension_constructor) = Obj.magic _1 in
|
|
let xs : (Parsetree.extension_constructor list) = Obj.magic xs in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_xs_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.extension_constructor list) = let x =
|
|
# 3038 "parsing/parser.mly"
|
|
( _1 )
|
|
# 28990 "parsing/parser.ml"
|
|
in
|
|
|
|
# 1011 "parsing/parser.mly"
|
|
( x :: xs )
|
|
# 28995 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = d;
|
|
MenhirLib.EngineTypes.startp = _startpos_d_;
|
|
MenhirLib.EngineTypes.endp = _endpos_d_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let d : (Ast_helper.str * Parsetree.constructor_arguments *
|
|
Parsetree.core_type option * Parsetree.attributes * Location.t *
|
|
Docstrings.info) = Obj.magic d in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_d_ in
|
|
let _endpos = _endpos_d_ in
|
|
let _v : (Parsetree.extension_constructor list) = let x =
|
|
# 3042 "parsing/parser.mly"
|
|
(
|
|
let cid, args, res, attrs, loc, info = d in
|
|
Te.decl cid ~args ?res ~attrs ~loc ~info
|
|
)
|
|
# 29025 "parsing/parser.ml"
|
|
in
|
|
|
|
# 1004 "parsing/parser.mly"
|
|
( [x] )
|
|
# 29030 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = d;
|
|
MenhirLib.EngineTypes.startp = _startpos_d_;
|
|
MenhirLib.EngineTypes.endp = _endpos_d_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let d : (Ast_helper.str * Parsetree.constructor_arguments *
|
|
Parsetree.core_type option * Parsetree.attributes * Location.t *
|
|
Docstrings.info) = Obj.magic d in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_d_ in
|
|
let _endpos = _endpos_d_ in
|
|
let _v : (Parsetree.extension_constructor list) = let x =
|
|
# 3042 "parsing/parser.mly"
|
|
(
|
|
let cid, args, res, attrs, loc, info = d in
|
|
Te.decl cid ~args ?res ~attrs ~loc ~info
|
|
)
|
|
# 29060 "parsing/parser.ml"
|
|
in
|
|
|
|
# 1007 "parsing/parser.mly"
|
|
( [x] )
|
|
# 29065 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = d;
|
|
MenhirLib.EngineTypes.startp = _startpos_d_;
|
|
MenhirLib.EngineTypes.endp = _endpos_d_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let d : (Ast_helper.str * Parsetree.constructor_arguments *
|
|
Parsetree.core_type option * Parsetree.attributes * Location.t *
|
|
Docstrings.info) = Obj.magic d in
|
|
let xs : (Parsetree.extension_constructor list) = Obj.magic xs in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_xs_ in
|
|
let _endpos = _endpos_d_ in
|
|
let _v : (Parsetree.extension_constructor list) = let x =
|
|
# 3042 "parsing/parser.mly"
|
|
(
|
|
let cid, args, res, attrs, loc, info = d in
|
|
Te.decl cid ~args ?res ~attrs ~loc ~info
|
|
)
|
|
# 29102 "parsing/parser.ml"
|
|
in
|
|
|
|
# 1011 "parsing/parser.mly"
|
|
( x :: xs )
|
|
# 29107 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _endpos = _startpos in
|
|
let _v : ((Parsetree.core_type * Parsetree.core_type * Ast_helper.loc) list) =
|
|
# 870 "parsing/parser.mly"
|
|
( [] )
|
|
# 29125 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : (Parsetree.core_type) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1_inlined1 : (Parsetree.core_type) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let xs : ((Parsetree.core_type * Parsetree.core_type * Ast_helper.loc) list) = Obj.magic xs in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_xs_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : ((Parsetree.core_type * Parsetree.core_type * Ast_helper.loc) list) = let x =
|
|
let x =
|
|
let (_startpos__1_, _1) = (_startpos__1_inlined1_, _1_inlined1) in
|
|
let _endpos = _endpos__3_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1934 "parsing/parser.mly"
|
|
( _1, _3, make_loc _sloc )
|
|
# 29184 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 183 "menhir/standard.mly"
|
|
( x )
|
|
# 29190 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 872 "parsing/parser.mly"
|
|
( x :: xs )
|
|
# 29196 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let x : (Parsetree.functor_parameter) = Obj.magic x in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_x_ in
|
|
let _endpos = _endpos_x_ in
|
|
let _v : (Parsetree.functor_parameter list) =
|
|
# 884 "parsing/parser.mly"
|
|
( [ x ] )
|
|
# 29221 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let x : (Parsetree.functor_parameter) = Obj.magic x in
|
|
let xs : (Parsetree.functor_parameter list) = Obj.magic xs in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_xs_ in
|
|
let _endpos = _endpos_x_ in
|
|
let _v : (Parsetree.functor_parameter list) =
|
|
# 886 "parsing/parser.mly"
|
|
( x :: xs )
|
|
# 29253 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let x : (Asttypes.arg_label * Parsetree.expression) = Obj.magic x in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_x_ in
|
|
let _endpos = _endpos_x_ in
|
|
let _v : ((Asttypes.arg_label * Parsetree.expression) list) =
|
|
# 884 "parsing/parser.mly"
|
|
( [ x ] )
|
|
# 29278 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let x : (Asttypes.arg_label * Parsetree.expression) = Obj.magic x in
|
|
let xs : ((Asttypes.arg_label * Parsetree.expression) list) = Obj.magic xs in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_xs_ in
|
|
let _endpos = _endpos_x_ in
|
|
let _v : ((Asttypes.arg_label * Parsetree.expression) list) =
|
|
# 886 "parsing/parser.mly"
|
|
( x :: xs )
|
|
# 29310 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let x : (Asttypes.label) = Obj.magic x in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_x_ in
|
|
let _endpos = _endpos_x_ in
|
|
let _v : (Asttypes.label list) =
|
|
# 884 "parsing/parser.mly"
|
|
( [ x ] )
|
|
# 29335 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let x : (Asttypes.label) = Obj.magic x in
|
|
let xs : (Asttypes.label list) = Obj.magic xs in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_xs_ in
|
|
let _endpos = _endpos_x_ in
|
|
let _v : (Asttypes.label list) =
|
|
# 886 "parsing/parser.mly"
|
|
( x :: xs )
|
|
# 29367 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined1 : (Asttypes.label) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined1_ in
|
|
let _v : (Asttypes.label Asttypes.loc list) = let x =
|
|
let _2 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined1_, _startpos__1_inlined1_, _1_inlined1) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 29405 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3096 "parsing/parser.mly"
|
|
( _2 )
|
|
# 29411 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 884 "parsing/parser.mly"
|
|
( [ x ] )
|
|
# 29417 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined1 : (Asttypes.label) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let xs : (Asttypes.label Asttypes.loc list) = Obj.magic xs in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_xs_ in
|
|
let _endpos = _endpos__1_inlined1_ in
|
|
let _v : (Asttypes.label Asttypes.loc list) = let x =
|
|
let _2 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined1_, _startpos__1_inlined1_, _1_inlined1) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 29462 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3096 "parsing/parser.mly"
|
|
( _2 )
|
|
# 29468 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 886 "parsing/parser.mly"
|
|
( x :: xs )
|
|
# 29474 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let x : (Parsetree.case) = Obj.magic x in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_x_ in
|
|
let _endpos = _endpos_x_ in
|
|
let _v : (Parsetree.case list) = let _1 =
|
|
# 124 "menhir/standard.mly"
|
|
( None )
|
|
# 29499 "parsing/parser.ml"
|
|
in
|
|
|
|
# 975 "parsing/parser.mly"
|
|
( [x] )
|
|
# 29504 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = x_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_inlined1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let x : (Parsetree.case) = Obj.magic x in
|
|
let x_inlined1 : unit = Obj.magic x_inlined1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_x_inlined1_ in
|
|
let _endpos = _endpos_x_ in
|
|
let _v : (Parsetree.case list) = let _1 =
|
|
let x = x_inlined1 in
|
|
|
|
# 126 "menhir/standard.mly"
|
|
( Some x )
|
|
# 29538 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 975 "parsing/parser.mly"
|
|
( [x] )
|
|
# 29544 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let x : (Parsetree.case) = Obj.magic x in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let xs : (Parsetree.case list) = Obj.magic xs in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_xs_ in
|
|
let _endpos = _endpos_x_ in
|
|
let _v : (Parsetree.case list) =
|
|
# 979 "parsing/parser.mly"
|
|
( x :: xs )
|
|
# 29583 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.core_type) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.core_type list) = let xs =
|
|
let x =
|
|
# 3139 "parsing/parser.mly"
|
|
( _1 )
|
|
# 29609 "parsing/parser.ml"
|
|
in
|
|
|
|
# 910 "parsing/parser.mly"
|
|
( [ x ] )
|
|
# 29614 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 918 "parsing/parser.mly"
|
|
( xs )
|
|
# 29620 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.core_type) = Obj.magic _1 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let xs : (Parsetree.core_type list) = Obj.magic xs in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_xs_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.core_type list) = let xs =
|
|
let x =
|
|
# 3139 "parsing/parser.mly"
|
|
( _1 )
|
|
# 29660 "parsing/parser.ml"
|
|
in
|
|
|
|
# 914 "parsing/parser.mly"
|
|
( x :: xs )
|
|
# 29665 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 918 "parsing/parser.mly"
|
|
( xs )
|
|
# 29671 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let x : (Parsetree.with_constraint) = Obj.magic x in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_x_ in
|
|
let _endpos = _endpos_x_ in
|
|
let _v : (Parsetree.with_constraint list) = let xs =
|
|
# 910 "parsing/parser.mly"
|
|
( [ x ] )
|
|
# 29696 "parsing/parser.ml"
|
|
in
|
|
|
|
# 918 "parsing/parser.mly"
|
|
( xs )
|
|
# 29701 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let x : (Parsetree.with_constraint) = Obj.magic x in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let xs : (Parsetree.with_constraint list) = Obj.magic xs in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_xs_ in
|
|
let _endpos = _endpos_x_ in
|
|
let _v : (Parsetree.with_constraint list) = let xs =
|
|
# 914 "parsing/parser.mly"
|
|
( x :: xs )
|
|
# 29740 "parsing/parser.ml"
|
|
in
|
|
|
|
# 918 "parsing/parser.mly"
|
|
( xs )
|
|
# 29745 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let x : (Parsetree.row_field) = Obj.magic x in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_x_ in
|
|
let _endpos = _endpos_x_ in
|
|
let _v : (Parsetree.row_field list) = let xs =
|
|
# 910 "parsing/parser.mly"
|
|
( [ x ] )
|
|
# 29770 "parsing/parser.ml"
|
|
in
|
|
|
|
# 918 "parsing/parser.mly"
|
|
( xs )
|
|
# 29775 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let x : (Parsetree.row_field) = Obj.magic x in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let xs : (Parsetree.row_field list) = Obj.magic xs in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_xs_ in
|
|
let _endpos = _endpos_x_ in
|
|
let _v : (Parsetree.row_field list) = let xs =
|
|
# 914 "parsing/parser.mly"
|
|
( x :: xs )
|
|
# 29814 "parsing/parser.ml"
|
|
in
|
|
|
|
# 918 "parsing/parser.mly"
|
|
( xs )
|
|
# 29819 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let x : (Parsetree.core_type) = Obj.magic x in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_x_ in
|
|
let _endpos = _endpos_x_ in
|
|
let _v : (Parsetree.core_type list) = let xs =
|
|
# 910 "parsing/parser.mly"
|
|
( [ x ] )
|
|
# 29844 "parsing/parser.ml"
|
|
in
|
|
|
|
# 918 "parsing/parser.mly"
|
|
( xs )
|
|
# 29849 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let x : (Parsetree.core_type) = Obj.magic x in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let xs : (Parsetree.core_type list) = Obj.magic xs in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_xs_ in
|
|
let _endpos = _endpos_x_ in
|
|
let _v : (Parsetree.core_type list) = let xs =
|
|
# 914 "parsing/parser.mly"
|
|
( x :: xs )
|
|
# 29888 "parsing/parser.ml"
|
|
in
|
|
|
|
# 918 "parsing/parser.mly"
|
|
( xs )
|
|
# 29893 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let x : (Parsetree.core_type * Asttypes.variance) = Obj.magic x in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_x_ in
|
|
let _endpos = _endpos_x_ in
|
|
let _v : ((Parsetree.core_type * Asttypes.variance) list) = let xs =
|
|
# 910 "parsing/parser.mly"
|
|
( [ x ] )
|
|
# 29918 "parsing/parser.ml"
|
|
in
|
|
|
|
# 918 "parsing/parser.mly"
|
|
( xs )
|
|
# 29923 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let x : (Parsetree.core_type * Asttypes.variance) = Obj.magic x in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let xs : ((Parsetree.core_type * Asttypes.variance) list) = Obj.magic xs in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_xs_ in
|
|
let _endpos = _endpos_x_ in
|
|
let _v : ((Parsetree.core_type * Asttypes.variance) list) = let xs =
|
|
# 914 "parsing/parser.mly"
|
|
( x :: xs )
|
|
# 29962 "parsing/parser.ml"
|
|
in
|
|
|
|
# 918 "parsing/parser.mly"
|
|
( xs )
|
|
# 29967 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let x : (Parsetree.core_type) = Obj.magic x in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_x_ in
|
|
let _endpos = _endpos_x_ in
|
|
let _v : (Parsetree.core_type list) = let xs =
|
|
# 910 "parsing/parser.mly"
|
|
( [ x ] )
|
|
# 29992 "parsing/parser.ml"
|
|
in
|
|
|
|
# 918 "parsing/parser.mly"
|
|
( xs )
|
|
# 29997 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let x : (Parsetree.core_type) = Obj.magic x in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let xs : (Parsetree.core_type list) = Obj.magic xs in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_xs_ in
|
|
let _endpos = _endpos_x_ in
|
|
let _v : (Parsetree.core_type list) = let xs =
|
|
# 914 "parsing/parser.mly"
|
|
( x :: xs )
|
|
# 30036 "parsing/parser.ml"
|
|
in
|
|
|
|
# 918 "parsing/parser.mly"
|
|
( xs )
|
|
# 30041 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let x : (Parsetree.core_type) = Obj.magic x in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let xs : (Parsetree.core_type list) = Obj.magic xs in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_xs_ in
|
|
let _endpos = _endpos_x_ in
|
|
let _v : (Parsetree.core_type list) =
|
|
# 941 "parsing/parser.mly"
|
|
( x :: xs )
|
|
# 30080 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = x2;
|
|
MenhirLib.EngineTypes.startp = _startpos_x2_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = x1;
|
|
MenhirLib.EngineTypes.startp = _startpos_x1_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let x2 : (Parsetree.core_type) = Obj.magic x2 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let x1 : (Parsetree.core_type) = Obj.magic x1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_x1_ in
|
|
let _endpos = _endpos_x2_ in
|
|
let _v : (Parsetree.core_type list) =
|
|
# 945 "parsing/parser.mly"
|
|
( [ x2; x1 ] )
|
|
# 30119 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let x : (Parsetree.expression) = Obj.magic x in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let xs : (Parsetree.expression list) = Obj.magic xs in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_xs_ in
|
|
let _endpos = _endpos_x_ in
|
|
let _v : (Parsetree.expression list) =
|
|
# 941 "parsing/parser.mly"
|
|
( x :: xs )
|
|
# 30158 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = x2;
|
|
MenhirLib.EngineTypes.startp = _startpos_x2_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = x1;
|
|
MenhirLib.EngineTypes.startp = _startpos_x1_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let x2 : (Parsetree.expression) = Obj.magic x2 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let x1 : (Parsetree.expression) = Obj.magic x1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_x1_ in
|
|
let _endpos = _endpos_x2_ in
|
|
let _v : (Parsetree.expression list) =
|
|
# 945 "parsing/parser.mly"
|
|
( [ x2; x1 ] )
|
|
# 30197 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let x : (Parsetree.core_type) = Obj.magic x in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let xs : (Parsetree.core_type list) = Obj.magic xs in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_xs_ in
|
|
let _endpos = _endpos_x_ in
|
|
let _v : (Parsetree.core_type list) =
|
|
# 941 "parsing/parser.mly"
|
|
( x :: xs )
|
|
# 30236 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = x2;
|
|
MenhirLib.EngineTypes.startp = _startpos_x2_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = x1;
|
|
MenhirLib.EngineTypes.startp = _startpos_x1_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let x2 : (Parsetree.core_type) = Obj.magic x2 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let x1 : (Parsetree.core_type) = Obj.magic x1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_x1_ in
|
|
let _endpos = _endpos_x2_ in
|
|
let _v : (Parsetree.core_type list) =
|
|
# 945 "parsing/parser.mly"
|
|
( [ x2; x1 ] )
|
|
# 30275 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.row_field) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.row_field) =
|
|
# 3279 "parsing/parser.mly"
|
|
( _1 )
|
|
# 30300 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.core_type) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.row_field) = let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 3281 "parsing/parser.mly"
|
|
( Rf.inherit_ ~loc:(make_loc _sloc) _1 )
|
|
# 30328 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let x : (Parsetree.expression) = Obj.magic x in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_x_ in
|
|
let _endpos = _endpos_x_ in
|
|
let _v : (Parsetree.expression list) = let _2 =
|
|
# 124 "menhir/standard.mly"
|
|
( None )
|
|
# 30353 "parsing/parser.ml"
|
|
in
|
|
|
|
# 962 "parsing/parser.mly"
|
|
( [x] )
|
|
# 30358 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = x_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let x_inlined1 : unit = Obj.magic x_inlined1 in
|
|
let x : (Parsetree.expression) = Obj.magic x in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_x_ in
|
|
let _endpos = _endpos_x_inlined1_ in
|
|
let _v : (Parsetree.expression list) = let _2 =
|
|
let x = x_inlined1 in
|
|
|
|
# 126 "menhir/standard.mly"
|
|
( Some x )
|
|
# 30392 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 962 "parsing/parser.mly"
|
|
( [x] )
|
|
# 30398 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let xs : (Parsetree.expression list) = Obj.magic xs in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let x : (Parsetree.expression) = Obj.magic x in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_x_ in
|
|
let _endpos = _endpos_xs_ in
|
|
let _v : (Parsetree.expression list) =
|
|
# 966 "parsing/parser.mly"
|
|
( x :: xs )
|
|
# 30437 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = oe;
|
|
MenhirLib.EngineTypes.startp = _startpos_oe_;
|
|
MenhirLib.EngineTypes.endp = _endpos_oe_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let oe : (Parsetree.expression option) = Obj.magic oe in
|
|
let _1 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 30465 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_oe_ in
|
|
let _v : ((Asttypes.label Asttypes.loc * Parsetree.expression) list) = let _2 =
|
|
# 124 "menhir/standard.mly"
|
|
( None )
|
|
# 30473 "parsing/parser.ml"
|
|
in
|
|
let x =
|
|
let label =
|
|
let _1 =
|
|
# 3343 "parsing/parser.mly"
|
|
( _1 )
|
|
# 30480 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 30488 "parsing/parser.ml"
|
|
|
|
in
|
|
let _startpos_label_ = _startpos__1_ in
|
|
let _endpos = _endpos_oe_ in
|
|
let _symbolstartpos = _startpos_label_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2524 "parsing/parser.mly"
|
|
( let e =
|
|
match oe with
|
|
| None ->
|
|
(* No expression; this is a pun. Desugar it. *)
|
|
exp_of_label ~loc:_sloc label
|
|
| Some e ->
|
|
e
|
|
in
|
|
label, e )
|
|
# 30506 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 962 "parsing/parser.mly"
|
|
( [x] )
|
|
# 30512 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = oe;
|
|
MenhirLib.EngineTypes.startp = _startpos_oe_;
|
|
MenhirLib.EngineTypes.endp = _endpos_oe_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let x : unit = Obj.magic x in
|
|
let oe : (Parsetree.expression option) = Obj.magic oe in
|
|
let _1 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 30547 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_x_ in
|
|
let _v : ((Asttypes.label Asttypes.loc * Parsetree.expression) list) = let _2 =
|
|
# 126 "menhir/standard.mly"
|
|
( Some x )
|
|
# 30555 "parsing/parser.ml"
|
|
in
|
|
let x =
|
|
let label =
|
|
let _1 =
|
|
# 3343 "parsing/parser.mly"
|
|
( _1 )
|
|
# 30562 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 30570 "parsing/parser.ml"
|
|
|
|
in
|
|
let _startpos_label_ = _startpos__1_ in
|
|
let _endpos = _endpos_oe_ in
|
|
let _symbolstartpos = _startpos_label_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2524 "parsing/parser.mly"
|
|
( let e =
|
|
match oe with
|
|
| None ->
|
|
(* No expression; this is a pun. Desugar it. *)
|
|
exp_of_label ~loc:_sloc label
|
|
| Some e ->
|
|
e
|
|
in
|
|
label, e )
|
|
# 30588 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 962 "parsing/parser.mly"
|
|
( [x] )
|
|
# 30594 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = oe;
|
|
MenhirLib.EngineTypes.startp = _startpos_oe_;
|
|
MenhirLib.EngineTypes.endp = _endpos_oe_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let xs : ((Asttypes.label Asttypes.loc * Parsetree.expression) list) = Obj.magic xs in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let oe : (Parsetree.expression option) = Obj.magic oe in
|
|
let _1 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 30636 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_xs_ in
|
|
let _v : ((Asttypes.label Asttypes.loc * Parsetree.expression) list) = let x =
|
|
let label =
|
|
let _1 =
|
|
# 3343 "parsing/parser.mly"
|
|
( _1 )
|
|
# 30646 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 30654 "parsing/parser.ml"
|
|
|
|
in
|
|
let _startpos_label_ = _startpos__1_ in
|
|
let _endpos = _endpos_oe_ in
|
|
let _symbolstartpos = _startpos_label_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2524 "parsing/parser.mly"
|
|
( let e =
|
|
match oe with
|
|
| None ->
|
|
(* No expression; this is a pun. Desugar it. *)
|
|
exp_of_label ~loc:_sloc label
|
|
| Some e ->
|
|
e
|
|
in
|
|
label, e )
|
|
# 30672 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 966 "parsing/parser.mly"
|
|
( x :: xs )
|
|
# 30678 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let x : (Parsetree.pattern) = Obj.magic x in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_x_ in
|
|
let _endpos = _endpos_x_ in
|
|
let _v : (Parsetree.pattern list) = let _2 =
|
|
# 124 "menhir/standard.mly"
|
|
( None )
|
|
# 30703 "parsing/parser.ml"
|
|
in
|
|
|
|
# 962 "parsing/parser.mly"
|
|
( [x] )
|
|
# 30708 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = x_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let x_inlined1 : unit = Obj.magic x_inlined1 in
|
|
let x : (Parsetree.pattern) = Obj.magic x in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_x_ in
|
|
let _endpos = _endpos_x_inlined1_ in
|
|
let _v : (Parsetree.pattern list) = let _2 =
|
|
let x = x_inlined1 in
|
|
|
|
# 126 "menhir/standard.mly"
|
|
( Some x )
|
|
# 30742 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 962 "parsing/parser.mly"
|
|
( [x] )
|
|
# 30748 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let xs : (Parsetree.pattern list) = Obj.magic xs in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let x : (Parsetree.pattern) = Obj.magic x in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_x_ in
|
|
let _endpos = _endpos_xs_ in
|
|
let _v : (Parsetree.pattern list) =
|
|
# 966 "parsing/parser.mly"
|
|
( x :: xs )
|
|
# 30787 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = eo;
|
|
MenhirLib.EngineTypes.startp = _startpos_eo_;
|
|
MenhirLib.EngineTypes.endp = _endpos_eo_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = c;
|
|
MenhirLib.EngineTypes.startp = _startpos_c_;
|
|
MenhirLib.EngineTypes.endp = _endpos_c_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let eo : (Parsetree.expression option) = Obj.magic eo in
|
|
let c : ((Parsetree.core_type option * Parsetree.core_type option) option) = Obj.magic c in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_eo_ in
|
|
let _v : ((Longident.t Asttypes.loc * Parsetree.expression) list) = let _2 =
|
|
# 124 "menhir/standard.mly"
|
|
( None )
|
|
# 30826 "parsing/parser.ml"
|
|
in
|
|
let x =
|
|
let label =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 30836 "parsing/parser.ml"
|
|
|
|
in
|
|
let _startpos_label_ = _startpos__1_ in
|
|
let _endpos = _endpos_eo_ in
|
|
let _symbolstartpos = _startpos_label_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2507 "parsing/parser.mly"
|
|
( let e =
|
|
match eo with
|
|
| None ->
|
|
(* No pattern; this is a pun. Desugar it. *)
|
|
exp_of_longident ~loc:_sloc label
|
|
| Some e ->
|
|
e
|
|
in
|
|
label, mkexp_opt_constraint ~loc:_sloc e c )
|
|
# 30854 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 962 "parsing/parser.mly"
|
|
( [x] )
|
|
# 30860 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = x;
|
|
MenhirLib.EngineTypes.startp = _startpos_x_;
|
|
MenhirLib.EngineTypes.endp = _endpos_x_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = eo;
|
|
MenhirLib.EngineTypes.startp = _startpos_eo_;
|
|
MenhirLib.EngineTypes.endp = _endpos_eo_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = c;
|
|
MenhirLib.EngineTypes.startp = _startpos_c_;
|
|
MenhirLib.EngineTypes.endp = _endpos_c_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let x : unit = Obj.magic x in
|
|
let eo : (Parsetree.expression option) = Obj.magic eo in
|
|
let c : ((Parsetree.core_type option * Parsetree.core_type option) option) = Obj.magic c in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_x_ in
|
|
let _v : ((Longident.t Asttypes.loc * Parsetree.expression) list) = let _2 =
|
|
# 126 "menhir/standard.mly"
|
|
( Some x )
|
|
# 30906 "parsing/parser.ml"
|
|
in
|
|
let x =
|
|
let label =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 30916 "parsing/parser.ml"
|
|
|
|
in
|
|
let _startpos_label_ = _startpos__1_ in
|
|
let _endpos = _endpos_eo_ in
|
|
let _symbolstartpos = _startpos_label_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2507 "parsing/parser.mly"
|
|
( let e =
|
|
match eo with
|
|
| None ->
|
|
(* No pattern; this is a pun. Desugar it. *)
|
|
exp_of_longident ~loc:_sloc label
|
|
| Some e ->
|
|
e
|
|
in
|
|
label, mkexp_opt_constraint ~loc:_sloc e c )
|
|
# 30934 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 962 "parsing/parser.mly"
|
|
( [x] )
|
|
# 30940 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = eo;
|
|
MenhirLib.EngineTypes.startp = _startpos_eo_;
|
|
MenhirLib.EngineTypes.endp = _endpos_eo_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = c;
|
|
MenhirLib.EngineTypes.startp = _startpos_c_;
|
|
MenhirLib.EngineTypes.endp = _endpos_c_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let xs : ((Longident.t Asttypes.loc * Parsetree.expression) list) = Obj.magic xs in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let eo : (Parsetree.expression option) = Obj.magic eo in
|
|
let c : ((Parsetree.core_type option * Parsetree.core_type option) option) = Obj.magic c in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_xs_ in
|
|
let _v : ((Longident.t Asttypes.loc * Parsetree.expression) list) = let x =
|
|
let label =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 30998 "parsing/parser.ml"
|
|
|
|
in
|
|
let _startpos_label_ = _startpos__1_ in
|
|
let _endpos = _endpos_eo_ in
|
|
let _symbolstartpos = _startpos_label_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2507 "parsing/parser.mly"
|
|
( let e =
|
|
match eo with
|
|
| None ->
|
|
(* No pattern; this is a pun. Desugar it. *)
|
|
exp_of_longident ~loc:_sloc label
|
|
| Some e ->
|
|
e
|
|
in
|
|
label, mkexp_opt_constraint ~loc:_sloc e c )
|
|
# 31016 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 966 "parsing/parser.mly"
|
|
( x :: xs )
|
|
# 31022 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.expression) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.expression) =
|
|
# 2023 "parsing/parser.mly"
|
|
( _1 )
|
|
# 31047 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.expression) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.expression) =
|
|
# 2024 "parsing/parser.mly"
|
|
( _1 )
|
|
# 31079 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : (Parsetree.expression) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.expression) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
# 2026 "parsing/parser.mly"
|
|
( Pexp_sequence(_1, _3) )
|
|
# 31119 "parsing/parser.ml"
|
|
in
|
|
let _endpos__1_ = _endpos__3_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 31128 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2027 "parsing/parser.mly"
|
|
( _1 )
|
|
# 31134 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : (Parsetree.expression) = Obj.magic _5 in
|
|
let _4 : (string Asttypes.loc) = Obj.magic _4 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.expression) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.expression) = let _endpos = _endpos__5_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2029 "parsing/parser.mly"
|
|
( let seq = mkexp ~loc:_sloc (Pexp_sequence (_1, _5)) in
|
|
let payload = PStr [mkstrexp seq []] in
|
|
mkexp ~loc:_sloc (Pexp_extension (_4, payload)) )
|
|
# 31192 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined4;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = args_res;
|
|
MenhirLib.EngineTypes.startp = _startpos_args_res_;
|
|
MenhirLib.EngineTypes.endp = _endpos_args_res_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = ext;
|
|
MenhirLib.EngineTypes.startp = _startpos_ext_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ext_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined4 : (Parsetree.attributes) = Obj.magic _1_inlined4 in
|
|
let _1_inlined3 : (Parsetree.attributes) = Obj.magic _1_inlined3 in
|
|
let args_res : (Parsetree.constructor_arguments * Parsetree.core_type option) = Obj.magic args_res in
|
|
let _1_inlined2 : (string) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let ext : (string Asttypes.loc option) = Obj.magic ext in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined4_ in
|
|
let _v : (Parsetree.type_exception * string Asttypes.loc option) = let attrs =
|
|
let _1 = _1_inlined4 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 31261 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_attrs_ = _endpos__1_inlined4_ in
|
|
let attrs2 =
|
|
let _1 = _1_inlined3 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 31270 "parsing/parser.ml"
|
|
|
|
in
|
|
let id =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 31281 "parsing/parser.ml"
|
|
|
|
in
|
|
let attrs1 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 31289 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_attrs_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2960 "parsing/parser.mly"
|
|
( let args, res = args_res in
|
|
let loc = make_loc _sloc in
|
|
let docs = symbol_docs _sloc in
|
|
Te.mk_exception ~attrs
|
|
(Te.decl id ~args ?res ~attrs:(attrs1 @ attrs2) ~loc ~docs)
|
|
, ext )
|
|
# 31303 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = xss;
|
|
MenhirLib.EngineTypes.startp = _startpos_xss_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xss_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let xss : (Parsetree.signature_item list list) = Obj.magic xss in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_xss_ in
|
|
let _endpos = _endpos_xss_ in
|
|
let _v : (Parsetree.signature) = let _1 =
|
|
let _1 =
|
|
# 260 "menhir/standard.mly"
|
|
( List.flatten xss )
|
|
# 31329 "parsing/parser.ml"
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_xss_, _startpos_xss_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _startpos = _startpos__1_ in
|
|
|
|
# 785 "parsing/parser.mly"
|
|
( extra_sig _startpos _endpos _1 )
|
|
# 31337 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1492 "parsing/parser.mly"
|
|
( _1 )
|
|
# 31343 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _1 : (Parsetree.extension) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined1_ in
|
|
let _v : (Parsetree.signature_item) = let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 31377 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__2_ = _endpos__1_inlined1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1507 "parsing/parser.mly"
|
|
( let docs = symbol_docs _sloc in
|
|
mksig ~loc:_sloc (Psig_extension (_1, (add_docs_attrs docs _2))) )
|
|
# 31388 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.attribute) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.signature_item) = let _1 =
|
|
let _1 =
|
|
# 1511 "parsing/parser.mly"
|
|
( Psig_attribute _1 )
|
|
# 31414 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 833 "parsing/parser.mly"
|
|
( mksig ~loc:_sloc _1 )
|
|
# 31422 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1513 "parsing/parser.mly"
|
|
( _1 )
|
|
# 31428 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.value_description * string Asttypes.loc option) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.signature_item) = let _1 =
|
|
let _1 =
|
|
# 1516 "parsing/parser.mly"
|
|
( psig_value _1 )
|
|
# 31454 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 850 "parsing/parser.mly"
|
|
( wrap_mksig_ext ~loc:_sloc _1 )
|
|
# 31462 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1546 "parsing/parser.mly"
|
|
( _1 )
|
|
# 31468 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.value_description * string Asttypes.loc option) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.signature_item) = let _1 =
|
|
let _1 =
|
|
# 1518 "parsing/parser.mly"
|
|
( psig_value _1 )
|
|
# 31494 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 850 "parsing/parser.mly"
|
|
( wrap_mksig_ext ~loc:_sloc _1 )
|
|
# 31502 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1546 "parsing/parser.mly"
|
|
( _1 )
|
|
# 31508 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = bs;
|
|
MenhirLib.EngineTypes.startp = _startpos_bs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_bs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = a;
|
|
MenhirLib.EngineTypes.startp = _startpos_a_;
|
|
MenhirLib.EngineTypes.endp = _endpos_a_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let bs : (Parsetree.type_declaration list) = Obj.magic bs in
|
|
let a : ((Asttypes.rec_flag * string Asttypes.loc option) *
|
|
Parsetree.type_declaration) = Obj.magic a in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_a_ in
|
|
let _endpos = _endpos_bs_ in
|
|
let _v : (Parsetree.signature_item) = let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
# 1023 "parsing/parser.mly"
|
|
( let (x, b) = a in x, b :: bs )
|
|
# 31545 "parsing/parser.ml"
|
|
in
|
|
|
|
# 2792 "parsing/parser.mly"
|
|
( _1 )
|
|
# 31550 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2775 "parsing/parser.mly"
|
|
( _1 )
|
|
# 31556 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1520 "parsing/parser.mly"
|
|
( psig_type _1 )
|
|
# 31562 "parsing/parser.ml"
|
|
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_bs_, _startpos_a_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 850 "parsing/parser.mly"
|
|
( wrap_mksig_ext ~loc:_sloc _1 )
|
|
# 31572 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1546 "parsing/parser.mly"
|
|
( _1 )
|
|
# 31578 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = bs;
|
|
MenhirLib.EngineTypes.startp = _startpos_bs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_bs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = a;
|
|
MenhirLib.EngineTypes.startp = _startpos_a_;
|
|
MenhirLib.EngineTypes.endp = _endpos_a_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let bs : (Parsetree.type_declaration list) = Obj.magic bs in
|
|
let a : ((Asttypes.rec_flag * string Asttypes.loc option) *
|
|
Parsetree.type_declaration) = Obj.magic a in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_a_ in
|
|
let _endpos = _endpos_bs_ in
|
|
let _v : (Parsetree.signature_item) = let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
# 1023 "parsing/parser.mly"
|
|
( let (x, b) = a in x, b :: bs )
|
|
# 31615 "parsing/parser.ml"
|
|
in
|
|
|
|
# 2792 "parsing/parser.mly"
|
|
( _1 )
|
|
# 31620 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2780 "parsing/parser.mly"
|
|
( _1 )
|
|
# 31626 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1522 "parsing/parser.mly"
|
|
( psig_typesubst _1 )
|
|
# 31632 "parsing/parser.ml"
|
|
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_bs_, _startpos_a_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 850 "parsing/parser.mly"
|
|
( wrap_mksig_ext ~loc:_sloc _1 )
|
|
# 31642 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1546 "parsing/parser.mly"
|
|
( _1 )
|
|
# 31648 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = priv;
|
|
MenhirLib.EngineTypes.startp = _startpos_priv_;
|
|
MenhirLib.EngineTypes.endp = _endpos_priv_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _7;
|
|
MenhirLib.EngineTypes.startp = _startpos__7_;
|
|
MenhirLib.EngineTypes.endp = _endpos__7_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = params;
|
|
MenhirLib.EngineTypes.startp = _startpos_params_;
|
|
MenhirLib.EngineTypes.endp = _endpos_params_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = ext;
|
|
MenhirLib.EngineTypes.startp = _startpos_ext_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ext_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined3 : (Parsetree.attributes) = Obj.magic _1_inlined3 in
|
|
let xs : (Parsetree.extension_constructor list) = Obj.magic xs in
|
|
let priv : (Asttypes.private_flag) = Obj.magic priv in
|
|
let _7 : unit = Obj.magic _7 in
|
|
let _1_inlined2 : (Longident.t) = Obj.magic _1_inlined2 in
|
|
let params : ((Parsetree.core_type * Asttypes.variance) list) = Obj.magic params in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let ext : (string Asttypes.loc option) = Obj.magic ext in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined3_ in
|
|
let _v : (Parsetree.signature_item) = let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let attrs2 =
|
|
let _1 = _1_inlined3 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 31735 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_attrs2_ = _endpos__1_inlined3_ in
|
|
let cs =
|
|
# 1015 "parsing/parser.mly"
|
|
( List.rev xs )
|
|
# 31742 "parsing/parser.ml"
|
|
in
|
|
let tid =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 31752 "parsing/parser.ml"
|
|
|
|
in
|
|
let _4 =
|
|
# 3512 "parsing/parser.mly"
|
|
( Recursive )
|
|
# 31758 "parsing/parser.ml"
|
|
in
|
|
let attrs1 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 31765 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_attrs2_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 3029 "parsing/parser.mly"
|
|
( let docs = symbol_docs _sloc in
|
|
let attrs = attrs1 @ attrs2 in
|
|
Te.mk tid cs ~params ~priv ~attrs ~docs,
|
|
ext )
|
|
# 31777 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3016 "parsing/parser.mly"
|
|
( _1 )
|
|
# 31783 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1524 "parsing/parser.mly"
|
|
( psig_typext _1 )
|
|
# 31789 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__1_inlined3_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 850 "parsing/parser.mly"
|
|
( wrap_mksig_ext ~loc:_sloc _1 )
|
|
# 31799 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1546 "parsing/parser.mly"
|
|
( _1 )
|
|
# 31805 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined4;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = priv;
|
|
MenhirLib.EngineTypes.startp = _startpos_priv_;
|
|
MenhirLib.EngineTypes.endp = _endpos_priv_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _7;
|
|
MenhirLib.EngineTypes.startp = _startpos__7_;
|
|
MenhirLib.EngineTypes.endp = _endpos__7_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = params;
|
|
MenhirLib.EngineTypes.startp = _startpos_params_;
|
|
MenhirLib.EngineTypes.endp = _endpos_params_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = ext;
|
|
MenhirLib.EngineTypes.startp = _startpos_ext_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ext_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined4 : (Parsetree.attributes) = Obj.magic _1_inlined4 in
|
|
let xs : (Parsetree.extension_constructor list) = Obj.magic xs in
|
|
let priv : (Asttypes.private_flag) = Obj.magic priv in
|
|
let _7 : unit = Obj.magic _7 in
|
|
let _1_inlined3 : (Longident.t) = Obj.magic _1_inlined3 in
|
|
let params : ((Parsetree.core_type * Asttypes.variance) list) = Obj.magic params in
|
|
let _1_inlined2 : unit = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let ext : (string Asttypes.loc option) = Obj.magic ext in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined4_ in
|
|
let _v : (Parsetree.signature_item) = let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let attrs2 =
|
|
let _1 = _1_inlined4 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 31899 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_attrs2_ = _endpos__1_inlined4_ in
|
|
let cs =
|
|
# 1015 "parsing/parser.mly"
|
|
( List.rev xs )
|
|
# 31906 "parsing/parser.ml"
|
|
in
|
|
let tid =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined3_, _startpos__1_inlined3_, _1_inlined3) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 31916 "parsing/parser.ml"
|
|
|
|
in
|
|
let _4 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let _endpos = _endpos__1_ in
|
|
let _startpos = _startpos__1_ in
|
|
let _loc = (_startpos, _endpos) in
|
|
|
|
# 3513 "parsing/parser.mly"
|
|
( not_expecting _loc "nonrec flag" )
|
|
# 31927 "parsing/parser.ml"
|
|
|
|
in
|
|
let attrs1 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 31935 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_attrs2_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 3029 "parsing/parser.mly"
|
|
( let docs = symbol_docs _sloc in
|
|
let attrs = attrs1 @ attrs2 in
|
|
Te.mk tid cs ~params ~priv ~attrs ~docs,
|
|
ext )
|
|
# 31947 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3016 "parsing/parser.mly"
|
|
( _1 )
|
|
# 31953 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1524 "parsing/parser.mly"
|
|
( psig_typext _1 )
|
|
# 31959 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__1_inlined4_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 850 "parsing/parser.mly"
|
|
( wrap_mksig_ext ~loc:_sloc _1 )
|
|
# 31969 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1546 "parsing/parser.mly"
|
|
( _1 )
|
|
# 31975 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.type_exception * string Asttypes.loc option) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.signature_item) = let _1 =
|
|
let _1 =
|
|
# 1526 "parsing/parser.mly"
|
|
( psig_exception _1 )
|
|
# 32001 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 850 "parsing/parser.mly"
|
|
( wrap_mksig_ext ~loc:_sloc _1 )
|
|
# 32009 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1546 "parsing/parser.mly"
|
|
( _1 )
|
|
# 32015 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = body;
|
|
MenhirLib.EngineTypes.startp = _startpos_body_;
|
|
MenhirLib.EngineTypes.endp = _endpos_body_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = ext;
|
|
MenhirLib.EngineTypes.startp = _startpos_ext_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ext_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined3 : (Parsetree.attributes) = Obj.magic _1_inlined3 in
|
|
let body : (Parsetree.module_type) = Obj.magic body in
|
|
let _1_inlined2 : (string option) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let ext : (string Asttypes.loc option) = Obj.magic ext in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined3_ in
|
|
let _v : (Parsetree.signature_item) = let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let attrs2 =
|
|
let _1 = _1_inlined3 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 32080 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_attrs2_ = _endpos__1_inlined3_ in
|
|
let name =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 32092 "parsing/parser.ml"
|
|
|
|
in
|
|
let attrs1 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 32100 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_attrs2_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1555 "parsing/parser.mly"
|
|
(
|
|
let attrs = attrs1 @ attrs2 in
|
|
let loc = make_loc _sloc in
|
|
let docs = symbol_docs _sloc in
|
|
Md.mk name body ~attrs ~loc ~docs, ext
|
|
)
|
|
# 32114 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1528 "parsing/parser.mly"
|
|
( let (body, ext) = _1 in (Psig_module body, ext) )
|
|
# 32120 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__1_inlined3_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 850 "parsing/parser.mly"
|
|
( wrap_mksig_ext ~loc:_sloc _1 )
|
|
# 32130 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1546 "parsing/parser.mly"
|
|
( _1 )
|
|
# 32136 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined4;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = ext;
|
|
MenhirLib.EngineTypes.startp = _startpos_ext_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ext_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined4 : (Parsetree.attributes) = Obj.magic _1_inlined4 in
|
|
let _1_inlined3 : (Longident.t) = Obj.magic _1_inlined3 in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _1_inlined2 : (string option) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let ext : (string Asttypes.loc option) = Obj.magic ext in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined4_ in
|
|
let _v : (Parsetree.signature_item) = let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let attrs2 =
|
|
let _1 = _1_inlined4 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 32208 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_attrs2_ = _endpos__1_inlined4_ in
|
|
let body =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined3_, _startpos__1_inlined3_, _1_inlined3) in
|
|
let id =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 32221 "parsing/parser.ml"
|
|
|
|
in
|
|
let (_endpos_id_, _startpos_id_) = (_endpos__1_, _startpos__1_) in
|
|
let _endpos = _endpos_id_ in
|
|
let _symbolstartpos = _startpos_id_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1591 "parsing/parser.mly"
|
|
( Mty.alias ~loc:(make_loc _sloc) id )
|
|
# 32231 "parsing/parser.ml"
|
|
|
|
in
|
|
let name =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 32242 "parsing/parser.ml"
|
|
|
|
in
|
|
let attrs1 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 32250 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_attrs2_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1582 "parsing/parser.mly"
|
|
(
|
|
let attrs = attrs1 @ attrs2 in
|
|
let loc = make_loc _sloc in
|
|
let docs = symbol_docs _sloc in
|
|
Md.mk name body ~attrs ~loc ~docs, ext
|
|
)
|
|
# 32264 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1530 "parsing/parser.mly"
|
|
( let (body, ext) = _1 in (Psig_module body, ext) )
|
|
# 32270 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__1_inlined4_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 850 "parsing/parser.mly"
|
|
( wrap_mksig_ext ~loc:_sloc _1 )
|
|
# 32280 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1546 "parsing/parser.mly"
|
|
( _1 )
|
|
# 32286 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.module_substitution * string Asttypes.loc option) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.signature_item) = let _1 =
|
|
let _1 =
|
|
# 1532 "parsing/parser.mly"
|
|
( let (body, ext) = _1 in (Psig_modsubst body, ext) )
|
|
# 32312 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 850 "parsing/parser.mly"
|
|
( wrap_mksig_ext ~loc:_sloc _1 )
|
|
# 32320 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1546 "parsing/parser.mly"
|
|
( _1 )
|
|
# 32326 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = bs;
|
|
MenhirLib.EngineTypes.startp = _startpos_bs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_bs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = mty;
|
|
MenhirLib.EngineTypes.startp = _startpos_mty_;
|
|
MenhirLib.EngineTypes.endp = _endpos_mty_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _6;
|
|
MenhirLib.EngineTypes.startp = _startpos__6_;
|
|
MenhirLib.EngineTypes.endp = _endpos__6_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = ext;
|
|
MenhirLib.EngineTypes.startp = _startpos_ext_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ext_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let bs : (Parsetree.module_declaration list) = Obj.magic bs in
|
|
let _1_inlined3 : (Parsetree.attributes) = Obj.magic _1_inlined3 in
|
|
let mty : (Parsetree.module_type) = Obj.magic mty in
|
|
let _6 : unit = Obj.magic _6 in
|
|
let _1_inlined2 : (string option) = Obj.magic _1_inlined2 in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let ext : (string Asttypes.loc option) = Obj.magic ext in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_bs_ in
|
|
let _v : (Parsetree.signature_item) = let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let a =
|
|
let attrs2 =
|
|
let _1 = _1_inlined3 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 32414 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_attrs2_ = _endpos__1_inlined3_ in
|
|
let name =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 32426 "parsing/parser.ml"
|
|
|
|
in
|
|
let attrs1 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 32434 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_attrs2_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1625 "parsing/parser.mly"
|
|
(
|
|
let attrs = attrs1 @ attrs2 in
|
|
let loc = make_loc _sloc in
|
|
let docs = symbol_docs _sloc in
|
|
ext, Md.mk name mty ~attrs ~loc ~docs
|
|
)
|
|
# 32448 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1023 "parsing/parser.mly"
|
|
( let (x, b) = a in x, b :: bs )
|
|
# 32454 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1614 "parsing/parser.mly"
|
|
( _1 )
|
|
# 32460 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1534 "parsing/parser.mly"
|
|
( let (ext, l) = _1 in (Psig_recmodule l, ext) )
|
|
# 32466 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos_bs_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 850 "parsing/parser.mly"
|
|
( wrap_mksig_ext ~loc:_sloc _1 )
|
|
# 32476 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1546 "parsing/parser.mly"
|
|
( _1 )
|
|
# 32482 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.module_type_declaration * string Asttypes.loc option) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.signature_item) = let _1 =
|
|
let _1 =
|
|
# 1536 "parsing/parser.mly"
|
|
( let (body, ext) = _1 in (Psig_modtype body, ext) )
|
|
# 32508 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 850 "parsing/parser.mly"
|
|
( wrap_mksig_ext ~loc:_sloc _1 )
|
|
# 32516 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1546 "parsing/parser.mly"
|
|
( _1 )
|
|
# 32522 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.open_description * string Asttypes.loc option) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.signature_item) = let _1 =
|
|
let _1 =
|
|
# 1538 "parsing/parser.mly"
|
|
( let (body, ext) = _1 in (Psig_open body, ext) )
|
|
# 32548 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 850 "parsing/parser.mly"
|
|
( wrap_mksig_ext ~loc:_sloc _1 )
|
|
# 32556 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1546 "parsing/parser.mly"
|
|
( _1 )
|
|
# 32562 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = thing;
|
|
MenhirLib.EngineTypes.startp = _startpos_thing_;
|
|
MenhirLib.EngineTypes.endp = _endpos_thing_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = ext;
|
|
MenhirLib.EngineTypes.startp = _startpos_ext_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ext_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let thing : (Parsetree.module_type) = Obj.magic thing in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let ext : (string Asttypes.loc option) = Obj.magic ext in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined2_ in
|
|
let _v : (Parsetree.signature_item) = let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let attrs2 =
|
|
let _1 = _1_inlined2 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 32620 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_attrs2_ = _endpos__1_inlined2_ in
|
|
let attrs1 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 32629 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_attrs2_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1384 "parsing/parser.mly"
|
|
(
|
|
let attrs = attrs1 @ attrs2 in
|
|
let loc = make_loc _sloc in
|
|
let docs = symbol_docs _sloc in
|
|
Incl.mk thing ~attrs ~loc ~docs, ext
|
|
)
|
|
# 32643 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1540 "parsing/parser.mly"
|
|
( psig_include _1 )
|
|
# 32649 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__1_inlined2_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 850 "parsing/parser.mly"
|
|
( wrap_mksig_ext ~loc:_sloc _1 )
|
|
# 32659 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1546 "parsing/parser.mly"
|
|
( _1 )
|
|
# 32665 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = bs;
|
|
MenhirLib.EngineTypes.startp = _startpos_bs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_bs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = cty;
|
|
MenhirLib.EngineTypes.startp = _startpos_cty_;
|
|
MenhirLib.EngineTypes.endp = _endpos_cty_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _7;
|
|
MenhirLib.EngineTypes.startp = _startpos__7_;
|
|
MenhirLib.EngineTypes.endp = _endpos__7_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = params;
|
|
MenhirLib.EngineTypes.startp = _startpos_params_;
|
|
MenhirLib.EngineTypes.endp = _endpos_params_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = virt;
|
|
MenhirLib.EngineTypes.startp = _startpos_virt_;
|
|
MenhirLib.EngineTypes.endp = _endpos_virt_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = ext;
|
|
MenhirLib.EngineTypes.startp = _startpos_ext_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ext_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let bs : (Parsetree.class_description list) = Obj.magic bs in
|
|
let _1_inlined3 : (Parsetree.attributes) = Obj.magic _1_inlined3 in
|
|
let cty : (Parsetree.class_type) = Obj.magic cty in
|
|
let _7 : unit = Obj.magic _7 in
|
|
let _1_inlined2 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 32744 "parsing/parser.ml"
|
|
) = Obj.magic _1_inlined2 in
|
|
let params : ((Parsetree.core_type * Asttypes.variance) list) = Obj.magic params in
|
|
let virt : (Asttypes.virtual_flag) = Obj.magic virt in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let ext : (string Asttypes.loc option) = Obj.magic ext in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_bs_ in
|
|
let _v : (Parsetree.signature_item) = let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let a =
|
|
let attrs2 =
|
|
let _1 = _1_inlined3 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 32764 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_attrs2_ = _endpos__1_inlined3_ in
|
|
let id =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 32776 "parsing/parser.ml"
|
|
|
|
in
|
|
let attrs1 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 32784 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_attrs2_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1955 "parsing/parser.mly"
|
|
(
|
|
let attrs = attrs1 @ attrs2 in
|
|
let loc = make_loc _sloc in
|
|
let docs = symbol_docs _sloc in
|
|
ext,
|
|
Ci.mk id cty ~virt ~params ~attrs ~loc ~docs
|
|
)
|
|
# 32799 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1023 "parsing/parser.mly"
|
|
( let (x, b) = a in x, b :: bs )
|
|
# 32805 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1943 "parsing/parser.mly"
|
|
( _1 )
|
|
# 32811 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1542 "parsing/parser.mly"
|
|
( let (ext, l) = _1 in (Psig_class l, ext) )
|
|
# 32817 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos_bs_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 850 "parsing/parser.mly"
|
|
( wrap_mksig_ext ~loc:_sloc _1 )
|
|
# 32827 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1546 "parsing/parser.mly"
|
|
( _1 )
|
|
# 32833 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (string Asttypes.loc option * Parsetree.class_type_declaration list) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.signature_item) = let _1 =
|
|
let _1 =
|
|
# 1544 "parsing/parser.mly"
|
|
( let (ext, l) = _1 in (Psig_class_type l, ext) )
|
|
# 32859 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 850 "parsing/parser.mly"
|
|
( wrap_mksig_ext ~loc:_sloc _1 )
|
|
# 32867 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1546 "parsing/parser.mly"
|
|
( _1 )
|
|
# 32873 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.constant) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.constant) =
|
|
# 3355 "parsing/parser.mly"
|
|
( _1 )
|
|
# 32898 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : (
|
|
# 628 "parsing/parser.mly"
|
|
(string * char option)
|
|
# 32925 "parsing/parser.ml"
|
|
) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.constant) =
|
|
# 3356 "parsing/parser.mly"
|
|
( let (n, m) = _2 in Pconst_integer("-" ^ n, m) )
|
|
# 32934 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : (
|
|
# 607 "parsing/parser.mly"
|
|
(string * char option)
|
|
# 32961 "parsing/parser.ml"
|
|
) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.constant) =
|
|
# 3357 "parsing/parser.mly"
|
|
( let (f, m) = _2 in Pconst_float("-" ^ f, m) )
|
|
# 32970 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : (
|
|
# 628 "parsing/parser.mly"
|
|
(string * char option)
|
|
# 32997 "parsing/parser.ml"
|
|
) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.constant) =
|
|
# 3358 "parsing/parser.mly"
|
|
( let (n, m) = _2 in Pconst_integer (n, m) )
|
|
# 33006 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : (
|
|
# 607 "parsing/parser.mly"
|
|
(string * char option)
|
|
# 33033 "parsing/parser.ml"
|
|
) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.constant) =
|
|
# 3359 "parsing/parser.mly"
|
|
( let (f, m) = _2 in Pconst_float(f, m) )
|
|
# 33042 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _1_inlined1 : ((Longident.t Asttypes.loc * Parsetree.pattern) list * unit option) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _1 =
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 2707 "parsing/parser.mly"
|
|
( let fields, closed = _1 in
|
|
let closed = match closed with Some () -> Open | None -> Closed in
|
|
fields, closed )
|
|
# 33087 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2678 "parsing/parser.mly"
|
|
( let (fields, closed) = _2 in
|
|
Ppat_record(fields, closed) )
|
|
# 33094 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__3_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 827 "parsing/parser.mly"
|
|
( mkpat ~loc:_sloc _1 )
|
|
# 33104 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2692 "parsing/parser.mly"
|
|
( _1 )
|
|
# 33110 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _1_inlined1 : ((Longident.t Asttypes.loc * Parsetree.pattern) list * unit option) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _1 =
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 2707 "parsing/parser.mly"
|
|
( let fields, closed = _1 in
|
|
let closed = match closed with Some () -> Open | None -> Closed in
|
|
fields, closed )
|
|
# 33155 "parsing/parser.ml"
|
|
|
|
in
|
|
let _loc__3_ = (_startpos__3_, _endpos__3_) in
|
|
let _loc__1_ = (_startpos__1_, _endpos__1_) in
|
|
|
|
# 2681 "parsing/parser.mly"
|
|
( unclosed "{" _loc__1_ "}" _loc__3_ )
|
|
# 33163 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__3_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 827 "parsing/parser.mly"
|
|
( mkpat ~loc:_sloc _1 )
|
|
# 33173 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2692 "parsing/parser.mly"
|
|
( _1 )
|
|
# 33179 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = ps;
|
|
MenhirLib.EngineTypes.startp = _startpos_ps_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ps_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let ps : (Parsetree.pattern list) = Obj.magic ps in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _1 =
|
|
let _2 =
|
|
# 2701 "parsing/parser.mly"
|
|
( ps )
|
|
# 33220 "parsing/parser.ml"
|
|
in
|
|
let _loc__3_ = (_startpos__3_, _endpos__3_) in
|
|
|
|
# 2683 "parsing/parser.mly"
|
|
( fst (mktailpat _loc__3_ _2) )
|
|
# 33226 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__3_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 827 "parsing/parser.mly"
|
|
( mkpat ~loc:_sloc _1 )
|
|
# 33236 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2692 "parsing/parser.mly"
|
|
( _1 )
|
|
# 33242 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = ps;
|
|
MenhirLib.EngineTypes.startp = _startpos_ps_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ps_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let ps : (Parsetree.pattern list) = Obj.magic ps in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _1 =
|
|
let _2 =
|
|
# 2701 "parsing/parser.mly"
|
|
( ps )
|
|
# 33283 "parsing/parser.ml"
|
|
in
|
|
let _loc__3_ = (_startpos__3_, _endpos__3_) in
|
|
let _loc__1_ = (_startpos__1_, _endpos__1_) in
|
|
|
|
# 2685 "parsing/parser.mly"
|
|
( unclosed "[" _loc__1_ "]" _loc__3_ )
|
|
# 33290 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__3_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 827 "parsing/parser.mly"
|
|
( mkpat ~loc:_sloc _1 )
|
|
# 33300 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2692 "parsing/parser.mly"
|
|
( _1 )
|
|
# 33306 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = ps;
|
|
MenhirLib.EngineTypes.startp = _startpos_ps_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ps_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let ps : (Parsetree.pattern list) = Obj.magic ps in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _1 =
|
|
let _2 =
|
|
# 2701 "parsing/parser.mly"
|
|
( ps )
|
|
# 33347 "parsing/parser.ml"
|
|
in
|
|
|
|
# 2687 "parsing/parser.mly"
|
|
( Ppat_array _2 )
|
|
# 33352 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__3_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 827 "parsing/parser.mly"
|
|
( mkpat ~loc:_sloc _1 )
|
|
# 33362 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2692 "parsing/parser.mly"
|
|
( _1 )
|
|
# 33368 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _1 =
|
|
# 2689 "parsing/parser.mly"
|
|
( Ppat_array [] )
|
|
# 33401 "parsing/parser.ml"
|
|
in
|
|
let _endpos__1_ = _endpos__2_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 827 "parsing/parser.mly"
|
|
( mkpat ~loc:_sloc _1 )
|
|
# 33410 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2692 "parsing/parser.mly"
|
|
( _1 )
|
|
# 33416 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = ps;
|
|
MenhirLib.EngineTypes.startp = _startpos_ps_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ps_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let ps : (Parsetree.pattern list) = Obj.magic ps in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _1 =
|
|
let _2 =
|
|
# 2701 "parsing/parser.mly"
|
|
( ps )
|
|
# 33457 "parsing/parser.ml"
|
|
in
|
|
let _loc__3_ = (_startpos__3_, _endpos__3_) in
|
|
let _loc__1_ = (_startpos__1_, _endpos__1_) in
|
|
|
|
# 2691 "parsing/parser.mly"
|
|
( unclosed "[|" _loc__1_ "|]" _loc__3_ )
|
|
# 33464 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__3_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 827 "parsing/parser.mly"
|
|
( mkpat ~loc:_sloc _1 )
|
|
# 33474 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2692 "parsing/parser.mly"
|
|
( _1 )
|
|
# 33480 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : (Parsetree.expression) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.expression) = let _endpos = _endpos__3_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2190 "parsing/parser.mly"
|
|
( reloc_exp ~loc:_sloc _2 )
|
|
# 33522 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : (Parsetree.expression) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.expression) = let _loc__3_ = (_startpos__3_, _endpos__3_) in
|
|
let _loc__1_ = (_startpos__1_, _endpos__1_) in
|
|
|
|
# 2192 "parsing/parser.mly"
|
|
( unclosed "(" _loc__1_ ")" _loc__3_ )
|
|
# 33563 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let _3 : (Parsetree.core_type option * Parsetree.core_type option) = Obj.magic _3 in
|
|
let _2 : (Parsetree.expression) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__4_ in
|
|
let _v : (Parsetree.expression) = let _endpos = _endpos__4_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2194 "parsing/parser.mly"
|
|
( mkexp_constraint ~loc:_sloc _2 _3 )
|
|
# 33612 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _4 : (Parsetree.expression) = Obj.magic _4 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.expression) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.expression) = let _endpos = _endpos__5_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2196 "parsing/parser.mly"
|
|
( array_get ~loc:_sloc _1 _4 )
|
|
# 33668 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _4 : (Parsetree.expression) = Obj.magic _4 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.expression) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.expression) = let _loc__5_ = (_startpos__5_, _endpos__5_) in
|
|
let _loc__3_ = (_startpos__3_, _endpos__3_) in
|
|
|
|
# 2198 "parsing/parser.mly"
|
|
( unclosed "(" _loc__3_ ")" _loc__5_ )
|
|
# 33723 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _4 : (Parsetree.expression) = Obj.magic _4 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.expression) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.expression) = let _endpos = _endpos__5_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2200 "parsing/parser.mly"
|
|
( string_get ~loc:_sloc _1 _4 )
|
|
# 33779 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _4 : (Parsetree.expression) = Obj.magic _4 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.expression) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.expression) = let _loc__5_ = (_startpos__5_, _endpos__5_) in
|
|
let _loc__3_ = (_startpos__3_, _endpos__3_) in
|
|
|
|
# 2202 "parsing/parser.mly"
|
|
( unclosed "[" _loc__3_ "]" _loc__5_ )
|
|
# 33834 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = es;
|
|
MenhirLib.EngineTypes.startp = _startpos_es_;
|
|
MenhirLib.EngineTypes.endp = _endpos_es_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let es : (Parsetree.expression list) = Obj.magic es in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : (
|
|
# 623 "parsing/parser.mly"
|
|
(string)
|
|
# 33882 "parsing/parser.ml"
|
|
) = Obj.magic _2 in
|
|
let _1 : (Parsetree.expression) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.expression) = let _4 =
|
|
# 2536 "parsing/parser.mly"
|
|
( es )
|
|
# 33891 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__5_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2204 "parsing/parser.mly"
|
|
( dotop_get ~loc:_sloc lident bracket _2 _1 _4 )
|
|
# 33899 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = es;
|
|
MenhirLib.EngineTypes.startp = _startpos_es_;
|
|
MenhirLib.EngineTypes.endp = _endpos_es_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let es : (Parsetree.expression list) = Obj.magic es in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : (
|
|
# 623 "parsing/parser.mly"
|
|
(string)
|
|
# 33947 "parsing/parser.ml"
|
|
) = Obj.magic _2 in
|
|
let _1 : (Parsetree.expression) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.expression) = let _4 =
|
|
# 2536 "parsing/parser.mly"
|
|
( es )
|
|
# 33956 "parsing/parser.ml"
|
|
in
|
|
let _loc__5_ = (_startpos__5_, _endpos__5_) in
|
|
let _loc__3_ = (_startpos__3_, _endpos__3_) in
|
|
|
|
# 2206 "parsing/parser.mly"
|
|
( unclosed "[" _loc__3_ "]" _loc__5_ )
|
|
# 33963 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = es;
|
|
MenhirLib.EngineTypes.startp = _startpos_es_;
|
|
MenhirLib.EngineTypes.endp = _endpos_es_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let es : (Parsetree.expression list) = Obj.magic es in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : (
|
|
# 623 "parsing/parser.mly"
|
|
(string)
|
|
# 34011 "parsing/parser.ml"
|
|
) = Obj.magic _2 in
|
|
let _1 : (Parsetree.expression) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.expression) = let _4 =
|
|
# 2536 "parsing/parser.mly"
|
|
( es )
|
|
# 34020 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__5_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2208 "parsing/parser.mly"
|
|
( dotop_get ~loc:_sloc lident paren _2 _1 _4 )
|
|
# 34028 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = es;
|
|
MenhirLib.EngineTypes.startp = _startpos_es_;
|
|
MenhirLib.EngineTypes.endp = _endpos_es_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let es : (Parsetree.expression list) = Obj.magic es in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : (
|
|
# 623 "parsing/parser.mly"
|
|
(string)
|
|
# 34076 "parsing/parser.ml"
|
|
) = Obj.magic _2 in
|
|
let _1 : (Parsetree.expression) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.expression) = let _4 =
|
|
# 2536 "parsing/parser.mly"
|
|
( es )
|
|
# 34085 "parsing/parser.ml"
|
|
in
|
|
let _loc__5_ = (_startpos__5_, _endpos__5_) in
|
|
let _loc__3_ = (_startpos__3_, _endpos__3_) in
|
|
|
|
# 2210 "parsing/parser.mly"
|
|
( unclosed "(" _loc__3_ ")" _loc__5_ )
|
|
# 34092 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = es;
|
|
MenhirLib.EngineTypes.startp = _startpos_es_;
|
|
MenhirLib.EngineTypes.endp = _endpos_es_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let es : (Parsetree.expression list) = Obj.magic es in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : (
|
|
# 623 "parsing/parser.mly"
|
|
(string)
|
|
# 34140 "parsing/parser.ml"
|
|
) = Obj.magic _2 in
|
|
let _1 : (Parsetree.expression) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.expression) = let _4 =
|
|
# 2536 "parsing/parser.mly"
|
|
( es )
|
|
# 34149 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__5_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2212 "parsing/parser.mly"
|
|
( dotop_get ~loc:_sloc lident brace _2 _1 _4 )
|
|
# 34157 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _4 : (Parsetree.expression) = Obj.magic _4 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : (
|
|
# 623 "parsing/parser.mly"
|
|
(string)
|
|
# 34205 "parsing/parser.ml"
|
|
) = Obj.magic _2 in
|
|
let _1 : (Parsetree.expression) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.expression) = let _loc__5_ = (_startpos__5_, _endpos__5_) in
|
|
let _loc__3_ = (_startpos__3_, _endpos__3_) in
|
|
|
|
# 2214 "parsing/parser.mly"
|
|
( unclosed "{" _loc__3_ "}" _loc__5_ )
|
|
# 34216 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _7;
|
|
MenhirLib.EngineTypes.startp = _startpos__7_;
|
|
MenhirLib.EngineTypes.endp = _endpos__7_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = es;
|
|
MenhirLib.EngineTypes.startp = _startpos_es_;
|
|
MenhirLib.EngineTypes.endp = _endpos_es_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _7 : unit = Obj.magic _7 in
|
|
let es : (Parsetree.expression list) = Obj.magic es in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _4 : (
|
|
# 623 "parsing/parser.mly"
|
|
(string)
|
|
# 34276 "parsing/parser.ml"
|
|
) = Obj.magic _4 in
|
|
let _3 : (Longident.t) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.expression) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__7_ in
|
|
let _v : (Parsetree.expression) = let _6 =
|
|
# 2536 "parsing/parser.mly"
|
|
( es )
|
|
# 34287 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__7_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2216 "parsing/parser.mly"
|
|
( dotop_get ~loc:_sloc (ldot _3) bracket _4 _1 _6 )
|
|
# 34295 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _7;
|
|
MenhirLib.EngineTypes.startp = _startpos__7_;
|
|
MenhirLib.EngineTypes.endp = _endpos__7_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = es;
|
|
MenhirLib.EngineTypes.startp = _startpos_es_;
|
|
MenhirLib.EngineTypes.endp = _endpos_es_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _7 : unit = Obj.magic _7 in
|
|
let es : (Parsetree.expression list) = Obj.magic es in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _4 : (
|
|
# 623 "parsing/parser.mly"
|
|
(string)
|
|
# 34355 "parsing/parser.ml"
|
|
) = Obj.magic _4 in
|
|
let _3 : (Longident.t) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.expression) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__7_ in
|
|
let _v : (Parsetree.expression) = let _6 =
|
|
# 2536 "parsing/parser.mly"
|
|
( es )
|
|
# 34366 "parsing/parser.ml"
|
|
in
|
|
let _loc__7_ = (_startpos__7_, _endpos__7_) in
|
|
let _loc__5_ = (_startpos__5_, _endpos__5_) in
|
|
|
|
# 2219 "parsing/parser.mly"
|
|
( unclosed "[" _loc__5_ "]" _loc__7_ )
|
|
# 34373 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _7;
|
|
MenhirLib.EngineTypes.startp = _startpos__7_;
|
|
MenhirLib.EngineTypes.endp = _endpos__7_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = es;
|
|
MenhirLib.EngineTypes.startp = _startpos_es_;
|
|
MenhirLib.EngineTypes.endp = _endpos_es_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _7 : unit = Obj.magic _7 in
|
|
let es : (Parsetree.expression list) = Obj.magic es in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _4 : (
|
|
# 623 "parsing/parser.mly"
|
|
(string)
|
|
# 34433 "parsing/parser.ml"
|
|
) = Obj.magic _4 in
|
|
let _3 : (Longident.t) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.expression) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__7_ in
|
|
let _v : (Parsetree.expression) = let _6 =
|
|
# 2536 "parsing/parser.mly"
|
|
( es )
|
|
# 34444 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__7_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2221 "parsing/parser.mly"
|
|
( dotop_get ~loc:_sloc (ldot _3) paren _4 _1 _6 )
|
|
# 34452 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _7;
|
|
MenhirLib.EngineTypes.startp = _startpos__7_;
|
|
MenhirLib.EngineTypes.endp = _endpos__7_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = es;
|
|
MenhirLib.EngineTypes.startp = _startpos_es_;
|
|
MenhirLib.EngineTypes.endp = _endpos_es_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _7 : unit = Obj.magic _7 in
|
|
let es : (Parsetree.expression list) = Obj.magic es in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _4 : (
|
|
# 623 "parsing/parser.mly"
|
|
(string)
|
|
# 34512 "parsing/parser.ml"
|
|
) = Obj.magic _4 in
|
|
let _3 : (Longident.t) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.expression) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__7_ in
|
|
let _v : (Parsetree.expression) = let _6 =
|
|
# 2536 "parsing/parser.mly"
|
|
( es )
|
|
# 34523 "parsing/parser.ml"
|
|
in
|
|
let _loc__7_ = (_startpos__7_, _endpos__7_) in
|
|
let _loc__5_ = (_startpos__5_, _endpos__5_) in
|
|
|
|
# 2224 "parsing/parser.mly"
|
|
( unclosed "(" _loc__5_ ")" _loc__7_ )
|
|
# 34530 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _7;
|
|
MenhirLib.EngineTypes.startp = _startpos__7_;
|
|
MenhirLib.EngineTypes.endp = _endpos__7_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = es;
|
|
MenhirLib.EngineTypes.startp = _startpos_es_;
|
|
MenhirLib.EngineTypes.endp = _endpos_es_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _7 : unit = Obj.magic _7 in
|
|
let es : (Parsetree.expression list) = Obj.magic es in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _4 : (
|
|
# 623 "parsing/parser.mly"
|
|
(string)
|
|
# 34590 "parsing/parser.ml"
|
|
) = Obj.magic _4 in
|
|
let _3 : (Longident.t) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.expression) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__7_ in
|
|
let _v : (Parsetree.expression) = let _6 =
|
|
# 2536 "parsing/parser.mly"
|
|
( es )
|
|
# 34601 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__7_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2226 "parsing/parser.mly"
|
|
( dotop_get ~loc:_sloc (ldot _3) brace _4 _1 _6 )
|
|
# 34609 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _7;
|
|
MenhirLib.EngineTypes.startp = _startpos__7_;
|
|
MenhirLib.EngineTypes.endp = _endpos__7_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = es;
|
|
MenhirLib.EngineTypes.startp = _startpos_es_;
|
|
MenhirLib.EngineTypes.endp = _endpos_es_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _7 : unit = Obj.magic _7 in
|
|
let es : (Parsetree.expression list) = Obj.magic es in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _4 : (
|
|
# 623 "parsing/parser.mly"
|
|
(string)
|
|
# 34669 "parsing/parser.ml"
|
|
) = Obj.magic _4 in
|
|
let _3 : (Longident.t) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.expression) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__7_ in
|
|
let _v : (Parsetree.expression) = let _6 =
|
|
# 2536 "parsing/parser.mly"
|
|
( es )
|
|
# 34680 "parsing/parser.ml"
|
|
in
|
|
let _loc__7_ = (_startpos__7_, _endpos__7_) in
|
|
let _loc__5_ = (_startpos__5_, _endpos__5_) in
|
|
|
|
# 2229 "parsing/parser.mly"
|
|
( unclosed "{" _loc__5_ "}" _loc__7_ )
|
|
# 34687 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _4 : (Parsetree.expression) = Obj.magic _4 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.expression) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.expression) = let _endpos = _endpos__5_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2231 "parsing/parser.mly"
|
|
( bigarray_get ~loc:_sloc _1 _4 )
|
|
# 34743 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _4 : (Parsetree.expression) = Obj.magic _4 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.expression) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.expression) = let _loc__5_ = (_startpos__5_, _endpos__5_) in
|
|
let _loc__3_ = (_startpos__3_, _endpos__3_) in
|
|
|
|
# 2233 "parsing/parser.mly"
|
|
( unclosed "{" _loc__3_ "}" _loc__5_ )
|
|
# 34798 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = e;
|
|
MenhirLib.EngineTypes.startp = _startpos_e_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = ext;
|
|
MenhirLib.EngineTypes.startp = _startpos_ext_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ext_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let e : (Parsetree.expression) = Obj.magic e in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let ext : (string Asttypes.loc option) = Obj.magic ext in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let attrs =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 34854 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2242 "parsing/parser.mly"
|
|
( e.pexp_desc, (ext, attrs @ e.pexp_attributes) )
|
|
# 34860 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__5_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2235 "parsing/parser.mly"
|
|
( let desc, attrs = _1 in
|
|
mkexp_attrs ~loc:_sloc desc attrs )
|
|
# 34871 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (string Asttypes.loc option) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _2 =
|
|
let (_1_inlined1, _1) = (_1_inlined2, _1_inlined1) in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 34922 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3680 "parsing/parser.mly"
|
|
( _1, _2 )
|
|
# 34928 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__3_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2244 "parsing/parser.mly"
|
|
( Pexp_construct (mkloc (Lident "()") (make_loc _sloc), None), _2 )
|
|
# 34937 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__3_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2235 "parsing/parser.mly"
|
|
( let desc, attrs = _1 in
|
|
mkexp_attrs ~loc:_sloc desc attrs )
|
|
# 34948 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let _3 : (Parsetree.expression) = Obj.magic _3 in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (string Asttypes.loc option) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__4_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _2 =
|
|
let (_1_inlined1, _1) = (_1_inlined2, _1_inlined1) in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 35006 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3680 "parsing/parser.mly"
|
|
( _1, _2 )
|
|
# 35012 "parsing/parser.ml"
|
|
|
|
in
|
|
let _loc__4_ = (_startpos__4_, _endpos__4_) in
|
|
let _loc__1_ = (_startpos__1_, _endpos__1_) in
|
|
|
|
# 2246 "parsing/parser.mly"
|
|
( unclosed "begin" _loc__1_ "end" _loc__4_ )
|
|
# 35020 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__4_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2235 "parsing/parser.mly"
|
|
( let desc, attrs = _1 in
|
|
mkexp_attrs ~loc:_sloc desc attrs )
|
|
# 35031 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined3 : (Longident.t) = Obj.magic _1_inlined3 in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (string Asttypes.loc option) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined3_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _3 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined3_, _startpos__1_inlined3_, _1_inlined3) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 35083 "parsing/parser.ml"
|
|
|
|
in
|
|
let _2 =
|
|
let (_1_inlined1, _1) = (_1_inlined2, _1_inlined1) in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 35093 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3680 "parsing/parser.mly"
|
|
( _1, _2 )
|
|
# 35099 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2248 "parsing/parser.mly"
|
|
( Pexp_new(_3), _2 )
|
|
# 35105 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__1_inlined3_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2235 "parsing/parser.mly"
|
|
( let desc, attrs = _1 in
|
|
mkexp_attrs ~loc:_sloc desc attrs )
|
|
# 35116 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _4 : (Parsetree.module_expr) = Obj.magic _4 in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (string Asttypes.loc option) = Obj.magic _1_inlined1 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _3 =
|
|
let (_1_inlined1, _1) = (_1_inlined2, _1_inlined1) in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 35181 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3680 "parsing/parser.mly"
|
|
( _1, _2 )
|
|
# 35187 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2250 "parsing/parser.mly"
|
|
( Pexp_pack _4, _3 )
|
|
# 35193 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__5_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2235 "parsing/parser.mly"
|
|
( let desc, attrs = _1 in
|
|
mkexp_attrs ~loc:_sloc desc attrs )
|
|
# 35204 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _7;
|
|
MenhirLib.EngineTypes.startp = _startpos__7_;
|
|
MenhirLib.EngineTypes.endp = _endpos__7_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _7 : unit = Obj.magic _7 in
|
|
let _1_inlined3 : (Parsetree.module_type) = Obj.magic _1_inlined3 in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _4 : (Parsetree.module_expr) = Obj.magic _4 in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (string Asttypes.loc option) = Obj.magic _1_inlined1 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__7_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _6 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined3_, _startpos__1_inlined3_, _1_inlined3) in
|
|
let _1 =
|
|
let _1 =
|
|
# 3270 "parsing/parser.mly"
|
|
( Ptyp_package (package_type_of_module_type _1) )
|
|
# 35282 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 829 "parsing/parser.mly"
|
|
( mktyp ~loc:_sloc _1 )
|
|
# 35290 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3271 "parsing/parser.mly"
|
|
( _1 )
|
|
# 35296 "parsing/parser.ml"
|
|
|
|
in
|
|
let _3 =
|
|
let (_1_inlined1, _1) = (_1_inlined2, _1_inlined1) in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 35306 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3680 "parsing/parser.mly"
|
|
( _1, _2 )
|
|
# 35312 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__7_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2252 "parsing/parser.mly"
|
|
( Pexp_constraint (ghexp ~loc:_sloc (Pexp_pack _4), _6), _3 )
|
|
# 35321 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__7_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2235 "parsing/parser.mly"
|
|
( let desc, attrs = _1 in
|
|
mkexp_attrs ~loc:_sloc desc attrs )
|
|
# 35332 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _6;
|
|
MenhirLib.EngineTypes.startp = _startpos__6_;
|
|
MenhirLib.EngineTypes.endp = _endpos__6_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _6 : unit = Obj.magic _6 in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _4 : (Parsetree.module_expr) = Obj.magic _4 in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (string Asttypes.loc option) = Obj.magic _1_inlined1 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__6_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _3 =
|
|
let (_1_inlined1, _1) = (_1_inlined2, _1_inlined1) in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 35404 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3680 "parsing/parser.mly"
|
|
( _1, _2 )
|
|
# 35410 "parsing/parser.ml"
|
|
|
|
in
|
|
let _loc__6_ = (_startpos__6_, _endpos__6_) in
|
|
let _loc__1_ = (_startpos__1_, _endpos__1_) in
|
|
|
|
# 2254 "parsing/parser.mly"
|
|
( unclosed "(" _loc__1_ ")" _loc__6_ )
|
|
# 35418 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__6_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2235 "parsing/parser.mly"
|
|
( let desc, attrs = _1 in
|
|
mkexp_attrs ~loc:_sloc desc attrs )
|
|
# 35429 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 35460 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2258 "parsing/parser.mly"
|
|
( Pexp_ident (_1) )
|
|
# 35466 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 35475 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2238 "parsing/parser.mly"
|
|
( _1 )
|
|
# 35481 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.constant) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
# 2260 "parsing/parser.mly"
|
|
( Pexp_constant _1 )
|
|
# 35507 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 35515 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2238 "parsing/parser.mly"
|
|
( _1 )
|
|
# 35521 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 35552 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2262 "parsing/parser.mly"
|
|
( Pexp_construct(_1, None) )
|
|
# 35558 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 35567 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2238 "parsing/parser.mly"
|
|
( _1 )
|
|
# 35573 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Asttypes.label) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
# 2264 "parsing/parser.mly"
|
|
( Pexp_variant(_1, None) )
|
|
# 35599 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 35607 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2238 "parsing/parser.mly"
|
|
( _1 )
|
|
# 35613 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : (Parsetree.expression) = Obj.magic _2 in
|
|
let _1 : (
|
|
# 666 "parsing/parser.mly"
|
|
(string)
|
|
# 35641 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 819 "parsing/parser.mly"
|
|
( mkoperator ~loc:_sloc _1 )
|
|
# 35655 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2266 "parsing/parser.mly"
|
|
( Pexp_apply(_1, [Nolabel,_2]) )
|
|
# 35661 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__2_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 35671 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2238 "parsing/parser.mly"
|
|
( _1 )
|
|
# 35677 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : (Parsetree.expression) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
# 2267 "parsing/parser.mly"
|
|
("!")
|
|
# 35712 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 819 "parsing/parser.mly"
|
|
( mkoperator ~loc:_sloc _1 )
|
|
# 35720 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2268 "parsing/parser.mly"
|
|
( Pexp_apply(_1, [Nolabel,_2]) )
|
|
# 35726 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__2_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 35736 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2238 "parsing/parser.mly"
|
|
( _1 )
|
|
# 35742 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let xs : ((Asttypes.label Asttypes.loc * Parsetree.expression) list) = Obj.magic xs in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let _2 =
|
|
# 2519 "parsing/parser.mly"
|
|
( xs )
|
|
# 35783 "parsing/parser.ml"
|
|
in
|
|
|
|
# 2270 "parsing/parser.mly"
|
|
( Pexp_override _2 )
|
|
# 35788 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__3_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 35798 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2238 "parsing/parser.mly"
|
|
( _1 )
|
|
# 35804 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let xs : ((Asttypes.label Asttypes.loc * Parsetree.expression) list) = Obj.magic xs in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let _2 =
|
|
# 2519 "parsing/parser.mly"
|
|
( xs )
|
|
# 35845 "parsing/parser.ml"
|
|
in
|
|
let _loc__3_ = (_startpos__3_, _endpos__3_) in
|
|
let _loc__1_ = (_startpos__1_, _endpos__1_) in
|
|
|
|
# 2272 "parsing/parser.mly"
|
|
( unclosed "{<" _loc__1_ ">}" _loc__3_ )
|
|
# 35852 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__3_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 35862 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2238 "parsing/parser.mly"
|
|
( _1 )
|
|
# 35868 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
# 2274 "parsing/parser.mly"
|
|
( Pexp_override [] )
|
|
# 35901 "parsing/parser.ml"
|
|
in
|
|
let _endpos__1_ = _endpos__2_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 35910 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2238 "parsing/parser.mly"
|
|
( _1 )
|
|
# 35916 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined1 : (Longident.t) = Obj.magic _1_inlined1 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.expression) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined1_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let _3 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined1_, _startpos__1_inlined1_, _1_inlined1) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 35962 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2276 "parsing/parser.mly"
|
|
( Pexp_field(_1, _3) )
|
|
# 35968 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__1_inlined1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 35978 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2238 "parsing/parser.mly"
|
|
( _1 )
|
|
# 35984 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _4 : (Parsetree.expression) = Obj.magic _4 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let od =
|
|
let _1 =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 36044 "parsing/parser.ml"
|
|
|
|
in
|
|
let _loc__1_ = (_startpos__1_, _endpos__1_) in
|
|
|
|
# 1443 "parsing/parser.mly"
|
|
( let loc = make_loc _loc__1_ in
|
|
let me = Mod.ident ~loc _1 in
|
|
Opn.mk ~loc me )
|
|
# 36053 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2278 "parsing/parser.mly"
|
|
( Pexp_open(od, _4) )
|
|
# 36059 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__5_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 36069 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2238 "parsing/parser.mly"
|
|
( _1 )
|
|
# 36075 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let xs : ((Asttypes.label Asttypes.loc * Parsetree.expression) list) = Obj.magic xs in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let _4 =
|
|
# 2519 "parsing/parser.mly"
|
|
( xs )
|
|
# 36130 "parsing/parser.ml"
|
|
in
|
|
let od =
|
|
let _1 =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 36140 "parsing/parser.ml"
|
|
|
|
in
|
|
let _loc__1_ = (_startpos__1_, _endpos__1_) in
|
|
|
|
# 1443 "parsing/parser.mly"
|
|
( let loc = make_loc _loc__1_ in
|
|
let me = Mod.ident ~loc _1 in
|
|
Opn.mk ~loc me )
|
|
# 36149 "parsing/parser.ml"
|
|
|
|
in
|
|
let _startpos_od_ = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _symbolstartpos = _startpos_od_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2280 "parsing/parser.mly"
|
|
( (* TODO: review the location of Pexp_override *)
|
|
Pexp_open(od, mkexp ~loc:_sloc (Pexp_override _4)) )
|
|
# 36160 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__5_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 36170 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2238 "parsing/parser.mly"
|
|
( _1 )
|
|
# 36176 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let xs : ((Asttypes.label Asttypes.loc * Parsetree.expression) list) = Obj.magic xs in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let _4 =
|
|
# 2519 "parsing/parser.mly"
|
|
( xs )
|
|
# 36231 "parsing/parser.ml"
|
|
in
|
|
let _loc__5_ = (_startpos__5_, _endpos__5_) in
|
|
let _loc__3_ = (_startpos__3_, _endpos__3_) in
|
|
|
|
# 2283 "parsing/parser.mly"
|
|
( unclosed "{<" _loc__3_ ">}" _loc__5_ )
|
|
# 36238 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__5_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 36248 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2238 "parsing/parser.mly"
|
|
( _1 )
|
|
# 36254 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined1 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 36287 "parsing/parser.ml"
|
|
) = Obj.magic _1_inlined1 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.expression) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined1_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let _3 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined1_, _startpos__1_inlined1_, _1_inlined1) in
|
|
let _1 =
|
|
# 3343 "parsing/parser.mly"
|
|
( _1 )
|
|
# 36301 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 36309 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2285 "parsing/parser.mly"
|
|
( Pexp_send(_1, _3) )
|
|
# 36315 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__1_inlined1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 36325 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2238 "parsing/parser.mly"
|
|
( _1 )
|
|
# 36331 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : (Parsetree.expression) = Obj.magic _3 in
|
|
let _1_inlined1 : (
|
|
# 677 "parsing/parser.mly"
|
|
(string)
|
|
# 36365 "parsing/parser.ml"
|
|
) = Obj.magic _1_inlined1 in
|
|
let _1 : (Parsetree.expression) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let _2 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined1_, _startpos__1_inlined1_, _1_inlined1) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 819 "parsing/parser.mly"
|
|
( mkoperator ~loc:_sloc _1 )
|
|
# 36381 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2287 "parsing/parser.mly"
|
|
( mkinfix _1 _2 _3 )
|
|
# 36387 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__3_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 36397 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2238 "parsing/parser.mly"
|
|
( _1 )
|
|
# 36403 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.extension) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
# 2289 "parsing/parser.mly"
|
|
( Pexp_extension _1 )
|
|
# 36429 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 36437 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2238 "parsing/parser.mly"
|
|
( _1 )
|
|
# 36443 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _2_inlined1 : unit = Obj.magic _2_inlined1 in
|
|
let _1_inlined1 : unit = Obj.magic _1_inlined1 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_inlined1_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let _3 =
|
|
let (_endpos__2_, _startpos__1_, _2, _1) = (_endpos__2_inlined1_, _startpos__1_inlined1_, _2_inlined1, _1_inlined1) in
|
|
let _1 =
|
|
# 2290 "parsing/parser.mly"
|
|
(Lident "()")
|
|
# 36493 "parsing/parser.ml"
|
|
in
|
|
let _endpos__1_ = _endpos__2_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 36502 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__3_ = _endpos__2_inlined1_ in
|
|
let od =
|
|
let _1 =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 36514 "parsing/parser.ml"
|
|
|
|
in
|
|
let _loc__1_ = (_startpos__1_, _endpos__1_) in
|
|
|
|
# 1443 "parsing/parser.mly"
|
|
( let loc = make_loc _loc__1_ in
|
|
let me = Mod.ident ~loc _1 in
|
|
Opn.mk ~loc me )
|
|
# 36523 "parsing/parser.ml"
|
|
|
|
in
|
|
let _startpos_od_ = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _symbolstartpos = _startpos_od_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2291 "parsing/parser.mly"
|
|
( (* TODO: review the location of Pexp_construct *)
|
|
Pexp_open(od, mkexp ~loc:_sloc (Pexp_construct(_3, None))) )
|
|
# 36534 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__2_inlined1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 36544 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2238 "parsing/parser.mly"
|
|
( _1 )
|
|
# 36550 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _4 : (Parsetree.expression) = Obj.magic _4 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let _loc__5_ = (_startpos__5_, _endpos__5_) in
|
|
let _loc__3_ = (_startpos__3_, _endpos__3_) in
|
|
|
|
# 2294 "parsing/parser.mly"
|
|
( unclosed "(" _loc__3_ ")" _loc__5_ )
|
|
# 36607 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__5_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 36617 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2238 "parsing/parser.mly"
|
|
( _1 )
|
|
# 36623 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : (Parsetree.expression option *
|
|
(Longident.t Asttypes.loc * Parsetree.expression) list) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
# 2296 "parsing/parser.mly"
|
|
( let (exten, fields) = _2 in
|
|
Pexp_record(fields, exten) )
|
|
# 36665 "parsing/parser.ml"
|
|
in
|
|
let _endpos__1_ = _endpos__3_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 36674 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2238 "parsing/parser.mly"
|
|
( _1 )
|
|
# 36680 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : (Parsetree.expression option *
|
|
(Longident.t Asttypes.loc * Parsetree.expression) list) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let _loc__3_ = (_startpos__3_, _endpos__3_) in
|
|
let _loc__1_ = (_startpos__1_, _endpos__1_) in
|
|
|
|
# 2299 "parsing/parser.mly"
|
|
( unclosed "{" _loc__1_ "}" _loc__3_ )
|
|
# 36724 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__3_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 36734 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2238 "parsing/parser.mly"
|
|
( _1 )
|
|
# 36740 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _4 : (Parsetree.expression option *
|
|
(Longident.t Asttypes.loc * Parsetree.expression) list) = Obj.magic _4 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let od =
|
|
let _1 =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 36801 "parsing/parser.ml"
|
|
|
|
in
|
|
let _loc__1_ = (_startpos__1_, _endpos__1_) in
|
|
|
|
# 1443 "parsing/parser.mly"
|
|
( let loc = make_loc _loc__1_ in
|
|
let me = Mod.ident ~loc _1 in
|
|
Opn.mk ~loc me )
|
|
# 36810 "parsing/parser.ml"
|
|
|
|
in
|
|
let _startpos_od_ = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _symbolstartpos = _startpos_od_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2301 "parsing/parser.mly"
|
|
( let (exten, fields) = _4 in
|
|
(* TODO: review the location of Pexp_construct *)
|
|
Pexp_open(od, mkexp ~loc:_sloc (Pexp_record(fields, exten))) )
|
|
# 36822 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__5_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 36832 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2238 "parsing/parser.mly"
|
|
( _1 )
|
|
# 36838 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _4 : (Parsetree.expression option *
|
|
(Longident.t Asttypes.loc * Parsetree.expression) list) = Obj.magic _4 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let _loc__5_ = (_startpos__5_, _endpos__5_) in
|
|
let _loc__3_ = (_startpos__3_, _endpos__3_) in
|
|
|
|
# 2305 "parsing/parser.mly"
|
|
( unclosed "{" _loc__3_ "}" _loc__5_ )
|
|
# 36896 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__5_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 36906 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2238 "parsing/parser.mly"
|
|
( _1 )
|
|
# 36912 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = es;
|
|
MenhirLib.EngineTypes.startp = _startpos_es_;
|
|
MenhirLib.EngineTypes.endp = _endpos_es_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let es : (Parsetree.expression list) = Obj.magic es in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let _2 =
|
|
# 2536 "parsing/parser.mly"
|
|
( es )
|
|
# 36953 "parsing/parser.ml"
|
|
in
|
|
|
|
# 2307 "parsing/parser.mly"
|
|
( Pexp_array(_2) )
|
|
# 36958 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__3_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 36968 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2238 "parsing/parser.mly"
|
|
( _1 )
|
|
# 36974 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = es;
|
|
MenhirLib.EngineTypes.startp = _startpos_es_;
|
|
MenhirLib.EngineTypes.endp = _endpos_es_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let es : (Parsetree.expression list) = Obj.magic es in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let _2 =
|
|
# 2536 "parsing/parser.mly"
|
|
( es )
|
|
# 37015 "parsing/parser.ml"
|
|
in
|
|
let _loc__3_ = (_startpos__3_, _endpos__3_) in
|
|
let _loc__1_ = (_startpos__1_, _endpos__1_) in
|
|
|
|
# 2309 "parsing/parser.mly"
|
|
( unclosed "[|" _loc__1_ "|]" _loc__3_ )
|
|
# 37022 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__3_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 37032 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2238 "parsing/parser.mly"
|
|
( _1 )
|
|
# 37038 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
# 2311 "parsing/parser.mly"
|
|
( Pexp_array [] )
|
|
# 37071 "parsing/parser.ml"
|
|
in
|
|
let _endpos__1_ = _endpos__2_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 37080 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2238 "parsing/parser.mly"
|
|
( _1 )
|
|
# 37086 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = es;
|
|
MenhirLib.EngineTypes.startp = _startpos_es_;
|
|
MenhirLib.EngineTypes.endp = _endpos_es_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let es : (Parsetree.expression list) = Obj.magic es in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let _4 =
|
|
# 2536 "parsing/parser.mly"
|
|
( es )
|
|
# 37141 "parsing/parser.ml"
|
|
in
|
|
let od =
|
|
let _1 =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 37151 "parsing/parser.ml"
|
|
|
|
in
|
|
let _loc__1_ = (_startpos__1_, _endpos__1_) in
|
|
|
|
# 1443 "parsing/parser.mly"
|
|
( let loc = make_loc _loc__1_ in
|
|
let me = Mod.ident ~loc _1 in
|
|
Opn.mk ~loc me )
|
|
# 37160 "parsing/parser.ml"
|
|
|
|
in
|
|
let _startpos_od_ = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _symbolstartpos = _startpos_od_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2313 "parsing/parser.mly"
|
|
( (* TODO: review the location of Pexp_array *)
|
|
Pexp_open(od, mkexp ~loc:_sloc (Pexp_array(_4))) )
|
|
# 37171 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__5_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 37181 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2238 "parsing/parser.mly"
|
|
( _1 )
|
|
# 37187 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__4_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let od =
|
|
let _1 =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 37240 "parsing/parser.ml"
|
|
|
|
in
|
|
let _loc__1_ = (_startpos__1_, _endpos__1_) in
|
|
|
|
# 1443 "parsing/parser.mly"
|
|
( let loc = make_loc _loc__1_ in
|
|
let me = Mod.ident ~loc _1 in
|
|
Opn.mk ~loc me )
|
|
# 37249 "parsing/parser.ml"
|
|
|
|
in
|
|
let _startpos_od_ = _startpos__1_ in
|
|
let _endpos = _endpos__4_ in
|
|
let _symbolstartpos = _startpos_od_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2316 "parsing/parser.mly"
|
|
( (* TODO: review the location of Pexp_array *)
|
|
Pexp_open(od, mkexp ~loc:_sloc (Pexp_array [])) )
|
|
# 37260 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__4_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 37270 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2238 "parsing/parser.mly"
|
|
( _1 )
|
|
# 37276 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = es;
|
|
MenhirLib.EngineTypes.startp = _startpos_es_;
|
|
MenhirLib.EngineTypes.endp = _endpos_es_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let es : (Parsetree.expression list) = Obj.magic es in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let _4 =
|
|
# 2536 "parsing/parser.mly"
|
|
( es )
|
|
# 37331 "parsing/parser.ml"
|
|
in
|
|
let _loc__5_ = (_startpos__5_, _endpos__5_) in
|
|
let _loc__3_ = (_startpos__3_, _endpos__3_) in
|
|
|
|
# 2320 "parsing/parser.mly"
|
|
( unclosed "[|" _loc__3_ "|]" _loc__5_ )
|
|
# 37338 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__5_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 37348 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2238 "parsing/parser.mly"
|
|
( _1 )
|
|
# 37354 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = es;
|
|
MenhirLib.EngineTypes.startp = _startpos_es_;
|
|
MenhirLib.EngineTypes.endp = _endpos_es_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let es : (Parsetree.expression list) = Obj.magic es in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let _2 =
|
|
# 2536 "parsing/parser.mly"
|
|
( es )
|
|
# 37395 "parsing/parser.ml"
|
|
in
|
|
let _loc__3_ = (_startpos__3_, _endpos__3_) in
|
|
|
|
# 2322 "parsing/parser.mly"
|
|
( fst (mktailexp _loc__3_ _2) )
|
|
# 37401 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__3_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 37411 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2238 "parsing/parser.mly"
|
|
( _1 )
|
|
# 37417 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = es;
|
|
MenhirLib.EngineTypes.startp = _startpos_es_;
|
|
MenhirLib.EngineTypes.endp = _endpos_es_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let es : (Parsetree.expression list) = Obj.magic es in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let _2 =
|
|
# 2536 "parsing/parser.mly"
|
|
( es )
|
|
# 37458 "parsing/parser.ml"
|
|
in
|
|
let _loc__3_ = (_startpos__3_, _endpos__3_) in
|
|
let _loc__1_ = (_startpos__1_, _endpos__1_) in
|
|
|
|
# 2324 "parsing/parser.mly"
|
|
( unclosed "[" _loc__1_ "]" _loc__3_ )
|
|
# 37465 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__3_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 37475 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2238 "parsing/parser.mly"
|
|
( _1 )
|
|
# 37481 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = es;
|
|
MenhirLib.EngineTypes.startp = _startpos_es_;
|
|
MenhirLib.EngineTypes.endp = _endpos_es_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let es : (Parsetree.expression list) = Obj.magic es in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let _4 =
|
|
# 2536 "parsing/parser.mly"
|
|
( es )
|
|
# 37536 "parsing/parser.ml"
|
|
in
|
|
let od =
|
|
let _1 =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 37546 "parsing/parser.ml"
|
|
|
|
in
|
|
let _loc__1_ = (_startpos__1_, _endpos__1_) in
|
|
|
|
# 1443 "parsing/parser.mly"
|
|
( let loc = make_loc _loc__1_ in
|
|
let me = Mod.ident ~loc _1 in
|
|
Opn.mk ~loc me )
|
|
# 37555 "parsing/parser.ml"
|
|
|
|
in
|
|
let _startpos_od_ = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _symbolstartpos = _startpos_od_ in
|
|
let _loc__5_ = (_startpos__5_, _endpos__5_) in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2326 "parsing/parser.mly"
|
|
( let list_exp =
|
|
(* TODO: review the location of list_exp *)
|
|
let tail_exp, _tail_loc = mktailexp _loc__5_ _4 in
|
|
mkexp ~loc:_sloc tail_exp in
|
|
Pexp_open(od, list_exp) )
|
|
# 37570 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__5_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 37580 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2238 "parsing/parser.mly"
|
|
( _1 )
|
|
# 37586 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _2_inlined1 : unit = Obj.magic _2_inlined1 in
|
|
let _1_inlined1 : unit = Obj.magic _1_inlined1 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_inlined1_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let _3 =
|
|
let (_endpos__2_, _startpos__1_, _2, _1) = (_endpos__2_inlined1_, _startpos__1_inlined1_, _2_inlined1, _1_inlined1) in
|
|
let _1 =
|
|
# 2331 "parsing/parser.mly"
|
|
(Lident "[]")
|
|
# 37636 "parsing/parser.ml"
|
|
in
|
|
let _endpos__1_ = _endpos__2_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 37645 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__3_ = _endpos__2_inlined1_ in
|
|
let od =
|
|
let _1 =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 37657 "parsing/parser.ml"
|
|
|
|
in
|
|
let _loc__1_ = (_startpos__1_, _endpos__1_) in
|
|
|
|
# 1443 "parsing/parser.mly"
|
|
( let loc = make_loc _loc__1_ in
|
|
let me = Mod.ident ~loc _1 in
|
|
Opn.mk ~loc me )
|
|
# 37666 "parsing/parser.ml"
|
|
|
|
in
|
|
let _startpos_od_ = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _symbolstartpos = _startpos_od_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2332 "parsing/parser.mly"
|
|
( (* TODO: review the location of Pexp_construct *)
|
|
Pexp_open(od, mkexp ~loc:_sloc (Pexp_construct(_3, None))) )
|
|
# 37677 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__2_inlined1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 37687 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2238 "parsing/parser.mly"
|
|
( _1 )
|
|
# 37693 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = es;
|
|
MenhirLib.EngineTypes.startp = _startpos_es_;
|
|
MenhirLib.EngineTypes.endp = _endpos_es_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let es : (Parsetree.expression list) = Obj.magic es in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let _4 =
|
|
# 2536 "parsing/parser.mly"
|
|
( es )
|
|
# 37748 "parsing/parser.ml"
|
|
in
|
|
let _loc__5_ = (_startpos__5_, _endpos__5_) in
|
|
let _loc__3_ = (_startpos__3_, _endpos__3_) in
|
|
|
|
# 2336 "parsing/parser.mly"
|
|
( unclosed "[" _loc__3_ "]" _loc__5_ )
|
|
# 37755 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__5_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 37765 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2238 "parsing/parser.mly"
|
|
( _1 )
|
|
# 37771 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _9;
|
|
MenhirLib.EngineTypes.startp = _startpos__9_;
|
|
MenhirLib.EngineTypes.endp = _endpos__9_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _7;
|
|
MenhirLib.EngineTypes.startp = _startpos__7_;
|
|
MenhirLib.EngineTypes.endp = _endpos__7_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _6;
|
|
MenhirLib.EngineTypes.startp = _startpos__6_;
|
|
MenhirLib.EngineTypes.endp = _endpos__6_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _9 : unit = Obj.magic _9 in
|
|
let _1_inlined3 : (Parsetree.module_type) = Obj.magic _1_inlined3 in
|
|
let _7 : unit = Obj.magic _7 in
|
|
let _6 : (Parsetree.module_expr) = Obj.magic _6 in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (string Asttypes.loc option) = Obj.magic _1_inlined1 in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__9_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let _8 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined3_, _startpos__1_inlined3_, _1_inlined3) in
|
|
let _1 =
|
|
let _1 =
|
|
# 3270 "parsing/parser.mly"
|
|
( Ptyp_package (package_type_of_module_type _1) )
|
|
# 37864 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 829 "parsing/parser.mly"
|
|
( mktyp ~loc:_sloc _1 )
|
|
# 37872 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3271 "parsing/parser.mly"
|
|
( _1 )
|
|
# 37878 "parsing/parser.ml"
|
|
|
|
in
|
|
let _5 =
|
|
let (_1_inlined1, _1) = (_1_inlined2, _1_inlined1) in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 37888 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3680 "parsing/parser.mly"
|
|
( _1, _2 )
|
|
# 37894 "parsing/parser.ml"
|
|
|
|
in
|
|
let od =
|
|
let _1 =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 37905 "parsing/parser.ml"
|
|
|
|
in
|
|
let _loc__1_ = (_startpos__1_, _endpos__1_) in
|
|
|
|
# 1443 "parsing/parser.mly"
|
|
( let loc = make_loc _loc__1_ in
|
|
let me = Mod.ident ~loc _1 in
|
|
Opn.mk ~loc me )
|
|
# 37914 "parsing/parser.ml"
|
|
|
|
in
|
|
let _startpos_od_ = _startpos__1_ in
|
|
let _endpos = _endpos__9_ in
|
|
let _symbolstartpos = _startpos_od_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2339 "parsing/parser.mly"
|
|
( (* TODO: review the location of Pexp_constraint *)
|
|
let modexp =
|
|
mkexp_attrs ~loc:_sloc
|
|
(Pexp_constraint (ghexp ~loc:_sloc (Pexp_pack _6), _8)) _5 in
|
|
Pexp_open(od, modexp) )
|
|
# 37928 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__9_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 37938 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2238 "parsing/parser.mly"
|
|
( _1 )
|
|
# 37944 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _8;
|
|
MenhirLib.EngineTypes.startp = _startpos__8_;
|
|
MenhirLib.EngineTypes.endp = _endpos__8_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _7;
|
|
MenhirLib.EngineTypes.startp = _startpos__7_;
|
|
MenhirLib.EngineTypes.endp = _endpos__7_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _6;
|
|
MenhirLib.EngineTypes.startp = _startpos__6_;
|
|
MenhirLib.EngineTypes.endp = _endpos__6_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _8 : unit = Obj.magic _8 in
|
|
let _7 : unit = Obj.magic _7 in
|
|
let _6 : (Parsetree.module_expr) = Obj.magic _6 in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (string Asttypes.loc option) = Obj.magic _1_inlined1 in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__8_ in
|
|
let _v : (Parsetree.expression) = let _1 =
|
|
let _1 =
|
|
let _5 =
|
|
let (_1_inlined1, _1) = (_1_inlined2, _1_inlined1) in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 38031 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3680 "parsing/parser.mly"
|
|
( _1, _2 )
|
|
# 38037 "parsing/parser.ml"
|
|
|
|
in
|
|
let _loc__8_ = (_startpos__8_, _endpos__8_) in
|
|
let _loc__3_ = (_startpos__3_, _endpos__3_) in
|
|
|
|
# 2346 "parsing/parser.mly"
|
|
( unclosed "(" _loc__3_ ")" _loc__8_ )
|
|
# 38045 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__8_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 825 "parsing/parser.mly"
|
|
( mkexp ~loc:_sloc _1 )
|
|
# 38055 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2238 "parsing/parser.mly"
|
|
( _1 )
|
|
# 38061 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (string) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 38092 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2616 "parsing/parser.mly"
|
|
( Ppat_var (_1) )
|
|
# 38098 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 827 "parsing/parser.mly"
|
|
( mkpat ~loc:_sloc _1 )
|
|
# 38107 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2617 "parsing/parser.mly"
|
|
( _1 )
|
|
# 38113 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.pattern) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.pattern) =
|
|
# 2618 "parsing/parser.mly"
|
|
( _1 )
|
|
# 38138 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : (Parsetree.pattern) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.pattern) = let _endpos = _endpos__3_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2623 "parsing/parser.mly"
|
|
( reloc_pat ~loc:_sloc _2 )
|
|
# 38180 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.pattern) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.pattern) =
|
|
# 2625 "parsing/parser.mly"
|
|
( _1 )
|
|
# 38205 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _1_inlined3 : (string option) = Obj.magic _1_inlined3 in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (string Asttypes.loc option) = Obj.magic _1_inlined1 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.pattern) = let _4 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined3_, _startpos__1_inlined3_, _1_inlined3) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 38270 "parsing/parser.ml"
|
|
|
|
in
|
|
let _3 =
|
|
let (_1_inlined1, _1) = (_1_inlined2, _1_inlined1) in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 38280 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3680 "parsing/parser.mly"
|
|
( _1, _2 )
|
|
# 38286 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__5_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2627 "parsing/parser.mly"
|
|
( mkpat_attrs ~loc:_sloc (Ppat_unpack _4) _3 )
|
|
# 38295 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _7;
|
|
MenhirLib.EngineTypes.startp = _startpos__7_;
|
|
MenhirLib.EngineTypes.endp = _endpos__7_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined4;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _7 : unit = Obj.magic _7 in
|
|
let _1_inlined4 : (Parsetree.module_type) = Obj.magic _1_inlined4 in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _1_inlined3 : (string option) = Obj.magic _1_inlined3 in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (string Asttypes.loc option) = Obj.magic _1_inlined1 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__7_ in
|
|
let _v : (Parsetree.pattern) = let _6 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined4_, _startpos__1_inlined4_, _1_inlined4) in
|
|
let _1 =
|
|
let _1 =
|
|
# 3270 "parsing/parser.mly"
|
|
( Ptyp_package (package_type_of_module_type _1) )
|
|
# 38372 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 829 "parsing/parser.mly"
|
|
( mktyp ~loc:_sloc _1 )
|
|
# 38380 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3271 "parsing/parser.mly"
|
|
( _1 )
|
|
# 38386 "parsing/parser.ml"
|
|
|
|
in
|
|
let _4 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined3_, _startpos__1_inlined3_, _1_inlined3) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 38397 "parsing/parser.ml"
|
|
|
|
in
|
|
let _3 =
|
|
let (_1_inlined1, _1) = (_1_inlined2, _1_inlined1) in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 38407 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3680 "parsing/parser.mly"
|
|
( _1, _2 )
|
|
# 38413 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__7_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2629 "parsing/parser.mly"
|
|
( mkpat_attrs ~loc:_sloc
|
|
(Ppat_constraint(mkpat ~loc:_sloc (Ppat_unpack _4), _6))
|
|
_3 )
|
|
# 38424 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _1 =
|
|
# 2637 "parsing/parser.mly"
|
|
( Ppat_any )
|
|
# 38450 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 827 "parsing/parser.mly"
|
|
( mkpat ~loc:_sloc _1 )
|
|
# 38458 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2633 "parsing/parser.mly"
|
|
( _1 )
|
|
# 38464 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.constant) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _1 =
|
|
# 2639 "parsing/parser.mly"
|
|
( Ppat_constant _1 )
|
|
# 38490 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 827 "parsing/parser.mly"
|
|
( mkpat ~loc:_sloc _1 )
|
|
# 38498 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2633 "parsing/parser.mly"
|
|
( _1 )
|
|
# 38504 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : (Parsetree.constant) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.constant) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _1 =
|
|
# 2641 "parsing/parser.mly"
|
|
( Ppat_interval (_1, _3) )
|
|
# 38544 "parsing/parser.ml"
|
|
in
|
|
let _endpos__1_ = _endpos__3_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 827 "parsing/parser.mly"
|
|
( mkpat ~loc:_sloc _1 )
|
|
# 38553 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2633 "parsing/parser.mly"
|
|
( _1 )
|
|
# 38559 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 38590 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2643 "parsing/parser.mly"
|
|
( Ppat_construct(_1, None) )
|
|
# 38596 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 827 "parsing/parser.mly"
|
|
( mkpat ~loc:_sloc _1 )
|
|
# 38605 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2633 "parsing/parser.mly"
|
|
( _1 )
|
|
# 38611 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Asttypes.label) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _1 =
|
|
# 2645 "parsing/parser.mly"
|
|
( Ppat_variant(_1, None) )
|
|
# 38637 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 827 "parsing/parser.mly"
|
|
( mkpat ~loc:_sloc _1 )
|
|
# 38645 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2633 "parsing/parser.mly"
|
|
( _1 )
|
|
# 38651 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined1 : (Longident.t) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined1_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _1 =
|
|
let _2 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined1_, _startpos__1_inlined1_, _1_inlined1) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 38690 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2647 "parsing/parser.mly"
|
|
( Ppat_type (_2) )
|
|
# 38696 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__1_inlined1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 827 "parsing/parser.mly"
|
|
( mkpat ~loc:_sloc _1 )
|
|
# 38706 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2633 "parsing/parser.mly"
|
|
( _1 )
|
|
# 38712 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : (Parsetree.pattern) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 38757 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2649 "parsing/parser.mly"
|
|
( Ppat_open(_1, _3) )
|
|
# 38763 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__3_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 827 "parsing/parser.mly"
|
|
( mkpat ~loc:_sloc _1 )
|
|
# 38773 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2633 "parsing/parser.mly"
|
|
( _1 )
|
|
# 38779 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _2_inlined1 : unit = Obj.magic _2_inlined1 in
|
|
let _1_inlined1 : unit = Obj.magic _1_inlined1 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_inlined1_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _1 =
|
|
let _3 =
|
|
let (_endpos__2_, _startpos__1_, _2, _1) = (_endpos__2_inlined1_, _startpos__1_inlined1_, _2_inlined1, _1_inlined1) in
|
|
let _1 =
|
|
# 2650 "parsing/parser.mly"
|
|
(Lident "[]")
|
|
# 38829 "parsing/parser.ml"
|
|
in
|
|
let _endpos__1_ = _endpos__2_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 38838 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__3_ = _endpos__2_inlined1_ in
|
|
let _1 =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 38849 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__3_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2651 "parsing/parser.mly"
|
|
( Ppat_open(_1, mkpat ~loc:_sloc (Ppat_construct(_3, None))) )
|
|
# 38858 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__2_inlined1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 827 "parsing/parser.mly"
|
|
( mkpat ~loc:_sloc _1 )
|
|
# 38868 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2633 "parsing/parser.mly"
|
|
( _1 )
|
|
# 38874 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _2_inlined1 : unit = Obj.magic _2_inlined1 in
|
|
let _1_inlined1 : unit = Obj.magic _1_inlined1 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_inlined1_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _1 =
|
|
let _3 =
|
|
let (_endpos__2_, _startpos__1_, _2, _1) = (_endpos__2_inlined1_, _startpos__1_inlined1_, _2_inlined1, _1_inlined1) in
|
|
let _1 =
|
|
# 2652 "parsing/parser.mly"
|
|
(Lident "()")
|
|
# 38924 "parsing/parser.ml"
|
|
in
|
|
let _endpos__1_ = _endpos__2_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 38933 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__3_ = _endpos__2_inlined1_ in
|
|
let _1 =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 38944 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__3_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2653 "parsing/parser.mly"
|
|
( Ppat_open(_1, mkpat ~loc:_sloc (Ppat_construct(_3, None))) )
|
|
# 38953 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__2_inlined1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 827 "parsing/parser.mly"
|
|
( mkpat ~loc:_sloc _1 )
|
|
# 38963 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2633 "parsing/parser.mly"
|
|
( _1 )
|
|
# 38969 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _4 : (Parsetree.pattern) = Obj.magic _4 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 39028 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2655 "parsing/parser.mly"
|
|
( Ppat_open (_1, _4) )
|
|
# 39034 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__5_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 827 "parsing/parser.mly"
|
|
( mkpat ~loc:_sloc _1 )
|
|
# 39044 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2633 "parsing/parser.mly"
|
|
( _1 )
|
|
# 39050 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _4 : (Parsetree.pattern) = Obj.magic _4 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _1 =
|
|
let _loc__5_ = (_startpos__5_, _endpos__5_) in
|
|
let _loc__3_ = (_startpos__3_, _endpos__3_) in
|
|
|
|
# 2657 "parsing/parser.mly"
|
|
( unclosed "(" _loc__3_ ")" _loc__5_ )
|
|
# 39107 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__5_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 827 "parsing/parser.mly"
|
|
( mkpat ~loc:_sloc _1 )
|
|
# 39117 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2633 "parsing/parser.mly"
|
|
( _1 )
|
|
# 39123 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__4_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _1 =
|
|
let _loc__4_ = (_startpos__4_, _endpos__4_) in
|
|
|
|
# 2659 "parsing/parser.mly"
|
|
( expecting _loc__4_ "pattern" )
|
|
# 39172 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__4_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 827 "parsing/parser.mly"
|
|
( mkpat ~loc:_sloc _1 )
|
|
# 39182 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2633 "parsing/parser.mly"
|
|
( _1 )
|
|
# 39188 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : (Parsetree.pattern) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _1 =
|
|
let _loc__3_ = (_startpos__3_, _endpos__3_) in
|
|
let _loc__1_ = (_startpos__1_, _endpos__1_) in
|
|
|
|
# 2661 "parsing/parser.mly"
|
|
( unclosed "(" _loc__1_ ")" _loc__3_ )
|
|
# 39231 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__3_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 827 "parsing/parser.mly"
|
|
( mkpat ~loc:_sloc _1 )
|
|
# 39241 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2633 "parsing/parser.mly"
|
|
( _1 )
|
|
# 39247 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _4 : (Parsetree.core_type) = Obj.magic _4 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : (Parsetree.pattern) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _1 =
|
|
# 2663 "parsing/parser.mly"
|
|
( Ppat_constraint(_2, _4) )
|
|
# 39301 "parsing/parser.ml"
|
|
in
|
|
let _endpos__1_ = _endpos__5_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 827 "parsing/parser.mly"
|
|
( mkpat ~loc:_sloc _1 )
|
|
# 39310 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2633 "parsing/parser.mly"
|
|
( _1 )
|
|
# 39316 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _4 : (Parsetree.core_type) = Obj.magic _4 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : (Parsetree.pattern) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _1 =
|
|
let _loc__5_ = (_startpos__5_, _endpos__5_) in
|
|
let _loc__1_ = (_startpos__1_, _endpos__1_) in
|
|
|
|
# 2665 "parsing/parser.mly"
|
|
( unclosed "(" _loc__1_ ")" _loc__5_ )
|
|
# 39373 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__5_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 827 "parsing/parser.mly"
|
|
( mkpat ~loc:_sloc _1 )
|
|
# 39383 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2633 "parsing/parser.mly"
|
|
( _1 )
|
|
# 39389 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : (Parsetree.pattern) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__4_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _1 =
|
|
let _loc__4_ = (_startpos__4_, _endpos__4_) in
|
|
|
|
# 2667 "parsing/parser.mly"
|
|
( expecting _loc__4_ "type" )
|
|
# 39438 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__4_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 827 "parsing/parser.mly"
|
|
( mkpat ~loc:_sloc _1 )
|
|
# 39448 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2633 "parsing/parser.mly"
|
|
( _1 )
|
|
# 39454 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _7;
|
|
MenhirLib.EngineTypes.startp = _startpos__7_;
|
|
MenhirLib.EngineTypes.endp = _endpos__7_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _7 : unit = Obj.magic _7 in
|
|
let _1_inlined3 : (Parsetree.module_type) = Obj.magic _1_inlined3 in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _4 : (string option) = Obj.magic _4 in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (string Asttypes.loc option) = Obj.magic _1_inlined1 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__7_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _1 =
|
|
let _6 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined3_, _startpos__1_inlined3_, _1_inlined3) in
|
|
let _1 =
|
|
let _1 =
|
|
# 3270 "parsing/parser.mly"
|
|
( Ptyp_package (package_type_of_module_type _1) )
|
|
# 39533 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 829 "parsing/parser.mly"
|
|
( mktyp ~loc:_sloc _1 )
|
|
# 39541 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3271 "parsing/parser.mly"
|
|
( _1 )
|
|
# 39547 "parsing/parser.ml"
|
|
|
|
in
|
|
let _3 =
|
|
let (_1_inlined1, _1) = (_1_inlined2, _1_inlined1) in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 39557 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3680 "parsing/parser.mly"
|
|
( _1, _2 )
|
|
# 39563 "parsing/parser.ml"
|
|
|
|
in
|
|
let _loc__7_ = (_startpos__7_, _endpos__7_) in
|
|
let _loc__1_ = (_startpos__1_, _endpos__1_) in
|
|
|
|
# 2670 "parsing/parser.mly"
|
|
( unclosed "(" _loc__1_ ")" _loc__7_ )
|
|
# 39571 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__7_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 827 "parsing/parser.mly"
|
|
( mkpat ~loc:_sloc _1 )
|
|
# 39581 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2633 "parsing/parser.mly"
|
|
( _1 )
|
|
# 39587 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.extension) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.pattern) = let _1 =
|
|
let _1 =
|
|
# 2672 "parsing/parser.mly"
|
|
( Ppat_extension _1 )
|
|
# 39613 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 827 "parsing/parser.mly"
|
|
( mkpat ~loc:_sloc _1 )
|
|
# 39621 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2633 "parsing/parser.mly"
|
|
( _1 )
|
|
# 39627 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 39648 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3590 "parsing/parser.mly"
|
|
( _1 )
|
|
# 39656 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (
|
|
# 688 "parsing/parser.mly"
|
|
(string)
|
|
# 39677 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3591 "parsing/parser.mly"
|
|
( _1 )
|
|
# 39685 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3592 "parsing/parser.mly"
|
|
( "and" )
|
|
# 39710 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3593 "parsing/parser.mly"
|
|
( "as" )
|
|
# 39735 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3594 "parsing/parser.mly"
|
|
( "assert" )
|
|
# 39760 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3595 "parsing/parser.mly"
|
|
( "begin" )
|
|
# 39785 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3596 "parsing/parser.mly"
|
|
( "class" )
|
|
# 39810 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3597 "parsing/parser.mly"
|
|
( "constraint" )
|
|
# 39835 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3598 "parsing/parser.mly"
|
|
( "do" )
|
|
# 39860 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3599 "parsing/parser.mly"
|
|
( "done" )
|
|
# 39885 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3600 "parsing/parser.mly"
|
|
( "downto" )
|
|
# 39910 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3601 "parsing/parser.mly"
|
|
( "else" )
|
|
# 39935 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3602 "parsing/parser.mly"
|
|
( "end" )
|
|
# 39960 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3603 "parsing/parser.mly"
|
|
( "exception" )
|
|
# 39985 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3604 "parsing/parser.mly"
|
|
( "external" )
|
|
# 40010 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3605 "parsing/parser.mly"
|
|
( "false" )
|
|
# 40035 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3606 "parsing/parser.mly"
|
|
( "for" )
|
|
# 40060 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3607 "parsing/parser.mly"
|
|
( "fun" )
|
|
# 40085 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3608 "parsing/parser.mly"
|
|
( "function" )
|
|
# 40110 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3609 "parsing/parser.mly"
|
|
( "functor" )
|
|
# 40135 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3610 "parsing/parser.mly"
|
|
( "if" )
|
|
# 40160 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3611 "parsing/parser.mly"
|
|
( "in" )
|
|
# 40185 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3612 "parsing/parser.mly"
|
|
( "include" )
|
|
# 40210 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3613 "parsing/parser.mly"
|
|
( "inherit" )
|
|
# 40235 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3614 "parsing/parser.mly"
|
|
( "initializer" )
|
|
# 40260 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3615 "parsing/parser.mly"
|
|
( "lazy" )
|
|
# 40285 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3616 "parsing/parser.mly"
|
|
( "let" )
|
|
# 40310 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3617 "parsing/parser.mly"
|
|
( "match" )
|
|
# 40335 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3618 "parsing/parser.mly"
|
|
( "method" )
|
|
# 40360 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3619 "parsing/parser.mly"
|
|
( "module" )
|
|
# 40385 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3620 "parsing/parser.mly"
|
|
( "mutable" )
|
|
# 40410 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3621 "parsing/parser.mly"
|
|
( "new" )
|
|
# 40435 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3622 "parsing/parser.mly"
|
|
( "nonrec" )
|
|
# 40460 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3623 "parsing/parser.mly"
|
|
( "object" )
|
|
# 40485 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3624 "parsing/parser.mly"
|
|
( "of" )
|
|
# 40510 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3625 "parsing/parser.mly"
|
|
( "open" )
|
|
# 40535 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3626 "parsing/parser.mly"
|
|
( "or" )
|
|
# 40560 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3627 "parsing/parser.mly"
|
|
( "private" )
|
|
# 40585 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3628 "parsing/parser.mly"
|
|
( "rec" )
|
|
# 40610 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3629 "parsing/parser.mly"
|
|
( "sig" )
|
|
# 40635 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3630 "parsing/parser.mly"
|
|
( "struct" )
|
|
# 40660 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3631 "parsing/parser.mly"
|
|
( "then" )
|
|
# 40685 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3632 "parsing/parser.mly"
|
|
( "to" )
|
|
# 40710 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3633 "parsing/parser.mly"
|
|
( "true" )
|
|
# 40735 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3634 "parsing/parser.mly"
|
|
( "try" )
|
|
# 40760 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3635 "parsing/parser.mly"
|
|
( "type" )
|
|
# 40785 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3636 "parsing/parser.mly"
|
|
( "val" )
|
|
# 40810 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3637 "parsing/parser.mly"
|
|
( "virtual" )
|
|
# 40835 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3638 "parsing/parser.mly"
|
|
( "when" )
|
|
# 40860 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3639 "parsing/parser.mly"
|
|
( "while" )
|
|
# 40885 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3640 "parsing/parser.mly"
|
|
( "with" )
|
|
# 40910 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.type_exception * string Asttypes.loc option) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.type_exception * string Asttypes.loc option) =
|
|
# 2937 "parsing/parser.mly"
|
|
( _1 )
|
|
# 40935 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined5;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined4;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = ext;
|
|
MenhirLib.EngineTypes.startp = _startpos_ext_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ext_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined5 : (Parsetree.attributes) = Obj.magic _1_inlined5 in
|
|
let _1_inlined4 : (Parsetree.attributes) = Obj.magic _1_inlined4 in
|
|
let _1_inlined3 : (Longident.t) = Obj.magic _1_inlined3 in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _1_inlined2 : (string) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let ext : (string Asttypes.loc option) = Obj.magic ext in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined5_ in
|
|
let _v : (Parsetree.type_exception * string Asttypes.loc option) = let attrs =
|
|
let _1 = _1_inlined5 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 41011 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_attrs_ = _endpos__1_inlined5_ in
|
|
let attrs2 =
|
|
let _1 = _1_inlined4 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 41020 "parsing/parser.ml"
|
|
|
|
in
|
|
let lid =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined3_, _startpos__1_inlined3_, _1_inlined3) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 41031 "parsing/parser.ml"
|
|
|
|
in
|
|
let id =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 41042 "parsing/parser.ml"
|
|
|
|
in
|
|
let attrs1 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 41050 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_attrs_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2946 "parsing/parser.mly"
|
|
( let loc = make_loc _sloc in
|
|
let docs = symbol_docs _sloc in
|
|
Te.mk_exception ~attrs
|
|
(Te.rebind id lid ~attrs:(attrs1 @ attrs2) ~loc ~docs)
|
|
, ext )
|
|
# 41063 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : (Parsetree.expression) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.expression) =
|
|
# 2461 "parsing/parser.mly"
|
|
( _2 )
|
|
# 41095 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : (Parsetree.expression) = Obj.magic _2 in
|
|
let _1 : (Asttypes.arg_label * Parsetree.expression option * Parsetree.pattern) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.expression) = let _endpos = _endpos__2_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2463 "parsing/parser.mly"
|
|
( let (l, o, p) = _1 in ghexp ~loc:_sloc (Pexp_fun(l, o, p, _2)) )
|
|
# 41130 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _5 : (Parsetree.expression) = Obj.magic _5 in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let xs : (string Asttypes.loc list) = Obj.magic xs in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__5_ in
|
|
let _v : (Parsetree.expression) = let _3 =
|
|
# 2364 "parsing/parser.mly"
|
|
( xs )
|
|
# 41183 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__5_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2465 "parsing/parser.mly"
|
|
( mk_newtypes ~loc:_sloc _3 _5 )
|
|
# 41191 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = xss;
|
|
MenhirLib.EngineTypes.startp = _startpos_xss_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xss_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let xss : (Parsetree.structure_item list list) = Obj.magic xss in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_xss_ in
|
|
let _endpos = _endpos_xss_ in
|
|
let _v : (Parsetree.structure) = let _1 =
|
|
let _1 =
|
|
let ys =
|
|
# 260 "menhir/standard.mly"
|
|
( List.flatten xss )
|
|
# 41218 "parsing/parser.ml"
|
|
in
|
|
let xs =
|
|
let items =
|
|
# 862 "parsing/parser.mly"
|
|
( [] )
|
|
# 41224 "parsing/parser.ml"
|
|
in
|
|
|
|
# 1247 "parsing/parser.mly"
|
|
( items )
|
|
# 41229 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 267 "menhir/standard.mly"
|
|
( xs @ ys )
|
|
# 41235 "parsing/parser.ml"
|
|
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_xss_, _startpos_xss_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _startpos = _startpos__1_ in
|
|
|
|
# 784 "parsing/parser.mly"
|
|
( extra_str _startpos _endpos _1 )
|
|
# 41244 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1240 "parsing/parser.mly"
|
|
( _1 )
|
|
# 41250 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xss;
|
|
MenhirLib.EngineTypes.startp = _startpos_xss_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xss_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = e;
|
|
MenhirLib.EngineTypes.startp = _startpos_e_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let xss : (Parsetree.structure_item list list) = Obj.magic xss in
|
|
let _1 : (Parsetree.attributes) = Obj.magic _1 in
|
|
let e : (Parsetree.expression) = Obj.magic e in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_e_ in
|
|
let _endpos = _endpos_xss_ in
|
|
let _v : (Parsetree.structure) = let _1 =
|
|
let _1 =
|
|
let ys =
|
|
# 260 "menhir/standard.mly"
|
|
( List.flatten xss )
|
|
# 41291 "parsing/parser.ml"
|
|
in
|
|
let xs =
|
|
let items =
|
|
let x =
|
|
let _1 =
|
|
let _1 =
|
|
let attrs =
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 41301 "parsing/parser.ml"
|
|
in
|
|
|
|
# 1254 "parsing/parser.mly"
|
|
( mkstrexp e attrs )
|
|
# 41306 "parsing/parser.ml"
|
|
|
|
in
|
|
let _startpos__1_ = _startpos_e_ in
|
|
let _startpos = _startpos__1_ in
|
|
|
|
# 796 "parsing/parser.mly"
|
|
( text_str _startpos @ [_1] )
|
|
# 41314 "parsing/parser.ml"
|
|
|
|
in
|
|
let _startpos__1_ = _startpos_e_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _startpos = _startpos__1_ in
|
|
|
|
# 815 "parsing/parser.mly"
|
|
( mark_rhs_docs _startpos _endpos;
|
|
_1 )
|
|
# 41324 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 864 "parsing/parser.mly"
|
|
( x )
|
|
# 41330 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1247 "parsing/parser.mly"
|
|
( items )
|
|
# 41336 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 267 "menhir/standard.mly"
|
|
( xs @ ys )
|
|
# 41342 "parsing/parser.ml"
|
|
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_xss_, _startpos_e_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _startpos = _startpos__1_ in
|
|
|
|
# 784 "parsing/parser.mly"
|
|
( extra_str _startpos _endpos _1 )
|
|
# 41351 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1240 "parsing/parser.mly"
|
|
( _1 )
|
|
# 41357 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (let_bindings) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.structure_item) = let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1269 "parsing/parser.mly"
|
|
( val_of_let_bindings ~loc:_sloc _1 )
|
|
# 41385 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _1 : (Parsetree.extension) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined1_ in
|
|
let _v : (Parsetree.structure_item) = let _1 =
|
|
let _1 =
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 41421 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__2_ = _endpos__1_inlined1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1272 "parsing/parser.mly"
|
|
( let docs = symbol_docs _sloc in
|
|
Pstr_extension (_1, add_docs_attrs docs _2) )
|
|
# 41432 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__1_inlined1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 831 "parsing/parser.mly"
|
|
( mkstr ~loc:_sloc _1 )
|
|
# 41442 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1303 "parsing/parser.mly"
|
|
( _1 )
|
|
# 41448 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.attribute) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.structure_item) = let _1 =
|
|
let _1 =
|
|
# 1275 "parsing/parser.mly"
|
|
( Pstr_attribute _1 )
|
|
# 41474 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 831 "parsing/parser.mly"
|
|
( mkstr ~loc:_sloc _1 )
|
|
# 41482 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1303 "parsing/parser.mly"
|
|
( _1 )
|
|
# 41488 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.value_description * string Asttypes.loc option) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.structure_item) = let _1 =
|
|
let _1 =
|
|
# 1279 "parsing/parser.mly"
|
|
( pstr_primitive _1 )
|
|
# 41514 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 848 "parsing/parser.mly"
|
|
( wrap_mkstr_ext ~loc:_sloc _1 )
|
|
# 41522 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1303 "parsing/parser.mly"
|
|
( _1 )
|
|
# 41528 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.value_description * string Asttypes.loc option) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.structure_item) = let _1 =
|
|
let _1 =
|
|
# 1281 "parsing/parser.mly"
|
|
( pstr_primitive _1 )
|
|
# 41554 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 848 "parsing/parser.mly"
|
|
( wrap_mkstr_ext ~loc:_sloc _1 )
|
|
# 41562 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1303 "parsing/parser.mly"
|
|
( _1 )
|
|
# 41568 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = bs;
|
|
MenhirLib.EngineTypes.startp = _startpos_bs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_bs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = a;
|
|
MenhirLib.EngineTypes.startp = _startpos_a_;
|
|
MenhirLib.EngineTypes.endp = _endpos_a_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let bs : (Parsetree.type_declaration list) = Obj.magic bs in
|
|
let a : ((Asttypes.rec_flag * string Asttypes.loc option) *
|
|
Parsetree.type_declaration) = Obj.magic a in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_a_ in
|
|
let _endpos = _endpos_bs_ in
|
|
let _v : (Parsetree.structure_item) = let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
# 1023 "parsing/parser.mly"
|
|
( let (x, b) = a in x, b :: bs )
|
|
# 41605 "parsing/parser.ml"
|
|
in
|
|
|
|
# 2792 "parsing/parser.mly"
|
|
( _1 )
|
|
# 41610 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2775 "parsing/parser.mly"
|
|
( _1 )
|
|
# 41616 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1283 "parsing/parser.mly"
|
|
( pstr_type _1 )
|
|
# 41622 "parsing/parser.ml"
|
|
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_bs_, _startpos_a_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 848 "parsing/parser.mly"
|
|
( wrap_mkstr_ext ~loc:_sloc _1 )
|
|
# 41632 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1303 "parsing/parser.mly"
|
|
( _1 )
|
|
# 41638 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = priv;
|
|
MenhirLib.EngineTypes.startp = _startpos_priv_;
|
|
MenhirLib.EngineTypes.endp = _endpos_priv_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _7;
|
|
MenhirLib.EngineTypes.startp = _startpos__7_;
|
|
MenhirLib.EngineTypes.endp = _endpos__7_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = params;
|
|
MenhirLib.EngineTypes.startp = _startpos_params_;
|
|
MenhirLib.EngineTypes.endp = _endpos_params_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = ext;
|
|
MenhirLib.EngineTypes.startp = _startpos_ext_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ext_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined3 : (Parsetree.attributes) = Obj.magic _1_inlined3 in
|
|
let xs : (Parsetree.extension_constructor list) = Obj.magic xs in
|
|
let priv : (Asttypes.private_flag) = Obj.magic priv in
|
|
let _7 : unit = Obj.magic _7 in
|
|
let _1_inlined2 : (Longident.t) = Obj.magic _1_inlined2 in
|
|
let params : ((Parsetree.core_type * Asttypes.variance) list) = Obj.magic params in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let ext : (string Asttypes.loc option) = Obj.magic ext in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined3_ in
|
|
let _v : (Parsetree.structure_item) = let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let attrs2 =
|
|
let _1 = _1_inlined3 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 41725 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_attrs2_ = _endpos__1_inlined3_ in
|
|
let cs =
|
|
# 1015 "parsing/parser.mly"
|
|
( List.rev xs )
|
|
# 41732 "parsing/parser.ml"
|
|
in
|
|
let tid =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 41742 "parsing/parser.ml"
|
|
|
|
in
|
|
let _4 =
|
|
# 3512 "parsing/parser.mly"
|
|
( Recursive )
|
|
# 41748 "parsing/parser.ml"
|
|
in
|
|
let attrs1 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 41755 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_attrs2_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 3029 "parsing/parser.mly"
|
|
( let docs = symbol_docs _sloc in
|
|
let attrs = attrs1 @ attrs2 in
|
|
Te.mk tid cs ~params ~priv ~attrs ~docs,
|
|
ext )
|
|
# 41767 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3012 "parsing/parser.mly"
|
|
( _1 )
|
|
# 41773 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1285 "parsing/parser.mly"
|
|
( pstr_typext _1 )
|
|
# 41779 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__1_inlined3_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 848 "parsing/parser.mly"
|
|
( wrap_mkstr_ext ~loc:_sloc _1 )
|
|
# 41789 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1303 "parsing/parser.mly"
|
|
( _1 )
|
|
# 41795 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined4;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = priv;
|
|
MenhirLib.EngineTypes.startp = _startpos_priv_;
|
|
MenhirLib.EngineTypes.endp = _endpos_priv_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _7;
|
|
MenhirLib.EngineTypes.startp = _startpos__7_;
|
|
MenhirLib.EngineTypes.endp = _endpos__7_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = params;
|
|
MenhirLib.EngineTypes.startp = _startpos_params_;
|
|
MenhirLib.EngineTypes.endp = _endpos_params_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = ext;
|
|
MenhirLib.EngineTypes.startp = _startpos_ext_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ext_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined4 : (Parsetree.attributes) = Obj.magic _1_inlined4 in
|
|
let xs : (Parsetree.extension_constructor list) = Obj.magic xs in
|
|
let priv : (Asttypes.private_flag) = Obj.magic priv in
|
|
let _7 : unit = Obj.magic _7 in
|
|
let _1_inlined3 : (Longident.t) = Obj.magic _1_inlined3 in
|
|
let params : ((Parsetree.core_type * Asttypes.variance) list) = Obj.magic params in
|
|
let _1_inlined2 : unit = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let ext : (string Asttypes.loc option) = Obj.magic ext in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined4_ in
|
|
let _v : (Parsetree.structure_item) = let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let attrs2 =
|
|
let _1 = _1_inlined4 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 41889 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_attrs2_ = _endpos__1_inlined4_ in
|
|
let cs =
|
|
# 1015 "parsing/parser.mly"
|
|
( List.rev xs )
|
|
# 41896 "parsing/parser.ml"
|
|
in
|
|
let tid =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined3_, _startpos__1_inlined3_, _1_inlined3) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 41906 "parsing/parser.ml"
|
|
|
|
in
|
|
let _4 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let _endpos = _endpos__1_ in
|
|
let _startpos = _startpos__1_ in
|
|
let _loc = (_startpos, _endpos) in
|
|
|
|
# 3513 "parsing/parser.mly"
|
|
( not_expecting _loc "nonrec flag" )
|
|
# 41917 "parsing/parser.ml"
|
|
|
|
in
|
|
let attrs1 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 41925 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_attrs2_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 3029 "parsing/parser.mly"
|
|
( let docs = symbol_docs _sloc in
|
|
let attrs = attrs1 @ attrs2 in
|
|
Te.mk tid cs ~params ~priv ~attrs ~docs,
|
|
ext )
|
|
# 41937 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3012 "parsing/parser.mly"
|
|
( _1 )
|
|
# 41943 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1285 "parsing/parser.mly"
|
|
( pstr_typext _1 )
|
|
# 41949 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__1_inlined4_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 848 "parsing/parser.mly"
|
|
( wrap_mkstr_ext ~loc:_sloc _1 )
|
|
# 41959 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1303 "parsing/parser.mly"
|
|
( _1 )
|
|
# 41965 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.type_exception * string Asttypes.loc option) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.structure_item) = let _1 =
|
|
let _1 =
|
|
# 1287 "parsing/parser.mly"
|
|
( pstr_exception _1 )
|
|
# 41991 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 848 "parsing/parser.mly"
|
|
( wrap_mkstr_ext ~loc:_sloc _1 )
|
|
# 41999 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1303 "parsing/parser.mly"
|
|
( _1 )
|
|
# 42005 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = body;
|
|
MenhirLib.EngineTypes.startp = _startpos_body_;
|
|
MenhirLib.EngineTypes.endp = _endpos_body_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = ext;
|
|
MenhirLib.EngineTypes.startp = _startpos_ext_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ext_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined3 : (Parsetree.attributes) = Obj.magic _1_inlined3 in
|
|
let body : (Parsetree.module_expr) = Obj.magic body in
|
|
let _1_inlined2 : (string option) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let ext : (string Asttypes.loc option) = Obj.magic ext in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined3_ in
|
|
let _v : (Parsetree.structure_item) = let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let attrs2 =
|
|
let _1 = _1_inlined3 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 42070 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_attrs2_ = _endpos__1_inlined3_ in
|
|
let name =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 42082 "parsing/parser.ml"
|
|
|
|
in
|
|
let attrs1 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 42090 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_attrs2_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1313 "parsing/parser.mly"
|
|
( let docs = symbol_docs _sloc in
|
|
let loc = make_loc _sloc in
|
|
let attrs = attrs1 @ attrs2 in
|
|
let body = Mb.mk name body ~attrs ~loc ~docs in
|
|
Pstr_module body, ext )
|
|
# 42103 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1289 "parsing/parser.mly"
|
|
( _1 )
|
|
# 42109 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__1_inlined3_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 848 "parsing/parser.mly"
|
|
( wrap_mkstr_ext ~loc:_sloc _1 )
|
|
# 42119 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1303 "parsing/parser.mly"
|
|
( _1 )
|
|
# 42125 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = bs;
|
|
MenhirLib.EngineTypes.startp = _startpos_bs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_bs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = body;
|
|
MenhirLib.EngineTypes.startp = _startpos_body_;
|
|
MenhirLib.EngineTypes.endp = _endpos_body_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = ext;
|
|
MenhirLib.EngineTypes.startp = _startpos_ext_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ext_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let bs : (Parsetree.module_binding list) = Obj.magic bs in
|
|
let _1_inlined3 : (Parsetree.attributes) = Obj.magic _1_inlined3 in
|
|
let body : (Parsetree.module_expr) = Obj.magic body in
|
|
let _1_inlined2 : (string option) = Obj.magic _1_inlined2 in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let ext : (string Asttypes.loc option) = Obj.magic ext in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_bs_ in
|
|
let _v : (Parsetree.structure_item) = let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let a =
|
|
let attrs2 =
|
|
let _1 = _1_inlined3 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 42206 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_attrs2_ = _endpos__1_inlined3_ in
|
|
let name =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 42218 "parsing/parser.ml"
|
|
|
|
in
|
|
let attrs1 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 42226 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_attrs2_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1347 "parsing/parser.mly"
|
|
(
|
|
let loc = make_loc _sloc in
|
|
let attrs = attrs1 @ attrs2 in
|
|
let docs = symbol_docs _sloc in
|
|
ext,
|
|
Mb.mk name body ~attrs ~loc ~docs
|
|
)
|
|
# 42241 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1023 "parsing/parser.mly"
|
|
( let (x, b) = a in x, b :: bs )
|
|
# 42247 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1335 "parsing/parser.mly"
|
|
( _1 )
|
|
# 42253 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1291 "parsing/parser.mly"
|
|
( pstr_recmodule _1 )
|
|
# 42259 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos_bs_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 848 "parsing/parser.mly"
|
|
( wrap_mkstr_ext ~loc:_sloc _1 )
|
|
# 42269 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1303 "parsing/parser.mly"
|
|
( _1 )
|
|
# 42275 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.module_type_declaration * string Asttypes.loc option) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.structure_item) = let _1 =
|
|
let _1 =
|
|
# 1293 "parsing/parser.mly"
|
|
( let (body, ext) = _1 in (Pstr_modtype body, ext) )
|
|
# 42301 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 848 "parsing/parser.mly"
|
|
( wrap_mkstr_ext ~loc:_sloc _1 )
|
|
# 42309 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1303 "parsing/parser.mly"
|
|
( _1 )
|
|
# 42315 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (Parsetree.open_declaration * string Asttypes.loc option) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.structure_item) = let _1 =
|
|
let _1 =
|
|
# 1295 "parsing/parser.mly"
|
|
( let (body, ext) = _1 in (Pstr_open body, ext) )
|
|
# 42341 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 848 "parsing/parser.mly"
|
|
( wrap_mkstr_ext ~loc:_sloc _1 )
|
|
# 42349 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1303 "parsing/parser.mly"
|
|
( _1 )
|
|
# 42355 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = bs;
|
|
MenhirLib.EngineTypes.startp = _startpos_bs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_bs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = body;
|
|
MenhirLib.EngineTypes.startp = _startpos_body_;
|
|
MenhirLib.EngineTypes.endp = _endpos_body_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = params;
|
|
MenhirLib.EngineTypes.startp = _startpos_params_;
|
|
MenhirLib.EngineTypes.endp = _endpos_params_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = virt;
|
|
MenhirLib.EngineTypes.startp = _startpos_virt_;
|
|
MenhirLib.EngineTypes.endp = _endpos_virt_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = ext;
|
|
MenhirLib.EngineTypes.startp = _startpos_ext_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ext_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let bs : (Parsetree.class_declaration list) = Obj.magic bs in
|
|
let _1_inlined3 : (Parsetree.attributes) = Obj.magic _1_inlined3 in
|
|
let body : (Parsetree.class_expr) = Obj.magic body in
|
|
let _1_inlined2 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 42427 "parsing/parser.ml"
|
|
) = Obj.magic _1_inlined2 in
|
|
let params : ((Parsetree.core_type * Asttypes.variance) list) = Obj.magic params in
|
|
let virt : (Asttypes.virtual_flag) = Obj.magic virt in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let ext : (string Asttypes.loc option) = Obj.magic ext in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_bs_ in
|
|
let _v : (Parsetree.structure_item) = let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let a =
|
|
let attrs2 =
|
|
let _1 = _1_inlined3 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 42447 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_attrs2_ = _endpos__1_inlined3_ in
|
|
let id =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 42459 "parsing/parser.ml"
|
|
|
|
in
|
|
let attrs1 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 42467 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_attrs2_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1665 "parsing/parser.mly"
|
|
(
|
|
let attrs = attrs1 @ attrs2 in
|
|
let loc = make_loc _sloc in
|
|
let docs = symbol_docs _sloc in
|
|
ext,
|
|
Ci.mk id body ~virt ~params ~attrs ~loc ~docs
|
|
)
|
|
# 42482 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1023 "parsing/parser.mly"
|
|
( let (x, b) = a in x, b :: bs )
|
|
# 42488 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1654 "parsing/parser.mly"
|
|
( _1 )
|
|
# 42494 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1297 "parsing/parser.mly"
|
|
( let (ext, l) = _1 in (Pstr_class l, ext) )
|
|
# 42500 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos_bs_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 848 "parsing/parser.mly"
|
|
( wrap_mkstr_ext ~loc:_sloc _1 )
|
|
# 42510 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1303 "parsing/parser.mly"
|
|
( _1 )
|
|
# 42516 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (string Asttypes.loc option * Parsetree.class_type_declaration list) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.structure_item) = let _1 =
|
|
let _1 =
|
|
# 1299 "parsing/parser.mly"
|
|
( let (ext, l) = _1 in (Pstr_class_type l, ext) )
|
|
# 42542 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 848 "parsing/parser.mly"
|
|
( wrap_mkstr_ext ~loc:_sloc _1 )
|
|
# 42550 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1303 "parsing/parser.mly"
|
|
( _1 )
|
|
# 42556 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = thing;
|
|
MenhirLib.EngineTypes.startp = _startpos_thing_;
|
|
MenhirLib.EngineTypes.endp = _endpos_thing_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = ext;
|
|
MenhirLib.EngineTypes.startp = _startpos_ext_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ext_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined2 : (Parsetree.attributes) = Obj.magic _1_inlined2 in
|
|
let thing : (Parsetree.module_expr) = Obj.magic thing in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let ext : (string Asttypes.loc option) = Obj.magic ext in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined2_ in
|
|
let _v : (Parsetree.structure_item) = let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let attrs2 =
|
|
let _1 = _1_inlined2 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 42614 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_attrs2_ = _endpos__1_inlined2_ in
|
|
let attrs1 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 42623 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_attrs2_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1384 "parsing/parser.mly"
|
|
(
|
|
let attrs = attrs1 @ attrs2 in
|
|
let loc = make_loc _sloc in
|
|
let docs = symbol_docs _sloc in
|
|
Incl.mk thing ~attrs ~loc ~docs, ext
|
|
)
|
|
# 42637 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1301 "parsing/parser.mly"
|
|
( pstr_include _1 )
|
|
# 42643 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__1_ = _endpos__1_inlined2_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 848 "parsing/parser.mly"
|
|
( wrap_mkstr_ext ~loc:_sloc _1 )
|
|
# 42653 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1303 "parsing/parser.mly"
|
|
( _1 )
|
|
# 42659 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3575 "parsing/parser.mly"
|
|
( "-" )
|
|
# 42684 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3576 "parsing/parser.mly"
|
|
( "-." )
|
|
# 42709 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let xs : (Parsetree.core_type list) = Obj.magic xs in
|
|
let _3 : (bool) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Asttypes.label) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined1_ in
|
|
let _v : (Parsetree.row_field) = let _5 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 42764 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__5_ = _endpos__1_inlined1_ in
|
|
let _4 =
|
|
let _1 =
|
|
let xs =
|
|
# 253 "menhir/standard.mly"
|
|
( List.rev xs )
|
|
# 42773 "parsing/parser.ml"
|
|
in
|
|
|
|
# 926 "parsing/parser.mly"
|
|
( xs )
|
|
# 42778 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3299 "parsing/parser.mly"
|
|
( _1 )
|
|
# 42784 "parsing/parser.ml"
|
|
|
|
in
|
|
let _1 =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 42794 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__5_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 3285 "parsing/parser.mly"
|
|
( let info = symbol_info _endpos in
|
|
let attrs = add_info_attrs info _5 in
|
|
Rf.tag ~loc:(make_loc _sloc) ~attrs _1 _3 _4 )
|
|
# 42805 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _1 : (Asttypes.label) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined1_ in
|
|
let _v : (Parsetree.row_field) = let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 42839 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__2_ = _endpos__1_inlined1_ in
|
|
let _1 =
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 42850 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__2_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 3289 "parsing/parser.mly"
|
|
( let info = symbol_info _endpos in
|
|
let attrs = add_info_attrs info _2 in
|
|
Rf.tag ~loc:(make_loc _sloc) ~attrs _1 true [] )
|
|
# 42861 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined1 : (Asttypes.label) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined1_ in
|
|
let _v : (Parsetree.toplevel_phrase) = let arg =
|
|
# 124 "menhir/standard.mly"
|
|
( None )
|
|
# 42893 "parsing/parser.ml"
|
|
in
|
|
let _endpos_arg_ = _endpos__1_inlined1_ in
|
|
let dir =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined1_, _startpos__1_inlined1_, _1_inlined1) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 42904 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_arg_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 3475 "parsing/parser.mly"
|
|
( mk_directive ~loc:_sloc dir arg )
|
|
# 42913 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined2 : (
|
|
# 680 "parsing/parser.mly"
|
|
(string * string option)
|
|
# 42946 "parsing/parser.ml"
|
|
) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (Asttypes.label) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined2_ in
|
|
let _v : (Parsetree.toplevel_phrase) = let arg =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let x =
|
|
let _1 =
|
|
# 3479 "parsing/parser.mly"
|
|
( let (s, _) = _1 in Pdir_string s )
|
|
# 42959 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 853 "parsing/parser.mly"
|
|
( mk_directive_arg ~loc:_sloc _1 )
|
|
# 42967 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 126 "menhir/standard.mly"
|
|
( Some x )
|
|
# 42973 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_arg_ = _endpos__1_inlined2_ in
|
|
let dir =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined1_, _startpos__1_inlined1_, _1_inlined1) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 42985 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_arg_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 3475 "parsing/parser.mly"
|
|
( mk_directive ~loc:_sloc dir arg )
|
|
# 42994 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined2 : (
|
|
# 628 "parsing/parser.mly"
|
|
(string * char option)
|
|
# 43027 "parsing/parser.ml"
|
|
) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (Asttypes.label) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined2_ in
|
|
let _v : (Parsetree.toplevel_phrase) = let arg =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let x =
|
|
let _1 =
|
|
# 3480 "parsing/parser.mly"
|
|
( let (n, m) = _1 in Pdir_int (n ,m) )
|
|
# 43040 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 853 "parsing/parser.mly"
|
|
( mk_directive_arg ~loc:_sloc _1 )
|
|
# 43048 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 126 "menhir/standard.mly"
|
|
( Some x )
|
|
# 43054 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_arg_ = _endpos__1_inlined2_ in
|
|
let dir =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined1_, _startpos__1_inlined1_, _1_inlined1) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 43066 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_arg_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 3475 "parsing/parser.mly"
|
|
( mk_directive ~loc:_sloc dir arg )
|
|
# 43075 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined2 : (Longident.t) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (Asttypes.label) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined2_ in
|
|
let _v : (Parsetree.toplevel_phrase) = let arg =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let x =
|
|
let _1 =
|
|
# 3481 "parsing/parser.mly"
|
|
( Pdir_ident _1 )
|
|
# 43117 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 853 "parsing/parser.mly"
|
|
( mk_directive_arg ~loc:_sloc _1 )
|
|
# 43125 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 126 "menhir/standard.mly"
|
|
( Some x )
|
|
# 43131 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_arg_ = _endpos__1_inlined2_ in
|
|
let dir =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined1_, _startpos__1_inlined1_, _1_inlined1) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 43143 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_arg_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 3475 "parsing/parser.mly"
|
|
( mk_directive ~loc:_sloc dir arg )
|
|
# 43152 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined2 : (Longident.t) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (Asttypes.label) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined2_ in
|
|
let _v : (Parsetree.toplevel_phrase) = let arg =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let x =
|
|
let _1 =
|
|
# 3482 "parsing/parser.mly"
|
|
( Pdir_ident _1 )
|
|
# 43194 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 853 "parsing/parser.mly"
|
|
( mk_directive_arg ~loc:_sloc _1 )
|
|
# 43202 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 126 "menhir/standard.mly"
|
|
( Some x )
|
|
# 43208 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_arg_ = _endpos__1_inlined2_ in
|
|
let dir =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined1_, _startpos__1_inlined1_, _1_inlined1) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 43220 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_arg_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 3475 "parsing/parser.mly"
|
|
( mk_directive ~loc:_sloc dir arg )
|
|
# 43229 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined2 : unit = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (Asttypes.label) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined2_ in
|
|
let _v : (Parsetree.toplevel_phrase) = let arg =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let x =
|
|
let _1 =
|
|
# 3483 "parsing/parser.mly"
|
|
( Pdir_bool false )
|
|
# 43271 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 853 "parsing/parser.mly"
|
|
( mk_directive_arg ~loc:_sloc _1 )
|
|
# 43279 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 126 "menhir/standard.mly"
|
|
( Some x )
|
|
# 43285 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_arg_ = _endpos__1_inlined2_ in
|
|
let dir =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined1_, _startpos__1_inlined1_, _1_inlined1) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 43297 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_arg_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 3475 "parsing/parser.mly"
|
|
( mk_directive ~loc:_sloc dir arg )
|
|
# 43306 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined2 : unit = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (Asttypes.label) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined2_ in
|
|
let _v : (Parsetree.toplevel_phrase) = let arg =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let x =
|
|
let _1 =
|
|
# 3484 "parsing/parser.mly"
|
|
( Pdir_bool true )
|
|
# 43348 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 853 "parsing/parser.mly"
|
|
( mk_directive_arg ~loc:_sloc _1 )
|
|
# 43356 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 126 "menhir/standard.mly"
|
|
( Some x )
|
|
# 43362 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_arg_ = _endpos__1_inlined2_ in
|
|
let dir =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined1_, _startpos__1_inlined1_, _1_inlined1) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 43374 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_arg_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 3475 "parsing/parser.mly"
|
|
( mk_directive ~loc:_sloc dir arg )
|
|
# 43383 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = e;
|
|
MenhirLib.EngineTypes.startp = _startpos_e_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.attributes) = Obj.magic _1 in
|
|
let e : (Parsetree.expression) = Obj.magic e in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_e_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (
|
|
# 772 "parsing/parser.mly"
|
|
(Parsetree.toplevel_phrase)
|
|
# 43422 "parsing/parser.ml"
|
|
) = let _1 =
|
|
let _1 =
|
|
let _1 =
|
|
let attrs =
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 43429 "parsing/parser.ml"
|
|
in
|
|
|
|
# 1254 "parsing/parser.mly"
|
|
( mkstrexp e attrs )
|
|
# 43434 "parsing/parser.ml"
|
|
|
|
in
|
|
let _startpos__1_ = _startpos_e_ in
|
|
let _startpos = _startpos__1_ in
|
|
|
|
# 796 "parsing/parser.mly"
|
|
( text_str _startpos @ [_1] )
|
|
# 43442 "parsing/parser.ml"
|
|
|
|
in
|
|
let _startpos__1_ = _startpos_e_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _startpos = _startpos__1_ in
|
|
|
|
# 784 "parsing/parser.mly"
|
|
( extra_str _startpos _endpos _1 )
|
|
# 43451 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1061 "parsing/parser.mly"
|
|
( Ptop_def _1 )
|
|
# 43457 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = xss;
|
|
MenhirLib.EngineTypes.startp = _startpos_xss_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xss_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let xss : (Parsetree.structure_item list list) = Obj.magic xss in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_xss_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (
|
|
# 772 "parsing/parser.mly"
|
|
(Parsetree.toplevel_phrase)
|
|
# 43489 "parsing/parser.ml"
|
|
) = let _1 =
|
|
let _1 =
|
|
# 260 "menhir/standard.mly"
|
|
( List.flatten xss )
|
|
# 43494 "parsing/parser.ml"
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_xss_, _startpos_xss_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _startpos = _startpos__1_ in
|
|
|
|
# 784 "parsing/parser.mly"
|
|
( extra_str _startpos _endpos _1 )
|
|
# 43502 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1065 "parsing/parser.mly"
|
|
( Ptop_def _1 )
|
|
# 43508 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Parsetree.toplevel_phrase) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (
|
|
# 772 "parsing/parser.mly"
|
|
(Parsetree.toplevel_phrase)
|
|
# 43540 "parsing/parser.ml"
|
|
) =
|
|
# 1069 "parsing/parser.mly"
|
|
( _1 )
|
|
# 43544 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (
|
|
# 772 "parsing/parser.mly"
|
|
(Parsetree.toplevel_phrase)
|
|
# 43569 "parsing/parser.ml"
|
|
) =
|
|
# 1072 "parsing/parser.mly"
|
|
( raise End_of_file )
|
|
# 43573 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = ty;
|
|
MenhirLib.EngineTypes.startp = _startpos_ty_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ty_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let ty : (Parsetree.core_type) = Obj.magic ty in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_ty_ in
|
|
let _endpos = _endpos_ty_ in
|
|
let _v : (Parsetree.core_type) =
|
|
# 3191 "parsing/parser.mly"
|
|
( ty )
|
|
# 43598 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let xs : (Parsetree.core_type list) = Obj.magic xs in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_xs_ in
|
|
let _endpos = _endpos_xs_ in
|
|
let _v : (Parsetree.core_type) = let _1 =
|
|
let _1 =
|
|
let tys =
|
|
let xs =
|
|
# 253 "menhir/standard.mly"
|
|
( List.rev xs )
|
|
# 43626 "parsing/parser.ml"
|
|
in
|
|
|
|
# 954 "parsing/parser.mly"
|
|
( xs )
|
|
# 43631 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3194 "parsing/parser.mly"
|
|
( Ptyp_tuple tys )
|
|
# 43637 "parsing/parser.ml"
|
|
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_xs_, _startpos_xs_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 829 "parsing/parser.mly"
|
|
( mktyp ~loc:_sloc _1 )
|
|
# 43647 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3196 "parsing/parser.mly"
|
|
( _1 )
|
|
# 43653 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : (Parsetree.core_type) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.core_type option * Parsetree.core_type option) =
|
|
# 2539 "parsing/parser.mly"
|
|
( (Some _2, None) )
|
|
# 43685 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _4 : (Parsetree.core_type) = Obj.magic _4 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : (Parsetree.core_type) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__4_ in
|
|
let _v : (Parsetree.core_type option * Parsetree.core_type option) =
|
|
# 2540 "parsing/parser.mly"
|
|
( (Some _2, Some _4) )
|
|
# 43731 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : (Parsetree.core_type) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.core_type option * Parsetree.core_type option) =
|
|
# 2541 "parsing/parser.mly"
|
|
( (None, Some _2) )
|
|
# 43763 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.core_type option * Parsetree.core_type option) =
|
|
# 2542 "parsing/parser.mly"
|
|
( syntax_error() )
|
|
# 43795 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.core_type option * Parsetree.core_type option) =
|
|
# 2543 "parsing/parser.mly"
|
|
( syntax_error() )
|
|
# 43827 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _endpos = _startpos in
|
|
let _v : (Parsetree.type_kind * Asttypes.private_flag * Parsetree.core_type option) =
|
|
# 2866 "parsing/parser.mly"
|
|
( (Ptype_abstract, Public, None) )
|
|
# 43845 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : (Parsetree.type_kind * Asttypes.private_flag * Parsetree.core_type option) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.type_kind * Asttypes.private_flag * Parsetree.core_type option) =
|
|
# 2868 "parsing/parser.mly"
|
|
( _2 )
|
|
# 43877 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 43898 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Longident.t) =
|
|
# 3442 "parsing/parser.mly"
|
|
( Lident _1 )
|
|
# 43906 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 43939 "parsing/parser.ml"
|
|
) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Longident.t) =
|
|
# 3443 "parsing/parser.mly"
|
|
( Ldot(_1, _3) )
|
|
# 43949 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : (Parsetree.core_type) = Obj.magic _2 in
|
|
let _1 : (Asttypes.variance) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Parsetree.core_type * Asttypes.variance) =
|
|
# 2883 "parsing/parser.mly"
|
|
( _2, _1 )
|
|
# 43981 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _endpos = _startpos in
|
|
let _v : ((Parsetree.core_type * Asttypes.variance) list) =
|
|
# 2876 "parsing/parser.mly"
|
|
( [] )
|
|
# 43999 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = p;
|
|
MenhirLib.EngineTypes.startp = _startpos_p_;
|
|
MenhirLib.EngineTypes.endp = _endpos_p_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let p : (Parsetree.core_type * Asttypes.variance) = Obj.magic p in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_p_ in
|
|
let _endpos = _endpos_p_ in
|
|
let _v : ((Parsetree.core_type * Asttypes.variance) list) =
|
|
# 2878 "parsing/parser.mly"
|
|
( [p] )
|
|
# 44024 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let xs : ((Parsetree.core_type * Asttypes.variance) list) = Obj.magic xs in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : ((Parsetree.core_type * Asttypes.variance) list) = let ps =
|
|
let xs =
|
|
# 253 "menhir/standard.mly"
|
|
( List.rev xs )
|
|
# 44064 "parsing/parser.ml"
|
|
in
|
|
|
|
# 926 "parsing/parser.mly"
|
|
( xs )
|
|
# 44069 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2880 "parsing/parser.mly"
|
|
( ps )
|
|
# 44075 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = tyvar;
|
|
MenhirLib.EngineTypes.startp = _startpos_tyvar_;
|
|
MenhirLib.EngineTypes.endp = _endpos_tyvar_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let tyvar : (Asttypes.label) = Obj.magic tyvar in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_tyvar_ in
|
|
let _v : (Parsetree.core_type) = let _1 =
|
|
let _1 =
|
|
# 2888 "parsing/parser.mly"
|
|
( Ptyp_var tyvar )
|
|
# 44108 "parsing/parser.ml"
|
|
in
|
|
let _endpos__1_ = _endpos_tyvar_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 829 "parsing/parser.mly"
|
|
( mktyp ~loc:_sloc _1 )
|
|
# 44117 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2891 "parsing/parser.mly"
|
|
( _1 )
|
|
# 44123 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Parsetree.core_type) = let _1 =
|
|
let _1 =
|
|
# 2890 "parsing/parser.mly"
|
|
( Ptyp_any )
|
|
# 44149 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 829 "parsing/parser.mly"
|
|
( mktyp ~loc:_sloc _1 )
|
|
# 44157 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2891 "parsing/parser.mly"
|
|
( _1 )
|
|
# 44163 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _endpos = _startpos in
|
|
let _v : (Asttypes.variance) =
|
|
# 2895 "parsing/parser.mly"
|
|
( Invariant )
|
|
# 44181 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Asttypes.variance) =
|
|
# 2896 "parsing/parser.mly"
|
|
( Covariant )
|
|
# 44206 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Asttypes.variance) =
|
|
# 2897 "parsing/parser.mly"
|
|
( Contravariant )
|
|
# 44231 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = xss;
|
|
MenhirLib.EngineTypes.startp = _startpos_xss_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xss_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let xss : (Parsetree.toplevel_phrase list list) = Obj.magic xss in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_xss_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (
|
|
# 774 "parsing/parser.mly"
|
|
(Parsetree.toplevel_phrase list)
|
|
# 44263 "parsing/parser.ml"
|
|
) = let _1 =
|
|
let _1 =
|
|
let ys =
|
|
# 260 "menhir/standard.mly"
|
|
( List.flatten xss )
|
|
# 44269 "parsing/parser.ml"
|
|
in
|
|
let xs =
|
|
let _1 =
|
|
# 862 "parsing/parser.mly"
|
|
( [] )
|
|
# 44275 "parsing/parser.ml"
|
|
in
|
|
|
|
# 1092 "parsing/parser.mly"
|
|
( _1 )
|
|
# 44280 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 267 "menhir/standard.mly"
|
|
( xs @ ys )
|
|
# 44286 "parsing/parser.ml"
|
|
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_xss_, _startpos_xss_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _startpos = _startpos__1_ in
|
|
|
|
# 788 "parsing/parser.mly"
|
|
( extra_def _startpos _endpos _1 )
|
|
# 44295 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1085 "parsing/parser.mly"
|
|
( _1 )
|
|
# 44301 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xss;
|
|
MenhirLib.EngineTypes.startp = _startpos_xss_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xss_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = e;
|
|
MenhirLib.EngineTypes.startp = _startpos_e_;
|
|
MenhirLib.EngineTypes.endp = _endpos_e_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let xss : (Parsetree.toplevel_phrase list list) = Obj.magic xss in
|
|
let _1 : (Parsetree.attributes) = Obj.magic _1 in
|
|
let e : (Parsetree.expression) = Obj.magic e in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos_e_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (
|
|
# 774 "parsing/parser.mly"
|
|
(Parsetree.toplevel_phrase list)
|
|
# 44347 "parsing/parser.ml"
|
|
) = let _1 =
|
|
let _1 =
|
|
let ys =
|
|
# 260 "menhir/standard.mly"
|
|
( List.flatten xss )
|
|
# 44353 "parsing/parser.ml"
|
|
in
|
|
let xs =
|
|
let _1 =
|
|
let x =
|
|
let _1 =
|
|
let _1 =
|
|
let attrs =
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 44363 "parsing/parser.ml"
|
|
in
|
|
|
|
# 1254 "parsing/parser.mly"
|
|
( mkstrexp e attrs )
|
|
# 44368 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 806 "parsing/parser.mly"
|
|
( Ptop_def [_1] )
|
|
# 44374 "parsing/parser.ml"
|
|
|
|
in
|
|
let _startpos__1_ = _startpos_e_ in
|
|
let _startpos = _startpos__1_ in
|
|
|
|
# 804 "parsing/parser.mly"
|
|
( text_def _startpos @ [_1] )
|
|
# 44382 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 864 "parsing/parser.mly"
|
|
( x )
|
|
# 44388 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1092 "parsing/parser.mly"
|
|
( _1 )
|
|
# 44394 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 267 "menhir/standard.mly"
|
|
( xs @ ys )
|
|
# 44400 "parsing/parser.ml"
|
|
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos_xss_, _startpos_e_) in
|
|
let _endpos = _endpos__1_ in
|
|
let _startpos = _startpos__1_ in
|
|
|
|
# 788 "parsing/parser.mly"
|
|
( extra_def _startpos _endpos _1 )
|
|
# 44409 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 1085 "parsing/parser.mly"
|
|
( _1 )
|
|
# 44415 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 44436 "parsing/parser.ml"
|
|
) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (string) =
|
|
# 3369 "parsing/parser.mly"
|
|
( _1 )
|
|
# 44444 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : (string) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (string) =
|
|
# 3370 "parsing/parser.mly"
|
|
( _2 )
|
|
# 44483 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : (string) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (string) = let _loc__3_ = (_startpos__3_, _endpos__3_) in
|
|
let _loc__1_ = (_startpos__1_, _endpos__1_) in
|
|
|
|
# 3371 "parsing/parser.mly"
|
|
( unclosed "(" _loc__1_ ")" _loc__3_ )
|
|
# 44524 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (string) = let _loc__2_ = (_startpos__2_, _endpos__2_) in
|
|
|
|
# 3372 "parsing/parser.mly"
|
|
( expecting _loc__2_ "operator" )
|
|
# 44557 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (string) = let _loc__3_ = (_startpos__3_, _endpos__3_) in
|
|
|
|
# 3373 "parsing/parser.mly"
|
|
( expecting _loc__3_ "module-expr" )
|
|
# 44597 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : (string) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Longident.t) =
|
|
# 3425 "parsing/parser.mly"
|
|
( Lident _1 )
|
|
# 44622 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _3 : (string) = Obj.magic _3 in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : (Longident.t) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__3_ in
|
|
let _v : (Longident.t) =
|
|
# 3426 "parsing/parser.mly"
|
|
( Ldot(_1, _3) )
|
|
# 44661 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = ty;
|
|
MenhirLib.EngineTypes.startp = _startpos_ty_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ty_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = mutable_;
|
|
MenhirLib.EngineTypes.startp = _startpos_mutable__;
|
|
MenhirLib.EngineTypes.endp = _endpos_mutable__;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let ty : (Parsetree.core_type) = Obj.magic ty in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _1_inlined1 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 44708 "parsing/parser.ml"
|
|
) = Obj.magic _1_inlined1 in
|
|
let mutable_ : (Asttypes.mutable_flag) = Obj.magic mutable_ in
|
|
let _1 : (Parsetree.attributes) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_ty_ in
|
|
let _v : ((Asttypes.label Asttypes.loc * Asttypes.mutable_flag *
|
|
Parsetree.class_field_kind) *
|
|
Parsetree.attributes) = let label =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined1_, _startpos__1_inlined1_, _1_inlined1) in
|
|
let _1 =
|
|
# 3343 "parsing/parser.mly"
|
|
( _1 )
|
|
# 44722 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 44730 "parsing/parser.ml"
|
|
|
|
in
|
|
let attrs =
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 44736 "parsing/parser.ml"
|
|
in
|
|
let _1 =
|
|
# 3568 "parsing/parser.mly"
|
|
( Fresh )
|
|
# 44741 "parsing/parser.ml"
|
|
in
|
|
|
|
# 1805 "parsing/parser.mly"
|
|
( (label, mutable_, Cfk_virtual ty), attrs )
|
|
# 44746 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _6;
|
|
MenhirLib.EngineTypes.startp = _startpos__6_;
|
|
MenhirLib.EngineTypes.endp = _endpos__6_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _6 : (Parsetree.expression) = Obj.magic _6 in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _1_inlined1 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 44793 "parsing/parser.ml"
|
|
) = Obj.magic _1_inlined1 in
|
|
let _3 : (Asttypes.mutable_flag) = Obj.magic _3 in
|
|
let _1 : (Parsetree.attributes) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__6_ in
|
|
let _v : ((Asttypes.label Asttypes.loc * Asttypes.mutable_flag *
|
|
Parsetree.class_field_kind) *
|
|
Parsetree.attributes) = let _4 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined1_, _startpos__1_inlined1_, _1_inlined1) in
|
|
let _1 =
|
|
# 3343 "parsing/parser.mly"
|
|
( _1 )
|
|
# 44807 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 44815 "parsing/parser.ml"
|
|
|
|
in
|
|
let _2 =
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 44821 "parsing/parser.ml"
|
|
in
|
|
let _1 =
|
|
# 3571 "parsing/parser.mly"
|
|
( Fresh )
|
|
# 44826 "parsing/parser.ml"
|
|
in
|
|
|
|
# 1807 "parsing/parser.mly"
|
|
( (_4, _3, Cfk_concrete (_1, _6)), _2 )
|
|
# 44831 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _6;
|
|
MenhirLib.EngineTypes.startp = _startpos__6_;
|
|
MenhirLib.EngineTypes.endp = _endpos__6_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _6 : (Parsetree.expression) = Obj.magic _6 in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _1_inlined2 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 44884 "parsing/parser.ml"
|
|
) = Obj.magic _1_inlined2 in
|
|
let _3 : (Asttypes.mutable_flag) = Obj.magic _3 in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__6_ in
|
|
let _v : ((Asttypes.label Asttypes.loc * Asttypes.mutable_flag *
|
|
Parsetree.class_field_kind) *
|
|
Parsetree.attributes) = let _4 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let _1 =
|
|
# 3343 "parsing/parser.mly"
|
|
( _1 )
|
|
# 44899 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 44907 "parsing/parser.ml"
|
|
|
|
in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 44915 "parsing/parser.ml"
|
|
|
|
in
|
|
let _1 =
|
|
# 3572 "parsing/parser.mly"
|
|
( Override )
|
|
# 44921 "parsing/parser.ml"
|
|
in
|
|
|
|
# 1807 "parsing/parser.mly"
|
|
( (_4, _3, Cfk_concrete (_1, _6)), _2 )
|
|
# 44926 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _7;
|
|
MenhirLib.EngineTypes.startp = _startpos__7_;
|
|
MenhirLib.EngineTypes.endp = _endpos__7_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _6;
|
|
MenhirLib.EngineTypes.startp = _startpos__6_;
|
|
MenhirLib.EngineTypes.endp = _endpos__6_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _7 : (Parsetree.expression) = Obj.magic _7 in
|
|
let _6 : unit = Obj.magic _6 in
|
|
let _5 : (Parsetree.core_type option * Parsetree.core_type option) = Obj.magic _5 in
|
|
let _1_inlined1 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 44980 "parsing/parser.ml"
|
|
) = Obj.magic _1_inlined1 in
|
|
let _3 : (Asttypes.mutable_flag) = Obj.magic _3 in
|
|
let _1 : (Parsetree.attributes) = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__7_ in
|
|
let _v : ((Asttypes.label Asttypes.loc * Asttypes.mutable_flag *
|
|
Parsetree.class_field_kind) *
|
|
Parsetree.attributes) = let _4 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined1_, _startpos__1_inlined1_, _1_inlined1) in
|
|
let _1 =
|
|
# 3343 "parsing/parser.mly"
|
|
( _1 )
|
|
# 44994 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 45002 "parsing/parser.ml"
|
|
|
|
in
|
|
let _startpos__4_ = _startpos__1_inlined1_ in
|
|
let _2 =
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 45009 "parsing/parser.ml"
|
|
in
|
|
let (_endpos__2_, _startpos__2_) = (_endpos__1_, _startpos__1_) in
|
|
let _1 =
|
|
# 3571 "parsing/parser.mly"
|
|
( Fresh )
|
|
# 45015 "parsing/parser.ml"
|
|
in
|
|
let (_endpos__1_, _startpos__1_) = (_endpos__0_, _endpos__0_) in
|
|
let _endpos = _endpos__7_ in
|
|
let _symbolstartpos = if _startpos__1_ != _endpos__1_ then
|
|
_startpos__1_
|
|
else
|
|
if _startpos__2_ != _endpos__2_ then
|
|
_startpos__2_
|
|
else
|
|
if _startpos__3_ != _endpos__3_ then
|
|
_startpos__3_
|
|
else
|
|
_startpos__4_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1810 "parsing/parser.mly"
|
|
( let e = mkexp_constraint ~loc:_sloc _7 _5 in
|
|
(_4, _3, Cfk_concrete (_1, e)), _2
|
|
)
|
|
# 45035 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _7;
|
|
MenhirLib.EngineTypes.startp = _startpos__7_;
|
|
MenhirLib.EngineTypes.endp = _endpos__7_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _6;
|
|
MenhirLib.EngineTypes.startp = _startpos__6_;
|
|
MenhirLib.EngineTypes.endp = _endpos__6_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _7 : (Parsetree.expression) = Obj.magic _7 in
|
|
let _6 : unit = Obj.magic _6 in
|
|
let _5 : (Parsetree.core_type option * Parsetree.core_type option) = Obj.magic _5 in
|
|
let _1_inlined2 : (
|
|
# 642 "parsing/parser.mly"
|
|
(string)
|
|
# 45095 "parsing/parser.ml"
|
|
) = Obj.magic _1_inlined2 in
|
|
let _3 : (Asttypes.mutable_flag) = Obj.magic _3 in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__7_ in
|
|
let _v : ((Asttypes.label Asttypes.loc * Asttypes.mutable_flag *
|
|
Parsetree.class_field_kind) *
|
|
Parsetree.attributes) = let _4 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let _1 =
|
|
# 3343 "parsing/parser.mly"
|
|
( _1 )
|
|
# 45110 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 45118 "parsing/parser.ml"
|
|
|
|
in
|
|
let _startpos__4_ = _startpos__1_inlined2_ in
|
|
let _2 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 45127 "parsing/parser.ml"
|
|
|
|
in
|
|
let (_endpos__2_, _startpos__2_) = (_endpos__1_inlined1_, _startpos__1_inlined1_) in
|
|
let _1 =
|
|
# 3572 "parsing/parser.mly"
|
|
( Override )
|
|
# 45134 "parsing/parser.ml"
|
|
in
|
|
let _endpos = _endpos__7_ in
|
|
let _symbolstartpos = if _startpos__1_ != _endpos__1_ then
|
|
_startpos__1_
|
|
else
|
|
if _startpos__2_ != _endpos__2_ then
|
|
_startpos__2_
|
|
else
|
|
if _startpos__3_ != _endpos__3_ then
|
|
_startpos__3_
|
|
else
|
|
_startpos__4_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 1810 "parsing/parser.mly"
|
|
( let e = mkexp_constraint ~loc:_sloc _7 _5 in
|
|
(_4, _3, Cfk_concrete (_1, e)), _2
|
|
)
|
|
# 45153 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined3;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = ty;
|
|
MenhirLib.EngineTypes.startp = _startpos_ty_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ty_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _5;
|
|
MenhirLib.EngineTypes.startp = _startpos__5_;
|
|
MenhirLib.EngineTypes.endp = _endpos__5_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = ext;
|
|
MenhirLib.EngineTypes.startp = _startpos_ext_;
|
|
MenhirLib.EngineTypes.endp = _endpos_ext_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined3 : (Parsetree.attributes) = Obj.magic _1_inlined3 in
|
|
let ty : (Parsetree.core_type) = Obj.magic ty in
|
|
let _5 : unit = Obj.magic _5 in
|
|
let _1_inlined2 : (string) = Obj.magic _1_inlined2 in
|
|
let _1_inlined1 : (Parsetree.attributes) = Obj.magic _1_inlined1 in
|
|
let ext : (string Asttypes.loc option) = Obj.magic ext in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined3_ in
|
|
let _v : (Parsetree.value_description * string Asttypes.loc option) = let attrs2 =
|
|
let _1 = _1_inlined3 in
|
|
|
|
# 3665 "parsing/parser.mly"
|
|
( _1 )
|
|
# 45222 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos_attrs2_ = _endpos__1_inlined3_ in
|
|
let id =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 45234 "parsing/parser.ml"
|
|
|
|
in
|
|
let attrs1 =
|
|
let _1 = _1_inlined1 in
|
|
|
|
# 3669 "parsing/parser.mly"
|
|
( _1 )
|
|
# 45242 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos_attrs2_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 2737 "parsing/parser.mly"
|
|
( let attrs = attrs1 @ attrs2 in
|
|
let loc = make_loc _sloc in
|
|
let docs = symbol_docs _sloc in
|
|
Val.mk id ty ~attrs ~loc ~docs,
|
|
ext )
|
|
# 45255 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _endpos = _startpos in
|
|
let _v : (Asttypes.virtual_flag) =
|
|
# 3532 "parsing/parser.mly"
|
|
( Concrete )
|
|
# 45273 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Asttypes.virtual_flag) =
|
|
# 3533 "parsing/parser.mly"
|
|
( Virtual )
|
|
# 45298 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Asttypes.mutable_flag) =
|
|
# 3556 "parsing/parser.mly"
|
|
( Immutable )
|
|
# 45323 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Asttypes.mutable_flag) =
|
|
# 3557 "parsing/parser.mly"
|
|
( Mutable )
|
|
# 45355 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Asttypes.mutable_flag) =
|
|
# 3558 "parsing/parser.mly"
|
|
( Mutable )
|
|
# 45387 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Asttypes.private_flag) =
|
|
# 3563 "parsing/parser.mly"
|
|
( Public )
|
|
# 45412 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Asttypes.private_flag) =
|
|
# 3564 "parsing/parser.mly"
|
|
( Private )
|
|
# 45444 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Asttypes.private_flag) =
|
|
# 3565 "parsing/parser.mly"
|
|
( Private )
|
|
# 45476 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = xs;
|
|
MenhirLib.EngineTypes.startp = _startpos_xs_;
|
|
MenhirLib.EngineTypes.endp = _endpos_xs_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let xs : ((Parsetree.core_type * Parsetree.core_type * Ast_helper.loc) list) = Obj.magic xs in
|
|
let _1_inlined2 : (Parsetree.core_type) = Obj.magic _1_inlined2 in
|
|
let _4 : (Asttypes.private_flag) = Obj.magic _4 in
|
|
let _1_inlined1 : (Longident.t) = Obj.magic _1_inlined1 in
|
|
let _2 : ((Parsetree.core_type * Asttypes.variance) list) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos_xs_ in
|
|
let _v : (Parsetree.with_constraint) = let _6 =
|
|
let _1 =
|
|
let xs =
|
|
# 253 "menhir/standard.mly"
|
|
( List.rev xs )
|
|
# 45538 "parsing/parser.ml"
|
|
in
|
|
|
|
# 876 "parsing/parser.mly"
|
|
( xs )
|
|
# 45543 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 2837 "parsing/parser.mly"
|
|
( _1 )
|
|
# 45549 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__6_ = _endpos_xs_ in
|
|
let _5 =
|
|
let _1 = _1_inlined2 in
|
|
|
|
# 3139 "parsing/parser.mly"
|
|
( _1 )
|
|
# 45558 "parsing/parser.ml"
|
|
|
|
in
|
|
let _3 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined1_, _startpos__1_inlined1_, _1_inlined1) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 45569 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__6_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 3062 "parsing/parser.mly"
|
|
( let lident = loc_last _3 in
|
|
Pwith_type
|
|
(_3,
|
|
(Type.mk lident
|
|
~params:_2
|
|
~cstrs:_6
|
|
~manifest:_5
|
|
~priv:_4
|
|
~loc:(make_loc _sloc))) )
|
|
# 45586 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _4;
|
|
MenhirLib.EngineTypes.startp = _startpos__4_;
|
|
MenhirLib.EngineTypes.endp = _endpos__4_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined2 : (Parsetree.core_type) = Obj.magic _1_inlined2 in
|
|
let _4 : unit = Obj.magic _4 in
|
|
let _1_inlined1 : (Longident.t) = Obj.magic _1_inlined1 in
|
|
let _2 : ((Parsetree.core_type * Asttypes.variance) list) = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined2_ in
|
|
let _v : (Parsetree.with_constraint) = let _5 =
|
|
let _1 = _1_inlined2 in
|
|
|
|
# 3139 "parsing/parser.mly"
|
|
( _1 )
|
|
# 45641 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos__5_ = _endpos__1_inlined2_ in
|
|
let _3 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined1_, _startpos__1_inlined1_, _1_inlined1) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 45653 "parsing/parser.ml"
|
|
|
|
in
|
|
let _endpos = _endpos__5_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 3075 "parsing/parser.mly"
|
|
( let lident = loc_last _3 in
|
|
Pwith_typesubst
|
|
(_3,
|
|
(Type.mk lident
|
|
~params:_2
|
|
~manifest:_5
|
|
~loc:(make_loc _sloc))) )
|
|
# 45668 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined2 : (Longident.t) = Obj.magic _1_inlined2 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _1_inlined1 : (Longident.t) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined2_ in
|
|
let _v : (Parsetree.with_constraint) = let _4 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 45719 "parsing/parser.ml"
|
|
|
|
in
|
|
let _2 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined1_, _startpos__1_inlined1_, _1_inlined1) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 45730 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3083 "parsing/parser.mly"
|
|
( Pwith_module (_2, _4) )
|
|
# 45736 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined2;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _3;
|
|
MenhirLib.EngineTypes.startp = _startpos__3_;
|
|
MenhirLib.EngineTypes.endp = _endpos__3_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _1_inlined1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_inlined1_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
};
|
|
};
|
|
} = _menhir_stack in
|
|
let _1_inlined2 : (Longident.t) = Obj.magic _1_inlined2 in
|
|
let _3 : unit = Obj.magic _3 in
|
|
let _1_inlined1 : (Longident.t) = Obj.magic _1_inlined1 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_inlined2_ in
|
|
let _v : (Parsetree.with_constraint) = let _4 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined2_, _startpos__1_inlined2_, _1_inlined2) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 45787 "parsing/parser.ml"
|
|
|
|
in
|
|
let _2 =
|
|
let (_endpos__1_, _startpos__1_, _1) = (_endpos__1_inlined1_, _startpos__1_inlined1_, _1_inlined1) in
|
|
let _endpos = _endpos__1_ in
|
|
let _symbolstartpos = _startpos__1_ in
|
|
let _sloc = (_symbolstartpos, _endpos) in
|
|
|
|
# 792 "parsing/parser.mly"
|
|
( mkrhs _1 _sloc )
|
|
# 45798 "parsing/parser.ml"
|
|
|
|
in
|
|
|
|
# 3085 "parsing/parser.mly"
|
|
( Pwith_modsubst (_2, _4) )
|
|
# 45804 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
} = _menhir_stack in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__1_ in
|
|
let _v : (Asttypes.private_flag) =
|
|
# 3088 "parsing/parser.mly"
|
|
( Public )
|
|
# 45829 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
(fun _menhir_env ->
|
|
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
|
|
let {
|
|
MenhirLib.EngineTypes.state = _;
|
|
MenhirLib.EngineTypes.semv = _2;
|
|
MenhirLib.EngineTypes.startp = _startpos__2_;
|
|
MenhirLib.EngineTypes.endp = _endpos__2_;
|
|
MenhirLib.EngineTypes.next = {
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = _1;
|
|
MenhirLib.EngineTypes.startp = _startpos__1_;
|
|
MenhirLib.EngineTypes.endp = _endpos__1_;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
};
|
|
} = _menhir_stack in
|
|
let _2 : unit = Obj.magic _2 in
|
|
let _1 : unit = Obj.magic _1 in
|
|
let _endpos__0_ = _menhir_stack.MenhirLib.EngineTypes.endp in
|
|
let _startpos = _startpos__1_ in
|
|
let _endpos = _endpos__2_ in
|
|
let _v : (Asttypes.private_flag) =
|
|
# 3089 "parsing/parser.mly"
|
|
( Private )
|
|
# 45861 "parsing/parser.ml"
|
|
in
|
|
{
|
|
MenhirLib.EngineTypes.state = _menhir_s;
|
|
MenhirLib.EngineTypes.semv = Obj.repr _v;
|
|
MenhirLib.EngineTypes.startp = _startpos;
|
|
MenhirLib.EngineTypes.endp = _endpos;
|
|
MenhirLib.EngineTypes.next = _menhir_stack;
|
|
});
|
|
|]
|
|
|
|
and trace =
|
|
None
|
|
|
|
end
|
|
|
|
module MenhirInterpreter = struct
|
|
|
|
module ET = MenhirLib.TableInterpreter.MakeEngineTable (Tables)
|
|
|
|
module TI = MenhirLib.Engine.Make (ET)
|
|
|
|
include TI
|
|
|
|
end
|
|
|
|
let use_file =
|
|
fun lexer lexbuf ->
|
|
(Obj.magic (MenhirInterpreter.entry 1765 lexer lexbuf) : (
|
|
# 774 "parsing/parser.mly"
|
|
(Parsetree.toplevel_phrase list)
|
|
# 45892 "parsing/parser.ml"
|
|
))
|
|
|
|
and toplevel_phrase =
|
|
fun lexer lexbuf ->
|
|
(Obj.magic (MenhirInterpreter.entry 1744 lexer lexbuf) : (
|
|
# 772 "parsing/parser.mly"
|
|
(Parsetree.toplevel_phrase)
|
|
# 45900 "parsing/parser.ml"
|
|
))
|
|
|
|
and parse_pattern =
|
|
fun lexer lexbuf ->
|
|
(Obj.magic (MenhirInterpreter.entry 1740 lexer lexbuf) : (
|
|
# 780 "parsing/parser.mly"
|
|
(Parsetree.pattern)
|
|
# 45908 "parsing/parser.ml"
|
|
))
|
|
|
|
and parse_expression =
|
|
fun lexer lexbuf ->
|
|
(Obj.magic (MenhirInterpreter.entry 1736 lexer lexbuf) : (
|
|
# 778 "parsing/parser.mly"
|
|
(Parsetree.expression)
|
|
# 45916 "parsing/parser.ml"
|
|
))
|
|
|
|
and parse_core_type =
|
|
fun lexer lexbuf ->
|
|
(Obj.magic (MenhirInterpreter.entry 1732 lexer lexbuf) : (
|
|
# 776 "parsing/parser.mly"
|
|
(Parsetree.core_type)
|
|
# 45924 "parsing/parser.ml"
|
|
))
|
|
|
|
and interface =
|
|
fun lexer lexbuf ->
|
|
(Obj.magic (MenhirInterpreter.entry 1728 lexer lexbuf) : (
|
|
# 770 "parsing/parser.mly"
|
|
(Parsetree.signature)
|
|
# 45932 "parsing/parser.ml"
|
|
))
|
|
|
|
and implementation =
|
|
fun lexer lexbuf ->
|
|
(Obj.magic (MenhirInterpreter.entry 0 lexer lexbuf) : (
|
|
# 768 "parsing/parser.mly"
|
|
(Parsetree.structure)
|
|
# 45940 "parsing/parser.ml"
|
|
))
|
|
|
|
module Incremental = struct
|
|
|
|
let use_file =
|
|
fun initial_position ->
|
|
(Obj.magic (MenhirInterpreter.start 1765 initial_position) : (
|
|
# 774 "parsing/parser.mly"
|
|
(Parsetree.toplevel_phrase list)
|
|
# 45950 "parsing/parser.ml"
|
|
) MenhirInterpreter.checkpoint)
|
|
|
|
and toplevel_phrase =
|
|
fun initial_position ->
|
|
(Obj.magic (MenhirInterpreter.start 1744 initial_position) : (
|
|
# 772 "parsing/parser.mly"
|
|
(Parsetree.toplevel_phrase)
|
|
# 45958 "parsing/parser.ml"
|
|
) MenhirInterpreter.checkpoint)
|
|
|
|
and parse_pattern =
|
|
fun initial_position ->
|
|
(Obj.magic (MenhirInterpreter.start 1740 initial_position) : (
|
|
# 780 "parsing/parser.mly"
|
|
(Parsetree.pattern)
|
|
# 45966 "parsing/parser.ml"
|
|
) MenhirInterpreter.checkpoint)
|
|
|
|
and parse_expression =
|
|
fun initial_position ->
|
|
(Obj.magic (MenhirInterpreter.start 1736 initial_position) : (
|
|
# 778 "parsing/parser.mly"
|
|
(Parsetree.expression)
|
|
# 45974 "parsing/parser.ml"
|
|
) MenhirInterpreter.checkpoint)
|
|
|
|
and parse_core_type =
|
|
fun initial_position ->
|
|
(Obj.magic (MenhirInterpreter.start 1732 initial_position) : (
|
|
# 776 "parsing/parser.mly"
|
|
(Parsetree.core_type)
|
|
# 45982 "parsing/parser.ml"
|
|
) MenhirInterpreter.checkpoint)
|
|
|
|
and interface =
|
|
fun initial_position ->
|
|
(Obj.magic (MenhirInterpreter.start 1728 initial_position) : (
|
|
# 770 "parsing/parser.mly"
|
|
(Parsetree.signature)
|
|
# 45990 "parsing/parser.ml"
|
|
) MenhirInterpreter.checkpoint)
|
|
|
|
and implementation =
|
|
fun initial_position ->
|
|
(Obj.magic (MenhirInterpreter.start 0 initial_position) : (
|
|
# 768 "parsing/parser.mly"
|
|
(Parsetree.structure)
|
|
# 45998 "parsing/parser.ml"
|
|
) MenhirInterpreter.checkpoint)
|
|
|
|
end
|
|
|
|
# 3695 "parsing/parser.mly"
|
|
|
|
|
|
# 46006 "parsing/parser.ml"
|
|
|
|
# 269 "menhir/standard.mly"
|
|
|
|
|
|
# 46011 "parsing/parser.ml"
|