diff --git a/stage0/src/Init/Lean/Parser/Parser.lean b/stage0/src/Init/Lean/Parser/Parser.lean index d35b0438b6..d6183dc10d 100644 --- a/stage0/src/Init/Lean/Parser/Parser.lean +++ b/stage0/src/Init/Lean/Parser/Parser.lean @@ -917,12 +917,16 @@ fun c s => @[inline] def nonReservedSymbolFn (sym : String) : BasicParserFn := nonReservedSymbolFnAux sym ("'" ++ sym ++ "'") -def nonReservedSymbolInfo (sym : String) : ParserInfo := -{ firstTokens := FirstTokens.tokens [ { val := sym }, { val := "ident" } ] } +def nonReservedSymbolInfo (sym : String) (includeIdent : Bool) : ParserInfo := +{ firstTokens := + if includeIdent then + FirstTokens.tokens [ { val := sym }, { val := "ident" } ] + else + FirstTokens.tokens [ { val := sym } ] } -@[inline] def nonReservedSymbol {k : ParserKind} (sym : String) : Parser k := +@[inline] def nonReservedSymbol {k : ParserKind} (sym : String) (includeIdent := false) : Parser k := let sym := sym.trim; -{ info := nonReservedSymbolInfo sym, +{ info := nonReservedSymbolInfo sym includeIdent, fn := fun _ => nonReservedSymbolFn sym } partial def strAux (sym : String) (errorMsg : String) : Nat → BasicParserFn @@ -1242,7 +1246,7 @@ instance ParsingTables.inhabited : Inhabited ParsingTables := ⟨{}⟩ just executes the parsers associated with the auxiliary token "ident". If `leadingIdentAsSymbol == true` and the leading token is an identifier ``, then `prattParser` combines the parsers associated with the token `` with the parsers associated with the auxiliary token "ident". - We use this feature and a variant of the `nonReservedSymbol` parser to implement the `tactic` parsers. + We use this feature and the `nonReservedSymbol` parser to implement the `tactic` parsers. We use this approach to avoid creating a reserved symbol for each builtin tactic (e.g., `apply`, `assumption`, etc.). That is, users may still use these symbols as identifiers (e.g., naming a function). -/ @@ -1252,20 +1256,6 @@ structure ParserCategory := abbrev ParserCategories := PersistentHashMap Name ParserCategory -def tacticSymbolInfo (sym : String) : ParserInfo := -{ firstTokens := FirstTokens.tokens [ { val := sym } ] } - -/- - Variant of `nonReservedSymbol sym` which only register this parser as a leading parser with first token `sym`. - This parser only makes sense for categories that set `leadingIdentAsSymbol == true`, as the `tactic` category. - - TODO: when defining convenient notation for writing new tactics, we should use `tacticSymbol` instead of `symbol`. --/ -@[inline] def tacticSymbol (sym : String) : Parser := -let sym := sym.trim; -{ info := tacticSymbolInfo sym, - fn := fun _ => nonReservedSymbolFn sym } - def currLbp (left : Syntax) (c : ParserContext) (s : ParserState) : ParserState × Nat := let (s, stx) := peekToken c s; match stx with @@ -1524,7 +1514,8 @@ def compileParserDescr (categories : ParserCategories) : forall {k : ParserKind} | _, ParserDescr.sepBy1 d₁ d₂ => sepBy1 <$> compileParserDescr d₁ <*> compileParserDescr d₂ | _, ParserDescr.node k d => node k <$> compileParserDescr d | _, ParserDescr.symbol tk lbp => pure $ symbol tk lbp -| ParserKind.leading, ParserDescr.tacticSymbol tk => pure $ tacticSymbol tk +| ParserKind.leading, + ParserDescr.nonReservedSymbol tk includeIdent => pure $ nonReservedSymbol tk includeIdent | _, ParserDescr.unicodeSymbol tk₁ tk₂ lbp => pure $ unicodeSymbol tk₁ tk₂ lbp | ParserKind.leading, ParserDescr.parser catName rbp => match categories.find? catName with @@ -1818,6 +1809,20 @@ mkAntiquot "fieldIdx" `fieldIdx <|> { fn := fun _ => fieldIdxFn, info := mkAtomicInfo "fieldIdx" } +/- Helper functions for defining simple parsers -/ + +def unicodeInfixR (sym : String) (asciiSym : String) (lbp : Nat) : TrailingParser := +pushLeading >> unicodeSymbol sym asciiSym lbp >> termParser (lbp - 1) + +def infixR (sym : String) (lbp : Nat) : TrailingParser := +pushLeading >> symbol sym lbp >> termParser (lbp - 1) + +def unicodeInfixL (sym : String) (asciiSym : String) (lbp : Nat) : TrailingParser := +pushLeading >> unicodeSymbol sym asciiSym lbp >> termParser lbp + +def infixL (sym : String) (lbp : Nat) : TrailingParser := +pushLeading >> symbol sym lbp >> termParser lbp + end Parser namespace Syntax diff --git a/stage0/src/Init/Lean/Parser/Syntax.lean b/stage0/src/Init/Lean/Parser/Syntax.lean index db9bd7fdcf..e8f9bda3b0 100644 --- a/stage0/src/Init/Lean/Parser/Syntax.lean +++ b/stage0/src/Init/Lean/Parser/Syntax.lean @@ -4,13 +4,14 @@ Released under Apache 2.0 license as described in the file LICENSE. Authors: Leonardo de Moura, Sebastian Ullrich -/ prelude -import Init.Lean.Parser.Parser +import Init.Lean.Parser.Command namespace Lean namespace Parser @[init] def regBuiltinSyntaxParserAttr : IO Unit := -registerBuiltinParserAttribute `builtinSyntaxParser `syntax +let leadingIdentAsSymbol := true; +registerBuiltinParserAttribute `builtinSyntaxParser `syntax leadingIdentAsSymbol @[init] def regSyntaxParserAttribute : IO Unit := registerBuiltinDynamicParserAttribute `syntaxParser `syntax @@ -20,7 +21,28 @@ categoryParser `syntax rbp namespace Syntax +@[builtinSyntaxParser] def paren := parser! "(" >> many1 syntaxParser >> ")" +@[builtinSyntaxParser] def cat := parser! ident +@[builtinSyntaxParser] def atom := parser! strLit +@[builtinSyntaxParser] def num := parser! nonReservedSymbol "num" +@[builtinSyntaxParser] def str := parser! nonReservedSymbol "str" +@[builtinSyntaxParser] def try := parser! nonReservedSymbol "try " >> syntaxParser +@[builtinSyntaxParser] def lookahead := parser! nonReservedSymbol "lookahead " >> syntaxParser +@[builtinSyntaxParser] def sepBy := parser! nonReservedSymbol "sepBy " >> syntaxParser >> syntaxParser +@[builtinSyntaxParser] def sepBy1 := parser! nonReservedSymbol "sepBy1 " >> syntaxParser >> syntaxParser + +@[builtinSyntaxParser] def many := tparser! pushLeading >> symbolAux "*" none +@[builtinSyntaxParser] def many1 := tparser! pushLeading >> symbolAux "+" none +@[builtinSyntaxParser] def optional := tparser! pushLeading >> symbolAux "?" none +@[builtinSyntaxParser] def orelse := tparser! infixR " <|> " 2 end Syntax + +namespace Command + +@[builtinCommandParser] def «syntax» := parser! "syntax " >> many1 syntaxParser >> " : " >> ident + +end Command + end Parser end Lean diff --git a/stage0/src/Init/Lean/Parser/Tactic.lean b/stage0/src/Init/Lean/Parser/Tactic.lean index 526c029b76..fcaf81a556 100644 --- a/stage0/src/Init/Lean/Parser/Tactic.lean +++ b/stage0/src/Init/Lean/Parser/Tactic.lean @@ -24,10 +24,10 @@ sepBy1 tacticParser "; " true namespace Tactic -@[builtinTacticParser] def «intro» := parser! tacticSymbol "intro " >> optional ident -@[builtinTacticParser] def «intros» := parser! tacticSymbol "intros " >> many ident -@[builtinTacticParser] def «assumption» := parser! tacticSymbol "assumption" -@[builtinTacticParser] def «apply» := parser! tacticSymbol "apply " >> termParser +@[builtinTacticParser] def «intro» := parser! nonReservedSymbol "intro " >> optional ident +@[builtinTacticParser] def «intros» := parser! nonReservedSymbol "intros " >> many ident +@[builtinTacticParser] def «assumption» := parser! nonReservedSymbol "assumption" +@[builtinTacticParser] def «apply» := parser! nonReservedSymbol "apply " >> termParser @[builtinTacticParser] def nestedTacticBlock := parser! "begin " >> tacticSeq >> "end" @[builtinTacticParser] def nestedTacticBlockCurly := parser! "{" >> tacticSeq >> "}" @[builtinTacticParser] def orelse := tparser! infixR " <|> " 2 diff --git a/stage0/src/Init/Lean/Parser/Term.lean b/stage0/src/Init/Lean/Parser/Term.lean index e6a502c5a2..075a3ed089 100644 --- a/stage0/src/Init/Lean/Parser/Term.lean +++ b/stage0/src/Init/Lean/Parser/Term.lean @@ -9,20 +9,6 @@ import Init.Lean.Parser.Level namespace Lean namespace Parser -/- Helper functions for defining simple parsers -/ - -def unicodeInfixR (sym : String) (asciiSym : String) (lbp : Nat) : TrailingParser := -pushLeading >> unicodeSymbol sym asciiSym lbp >> termParser (lbp - 1) - -def infixR (sym : String) (lbp : Nat) : TrailingParser := -pushLeading >> symbol sym lbp >> termParser (lbp - 1) - -def unicodeInfixL (sym : String) (asciiSym : String) (lbp : Nat) : TrailingParser := -pushLeading >> unicodeSymbol sym asciiSym lbp >> termParser lbp - -def infixL (sym : String) (lbp : Nat) : TrailingParser := -pushLeading >> symbol sym lbp >> termParser lbp - namespace Term /- Built-in parsers -/ diff --git a/stage0/src/Init/LeanExt.lean b/stage0/src/Init/LeanExt.lean index 545c1dac8d..99d696bc3e 100644 --- a/stage0/src/Init/LeanExt.lean +++ b/stage0/src/Init/LeanExt.lean @@ -42,7 +42,7 @@ inductive ParserDescrCore : ParserKind → Type | node {k : ParserKind} : Name → ParserDescrCore k → ParserDescrCore k | symbol {k : ParserKind} : String → Nat → ParserDescrCore k | unicodeSymbol {k : ParserKind} : String → String → Nat → ParserDescrCore k -| tacticSymbol : String → ParserDescrCore ParserKind.leading +| nonReservedSymbol : String → Bool → ParserDescrCore ParserKind.leading | pushLeading : ParserDescrCore ParserKind.trailing | parser : Name → Nat → ParserDescrCore ParserKind.leading @@ -62,7 +62,7 @@ abbrev TrailingParserDescr := ParserDescrCore ParserKind.trailing @[matchPattern] abbrev ParserDescr.sepBy1 := @ParserDescrCore.sepBy1 @[matchPattern] abbrev ParserDescr.node := @ParserDescrCore.node @[matchPattern] abbrev ParserDescr.symbol := @ParserDescrCore.symbol -@[matchPattern] abbrev ParserDescr.tacticSymbol := @ParserDescrCore.tacticSymbol +@[matchPattern] abbrev ParserDescr.nonReservedSymbol := @ParserDescrCore.nonReservedSymbol @[matchPattern] abbrev ParserDescr.unicodeSymbol := @ParserDescrCore.unicodeSymbol @[matchPattern] abbrev ParserDescr.pushLeading := @ParserDescrCore.pushLeading @[matchPattern] abbrev ParserDescr.parser := @ParserDescrCore.parser diff --git a/stage0/stdlib/Init/Lean/Elab/BuiltinNotation.c b/stage0/stdlib/Init/Lean/Elab/BuiltinNotation.c index 9e9b25b69a..0618420a28 100644 --- a/stage0/stdlib/Init/Lean/Elab/BuiltinNotation.c +++ b/stage0/stdlib/Init/Lean/Elab/BuiltinNotation.c @@ -29,7 +29,6 @@ lean_object* l_Lean_Elab_Term_elabAdd___boxed(lean_object*, lean_object*, lean_o lean_object* l_Lean_Elab_Term_elabShow___lambda__1___closed__1; lean_object* l_Lean_Elab_Term_elabseqLeft___closed__1; lean_object* l_Lean_Elab_Term_elabBind___boxed(lean_object*, lean_object*, lean_object*, lean_object*); -extern lean_object* l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__38; lean_object* l___regBuiltinTermElab_Lean_Elab_Term_elabShow___closed__1; lean_object* l_Lean_extractMacroScopes(lean_object*); lean_object* l_Lean_Elab_Term_elabAdd___closed__1; @@ -105,7 +104,7 @@ lean_object* l_Lean_Elab_Term_elabIf___lambda__1___closed__6; lean_object* l_Lean_Elab_Term_elabHave___lambda__1(lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_Parser_Term_fromTerm___elambda__1___closed__2; extern lean_object* l_Lean_Parser_Term_mul___elambda__1___closed__1; -extern lean_object* l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__66; +extern lean_object* l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__56; lean_object* l___regBuiltinTermElab_Lean_Elab_Term_elabEquiv___closed__1; lean_object* l___regBuiltinTermElab_Lean_Elab_Term_elabAdd(lean_object*); extern lean_object* l_Lean_Parser_Term_andM___elambda__1___closed__1; @@ -129,6 +128,7 @@ extern lean_object* l_Lean_Parser_Term_seqRight___elambda__1___closed__2; lean_object* l___regBuiltinTermElab_Lean_Elab_Term_elabAndThen(lean_object*); lean_object* l_Lean_Elab_Term_elabSubtype___lambda__1___boxed(lean_object*, lean_object*, lean_object*); lean_object* l___regBuiltinTermElab_Lean_Elab_Term_elabCons___closed__1; +extern lean_object* l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__64; lean_object* lean_array_push(lean_object*, lean_object*); lean_object* l_Lean_Elab_Term_elabSubtype___lambda__1___closed__1; lean_object* lean_array_get_size(lean_object*); @@ -217,6 +217,7 @@ lean_object* l_Lean_Elab_Term_elabseq___closed__2; extern lean_object* l_Lean_Parser_Term_band___elambda__1___closed__2; lean_object* l___regBuiltinTermElab_Lean_Elab_Term_elabseqRight___closed__3; lean_object* l___regBuiltinTermElab_Lean_Elab_Term_elabHEq___closed__1; +extern lean_object* l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__36; extern lean_object* l_Lean_Parser_Term_id___elambda__1___closed__2; lean_object* l___regBuiltinTermElab_Lean_Elab_Term_elabSub(lean_object*); lean_object* l___regBuiltinTermElab_Lean_Elab_Term_elabGT___closed__2; @@ -278,7 +279,6 @@ lean_object* l___regBuiltinTermElab_Lean_Elab_Term_elabDiv___closed__3; lean_object* l___regBuiltinTermElab_Lean_Elab_Term_elabBNe___closed__3; lean_object* l_Lean_Elab_Term_elabProd___boxed(lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_Parser_Term_mod___elambda__1___closed__1; -extern lean_object* l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__35; lean_object* l_Lean_Elab_Term_elabMapRev___closed__1; lean_object* l___regBuiltinTermElab_Lean_Elab_Term_elabOrM___closed__2; lean_object* l_Lean_Elab_Term_elabTParserMacro___lambda__1___closed__7; @@ -322,6 +322,7 @@ extern lean_object* l_Lean_Parser_Term_iff___elambda__1___closed__2; lean_object* l___regBuiltinTermElab_Lean_Elab_Term_elabAppend___closed__3; lean_object* l_Lean_Elab_Term_elabLE(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Term_elabDollar___closed__1; +extern lean_object* l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__31; lean_object* l_Lean_Elab_Term_elabOr___closed__1; lean_object* l_Lean_Elab_Term_elabTParserMacro___lambda__1___closed__3; lean_object* l_Lean_Elab_Term_elabMap___closed__3; @@ -459,7 +460,6 @@ extern lean_object* l___private_Init_Util_1__mkPanicMessage___closed__2; lean_object* l_Lean_Elab_Term_elabIf___lambda__1___closed__1; extern lean_object* l_Lean_Parser_Term_append___elambda__1___closed__2; lean_object* l___regBuiltinTermElab_Lean_Elab_Term_elabMul(lean_object*); -extern lean_object* l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__32; lean_object* l_Lean_Elab_Term_elabGE___closed__1; lean_object* l_Lean_Elab_Term_elabParserMacro___lambda__1___closed__10; lean_object* l___regBuiltinTermElab_Lean_Elab_Term_elabBNe___closed__2; @@ -542,13 +542,13 @@ lean_object* l_Lean_Elab_Term_elabIf___lambda__1___closed__2; lean_object* l_Lean_Elab_Term_elabCons(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Term_elabMod(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___regBuiltinTermElab_Lean_Elab_Term_elabAnoymousCtor___closed__3; +extern lean_object* l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__30; lean_object* l___regBuiltinTermElab_Lean_Elab_Term_elabOr___closed__1; extern lean_object* l_Lean_Parser_Term_map___elambda__1___closed__2; lean_object* l_Lean_Elab_Term_elabAnoymousCtor___closed__10; lean_object* l_Lean_Elab_Term_elabSubtype___lambda__1___closed__5; lean_object* l___regBuiltinTermElab_Lean_Elab_Term_ElabFComp___closed__2; extern lean_object* l_Lean_Parser_Term_orelse___elambda__1___closed__2; -extern lean_object* l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__58; lean_object* l_Lean_Elab_Term_elabIf___lambda__1___closed__9; lean_object* l_Lean_Elab_Term_elabBEq___closed__2; lean_object* l___regBuiltinTermElab_Lean_Elab_Term_elabLT___closed__2; @@ -1392,9 +1392,9 @@ x_117 = lean_array_push(x_116, x_98); x_118 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_118, 0, x_69); lean_ctor_set(x_118, 1, x_117); -x_119 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__58; +x_119 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__56; x_120 = lean_array_push(x_119, x_118); -x_121 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__66; +x_121 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__64; x_122 = lean_array_push(x_120, x_121); x_123 = l_Lean_Parser_Term_paren___elambda__1___closed__1; x_124 = lean_alloc_ctor(1, 2, 0); @@ -1478,9 +1478,9 @@ x_167 = lean_array_push(x_166, x_148); x_168 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_168, 0, x_69); lean_ctor_set(x_168, 1, x_167); -x_169 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__58; +x_169 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__56; x_170 = lean_array_push(x_169, x_168); -x_171 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__66; +x_171 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__64; x_172 = lean_array_push(x_170, x_171); x_173 = l_Lean_Parser_Term_paren___elambda__1___closed__1; x_174 = lean_alloc_ctor(1, 2, 0); @@ -1830,9 +1830,9 @@ x_36 = l_Lean_nullKind___closed__2; x_37 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_37, 0, x_36); lean_ctor_set(x_37, 1, x_35); -x_38 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__58; +x_38 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__56; x_39 = lean_array_push(x_38, x_37); -x_40 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__66; +x_40 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__64; x_41 = lean_array_push(x_39, x_40); x_42 = l_Lean_Parser_Term_paren___elambda__1___closed__1; x_43 = lean_alloc_ctor(1, 2, 0); @@ -1903,9 +1903,9 @@ x_80 = l_Lean_nullKind___closed__2; x_81 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_81, 0, x_80); lean_ctor_set(x_81, 1, x_79); -x_82 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__58; +x_82 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__56; x_83 = lean_array_push(x_82, x_81); -x_84 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__66; +x_84 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__64; x_85 = lean_array_push(x_83, x_84); x_86 = l_Lean_Parser_Term_paren___elambda__1___closed__1; x_87 = lean_alloc_ctor(1, 2, 0); @@ -2063,9 +2063,9 @@ x_149 = lean_array_push(x_142, x_148); x_150 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_150, 0, x_108); lean_ctor_set(x_150, 1, x_149); -x_151 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__58; +x_151 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__56; x_152 = lean_array_push(x_151, x_150); -x_153 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__66; +x_153 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__64; x_154 = lean_array_push(x_152, x_153); x_155 = l_Lean_Parser_Term_paren___elambda__1___closed__1; x_156 = lean_alloc_ctor(1, 2, 0); @@ -2144,9 +2144,9 @@ x_197 = lean_array_push(x_190, x_196); x_198 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_198, 0, x_108); lean_ctor_set(x_198, 1, x_197); -x_199 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__58; +x_199 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__56; x_200 = lean_array_push(x_199, x_198); -x_201 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__66; +x_201 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__64; x_202 = lean_array_push(x_200, x_201); x_203 = l_Lean_Parser_Term_paren___elambda__1___closed__1; x_204 = lean_alloc_ctor(1, 2, 0); @@ -2842,9 +2842,9 @@ x_29 = lean_array_push(x_21, x_28); x_30 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_30, 0, x_27); lean_ctor_set(x_30, 1, x_29); -x_31 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__58; +x_31 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__56; x_32 = lean_array_push(x_31, x_30); -x_33 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__66; +x_33 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__64; x_34 = lean_array_push(x_32, x_33); x_35 = l_Lean_Parser_Term_paren___elambda__1___closed__1; x_36 = lean_alloc_ctor(1, 2, 0); @@ -2907,9 +2907,9 @@ x_67 = lean_array_push(x_59, x_66); x_68 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_68, 0, x_65); lean_ctor_set(x_68, 1, x_67); -x_69 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__58; +x_69 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__56; x_70 = lean_array_push(x_69, x_68); -x_71 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__66; +x_71 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__64; x_72 = lean_array_push(x_70, x_71); x_73 = l_Lean_Parser_Term_paren___elambda__1___closed__1; x_74 = lean_alloc_ctor(1, 2, 0); @@ -3173,9 +3173,9 @@ x_37 = lean_array_push(x_29, x_36); x_38 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_38, 0, x_35); lean_ctor_set(x_38, 1, x_37); -x_39 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__58; +x_39 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__56; x_40 = lean_array_push(x_39, x_38); -x_41 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__66; +x_41 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__64; x_42 = lean_array_push(x_40, x_41); x_43 = l_Lean_Parser_Term_paren___elambda__1___closed__1; x_44 = lean_alloc_ctor(1, 2, 0); @@ -3237,9 +3237,9 @@ x_75 = lean_array_push(x_67, x_74); x_76 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_76, 0, x_73); lean_ctor_set(x_76, 1, x_75); -x_77 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__58; +x_77 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__56; x_78 = lean_array_push(x_77, x_76); -x_79 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__66; +x_79 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__64; x_80 = lean_array_push(x_78, x_79); x_81 = l_Lean_Parser_Term_paren___elambda__1___closed__1; x_82 = lean_alloc_ctor(1, 2, 0); @@ -3344,9 +3344,9 @@ x_129 = lean_array_push(x_121, x_128); x_130 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_130, 0, x_127); lean_ctor_set(x_130, 1, x_129); -x_131 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__58; +x_131 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__56; x_132 = lean_array_push(x_131, x_130); -x_133 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__66; +x_133 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__64; x_134 = lean_array_push(x_132, x_133); x_135 = l_Lean_Parser_Term_paren___elambda__1___closed__1; x_136 = lean_alloc_ctor(1, 2, 0); @@ -3408,9 +3408,9 @@ x_167 = lean_array_push(x_159, x_166); x_168 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_168, 0, x_165); lean_ctor_set(x_168, 1, x_167); -x_169 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__58; +x_169 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__56; x_170 = lean_array_push(x_169, x_168); -x_171 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__66; +x_171 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__64; x_172 = lean_array_push(x_170, x_171); x_173 = l_Lean_Parser_Term_paren___elambda__1___closed__1; x_174 = lean_alloc_ctor(1, 2, 0); @@ -3556,9 +3556,9 @@ x_236 = lean_array_push(x_229, x_235); x_237 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_237, 0, x_204); lean_ctor_set(x_237, 1, x_236); -x_238 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__58; +x_238 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__56; x_239 = lean_array_push(x_238, x_237); -x_240 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__66; +x_240 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__64; x_241 = lean_array_push(x_239, x_240); x_242 = l_Lean_Parser_Term_paren___elambda__1___closed__1; x_243 = lean_alloc_ctor(1, 2, 0); @@ -3619,9 +3619,9 @@ x_273 = lean_array_push(x_266, x_272); x_274 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_274, 0, x_204); lean_ctor_set(x_274, 1, x_273); -x_275 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__58; +x_275 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__56; x_276 = lean_array_push(x_275, x_274); -x_277 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__66; +x_277 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__64; x_278 = lean_array_push(x_276, x_277); x_279 = l_Lean_Parser_Term_paren___elambda__1___closed__1; x_280 = lean_alloc_ctor(1, 2, 0); @@ -3726,9 +3726,9 @@ x_327 = lean_array_push(x_320, x_326); x_328 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_328, 0, x_204); lean_ctor_set(x_328, 1, x_327); -x_329 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__58; +x_329 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__56; x_330 = lean_array_push(x_329, x_328); -x_331 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__66; +x_331 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__64; x_332 = lean_array_push(x_330, x_331); x_333 = l_Lean_Parser_Term_paren___elambda__1___closed__1; x_334 = lean_alloc_ctor(1, 2, 0); @@ -3789,9 +3789,9 @@ x_364 = lean_array_push(x_357, x_363); x_365 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_365, 0, x_204); lean_ctor_set(x_365, 1, x_364); -x_366 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__58; +x_366 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__56; x_367 = lean_array_push(x_366, x_365); -x_368 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__66; +x_368 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__64; x_369 = lean_array_push(x_367, x_368); x_370 = l_Lean_Parser_Term_paren___elambda__1___closed__1; x_371 = lean_alloc_ctor(1, 2, 0); @@ -4428,7 +4428,7 @@ lean_object* _init_l_Lean_Elab_Term_elabParserMacro___lambda__1___closed__33() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__35; +x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__33; x_2 = l_Lean_Elab_Term_elabParserMacro___lambda__1___closed__29; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -4633,10 +4633,10 @@ x_72 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_72, 0, x_44); lean_ctor_set(x_72, 1, x_71); x_73 = lean_array_push(x_36, x_72); -x_74 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__33; +x_74 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__31; x_75 = lean_name_mk_numeral(x_74, x_52); -x_76 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__32; -x_77 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__38; +x_76 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__30; +x_77 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__36; x_78 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_78, 0, x_21); lean_ctor_set(x_78, 1, x_76); @@ -4657,9 +4657,9 @@ x_86 = l_Lean_nullKind___closed__2; x_87 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_87, 0, x_86); lean_ctor_set(x_87, 1, x_85); -x_88 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__58; +x_88 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__56; x_89 = lean_array_push(x_88, x_87); -x_90 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__66; +x_90 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__64; x_91 = lean_array_push(x_89, x_90); x_92 = l_Lean_Parser_Term_paren___elambda__1___closed__1; x_93 = lean_alloc_ctor(1, 2, 0); @@ -4722,10 +4722,10 @@ x_120 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_120, 0, x_44); lean_ctor_set(x_120, 1, x_119); x_121 = lean_array_push(x_36, x_120); -x_122 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__33; +x_122 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__31; x_123 = lean_name_mk_numeral(x_122, x_99); -x_124 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__32; -x_125 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__38; +x_124 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__30; +x_125 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__36; x_126 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_126, 0, x_21); lean_ctor_set(x_126, 1, x_124); @@ -4746,9 +4746,9 @@ x_134 = l_Lean_nullKind___closed__2; x_135 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_135, 0, x_134); lean_ctor_set(x_135, 1, x_133); -x_136 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__58; +x_136 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__56; x_137 = lean_array_push(x_136, x_135); -x_138 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__66; +x_138 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__64; x_139 = lean_array_push(x_137, x_138); x_140 = l_Lean_Parser_Term_paren___elambda__1___closed__1; x_141 = lean_alloc_ctor(1, 2, 0); @@ -4841,9 +4841,9 @@ x_185 = l_Lean_nullKind___closed__2; x_186 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_186, 0, x_185); lean_ctor_set(x_186, 1, x_184); -x_187 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__58; +x_187 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__56; x_188 = lean_array_push(x_187, x_186); -x_189 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__66; +x_189 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__64; x_190 = lean_array_push(x_188, x_189); x_191 = l_Lean_Parser_Term_paren___elambda__1___closed__1; x_192 = lean_alloc_ctor(1, 2, 0); @@ -4945,9 +4945,9 @@ x_242 = l_Lean_nullKind___closed__2; x_243 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_243, 0, x_242); lean_ctor_set(x_243, 1, x_241); -x_244 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__58; +x_244 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__56; x_245 = lean_array_push(x_244, x_243); -x_246 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__66; +x_246 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__64; x_247 = lean_array_push(x_245, x_246); x_248 = l_Lean_Parser_Term_paren___elambda__1___closed__1; x_249 = lean_alloc_ctor(1, 2, 0); diff --git a/stage0/stdlib/Init/Lean/Elab/Quotation.c b/stage0/stdlib/Init/Lean/Elab/Quotation.c index 5bb8976ee1..01eebe774d 100644 --- a/stage0/stdlib/Init/Lean/Elab/Quotation.c +++ b/stage0/stdlib/Init/Lean/Elab/Quotation.c @@ -120,7 +120,6 @@ lean_object* l_Lean_Elab_Term_stxQuot_expand___closed__12; lean_object* l_Lean_Parser_mkParserState(lean_object*); lean_object* l_List_append___rarg(lean_object*, lean_object*); lean_object* l___private_Init_Lean_Elab_Quotation_7__getHeadInfo___lambda__1___closed__3; -lean_object* l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__66; lean_object* l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__56; lean_object* l___private_Init_Lean_Elab_Quotation_7__getHeadInfo___lambda__2___closed__1; uint8_t l_Lean_Elab_Term_HeadInfo_generalizes(lean_object*, lean_object*); @@ -213,7 +212,6 @@ lean_object* l___private_Init_Lean_Elab_Quotation_7__getHeadInfo___lambda__4(lea lean_object* l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__45; lean_object* l___private_Init_Lean_Elab_Quotation_7__getHeadInfo___elambda__3___closed__6; lean_object* l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__39; -lean_object* l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__65; lean_object* l___private_Init_Lean_Elab_Quotation_3__quoteList___main___at___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___spec__3(lean_object*); lean_object* l_Lean_Elab_Term_oldExpandStxQuot___closed__1; lean_object* l_List_head_x21___at___private_Init_Lean_Elab_Quotation_9__compileStxMatch___main___spec__2(lean_object*); @@ -289,6 +287,7 @@ extern lean_object* l___private_Init_Lean_Elab_Term_14__resumePostponed___lambda lean_object* l___private_Init_Lean_Elab_Quotation_14__toPreterm___main___closed__6; lean_object* l_Lean_Elab_Term_oldGetPatternVars___closed__1; lean_object* l___private_Init_Lean_Elab_Quotation_9__compileStxMatch___main(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +extern lean_object* l_Lean_Parser_Syntax_paren___elambda__1___closed__1; lean_object* l_Lean_Elab_Term_stxQuot_expand___closed__9; lean_object* l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__52; lean_object* l_List_filterAux___main___at___private_Init_Lean_Elab_Quotation_9__compileStxMatch___main___spec__6(lean_object*, lean_object*, lean_object*); @@ -514,6 +513,7 @@ lean_object* lean_get_namespace(lean_object*); uint8_t l_Lean_Syntax_isNone(lean_object*); lean_object* l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__24; extern lean_object* l_Lean_TraceState_Inhabited___closed__1; +extern lean_object* l_Lean_Parser_Syntax_atom___elambda__1___closed__1; lean_object* l_Lean_Elab_resolveGlobalName(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_List_head_x21___at___private_Init_Lean_Elab_Quotation_7__getHeadInfo___spec__1___boxed(lean_object*); lean_object* l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__15; @@ -3062,17 +3062,19 @@ return x_4; lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__13() { _start: { -lean_object* x_1; -x_1 = lean_mk_string("Syntax"); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Parser_Syntax_paren___elambda__1___closed__1; +x_3 = lean_name_mk_string(x_1, x_2); +return x_3; } } lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__14() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__13; +x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__13; +x_2 = l_Lean_Meta_DiscrTree_Trie_format___main___rarg___closed__1; x_3 = lean_name_mk_string(x_1, x_2); return x_3; } @@ -3081,8 +3083,8 @@ lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__14; -x_2 = l_Lean_Meta_DiscrTree_Trie_format___main___rarg___closed__1; +x_1 = l_Lean_nameToExprAux___main___closed__4; +x_2 = l_Lean_Parser_Syntax_paren___elambda__1___closed__1; x_3 = lean_name_mk_string(x_1, x_2); return x_3; } @@ -3091,8 +3093,8 @@ lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_nameToExprAux___main___closed__4; -x_2 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__13; +x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__15; +x_2 = l_Lean_Meta_DiscrTree_Trie_format___main___rarg___closed__1; x_3 = lean_name_mk_string(x_1, x_2); return x_3; } @@ -3101,9 +3103,11 @@ lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__16; -x_2 = l_Lean_Meta_DiscrTree_Trie_format___main___rarg___closed__1; -x_3 = lean_name_mk_string(x_1, x_2); +x_1 = lean_box(0); +x_2 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__16; +x_3 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_3, 0, x_2); +lean_ctor_set(x_3, 1, x_1); return x_3; } } @@ -3113,7 +3117,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); x_2 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__17; -x_3 = lean_alloc_ctor(0, 2, 0); +x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_2); lean_ctor_set(x_3, 1, x_1); return x_3; @@ -3122,21 +3126,19 @@ return x_3; lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__19() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__18; -x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_2); -lean_ctor_set(x_3, 1, x_1); -return x_3; +lean_object* x_1; +x_1 = lean_mk_string("unexpected antiquotation splice"); +return x_1; } } lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__20() { _start: { -lean_object* x_1; -x_1 = lean_mk_string("unexpected antiquotation splice"); -return x_1; +lean_object* x_1; lean_object* x_2; +x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__19; +x_2 = lean_alloc_ctor(2, 1, 0); +lean_ctor_set(x_2, 0, x_1); +return x_2; } } lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__21() { @@ -3144,7 +3146,7 @@ _start: { lean_object* x_1; lean_object* x_2; x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__20; -x_2 = lean_alloc_ctor(2, 1, 0); +x_2 = lean_alloc_ctor(0, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } @@ -3152,37 +3154,27 @@ return x_2; lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__22() { _start: { -lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__21; -x_2 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_2, 0, x_1); -return x_2; -} -} -lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__23() { -_start: -{ lean_object* x_1; x_1 = lean_mk_string("Syntax.atom"); return x_1; } } -lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__24() { +lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__23() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__23; +x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__22; x_2 = lean_string_utf8_byte_size(x_1); return x_2; } } -lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__25() { +lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__24() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__23; +x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__22; x_2 = lean_unsigned_to_nat(0u); -x_3 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__24; +x_3 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__23; x_4 = lean_alloc_ctor(0, 3, 0); lean_ctor_set(x_4, 0, x_1); lean_ctor_set(x_4, 1, x_2); @@ -3190,21 +3182,35 @@ lean_ctor_set(x_4, 2, x_3); return x_4; } } +lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__25() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__13; +x_2 = l_Lean_Parser_Syntax_atom___elambda__1___closed__1; +x_3 = lean_name_mk_string(x_1, x_2); +return x_3; +} +} lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__26() { _start: { -lean_object* x_1; -x_1 = lean_mk_string("atom"); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__15; +x_2 = l_Lean_Parser_Syntax_atom___elambda__1___closed__1; +x_3 = lean_name_mk_string(x_1, x_2); +return x_3; } } lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__27() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__14; +x_1 = lean_box(0); x_2 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__26; -x_3 = lean_name_mk_string(x_1, x_2); +x_3 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_3, 0, x_2); +lean_ctor_set(x_3, 1, x_1); return x_3; } } @@ -3212,37 +3218,15 @@ lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__16; -x_2 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__26; -x_3 = lean_name_mk_string(x_1, x_2); -return x_3; -} -} -lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__29() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__28; -x_3 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_3, 0, x_2); -lean_ctor_set(x_3, 1, x_1); -return x_3; -} -} -lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__30() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__29; +x_2 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__27; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_2); lean_ctor_set(x_3, 1, x_1); return x_3; } } -lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__31() { +lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__29() { _start: { lean_object* x_1; lean_object* x_2; @@ -3251,13 +3235,13 @@ x_2 = lean_string_utf8_byte_size(x_1); return x_2; } } -lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__32() { +lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__30() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Option_HasRepr___rarg___closed__1; x_2 = lean_unsigned_to_nat(0u); -x_3 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__31; +x_3 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__29; x_4 = lean_alloc_ctor(0, 3, 0); lean_ctor_set(x_4, 0, x_1); lean_ctor_set(x_4, 1, x_2); @@ -3265,7 +3249,7 @@ lean_ctor_set(x_4, 2, x_3); return x_4; } } -lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__33() { +lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__31() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; @@ -3275,7 +3259,7 @@ x_3 = lean_name_mk_string(x_1, x_2); return x_3; } } -lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__34() { +lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__32() { _start: { lean_object* x_1; @@ -3283,13 +3267,35 @@ x_1 = lean_mk_string("Option"); return x_1; } } +lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__33() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__32; +x_3 = lean_name_mk_string(x_1, x_2); +return x_3; +} +} +lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__34() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__33; +x_2 = l_Option_HasRepr___rarg___closed__1; +x_3 = lean_name_mk_string(x_1, x_2); +return x_3; +} +} lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__35() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); x_2 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__34; -x_3 = lean_name_mk_string(x_1, x_2); +x_3 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_3, 0, x_2); +lean_ctor_set(x_3, 1, x_1); return x_3; } } @@ -3297,37 +3303,15 @@ lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__35; -x_2 = l_Option_HasRepr___rarg___closed__1; -x_3 = lean_name_mk_string(x_1, x_2); -return x_3; -} -} -lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__37() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__36; -x_3 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_3, 0, x_2); -lean_ctor_set(x_3, 1, x_1); -return x_3; -} -} -lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__38() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__37; +x_2 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__35; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_2); lean_ctor_set(x_3, 1, x_1); return x_3; } } -lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__39() { +lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__37() { _start: { lean_object* x_1; @@ -3335,22 +3319,22 @@ x_1 = lean_mk_string("addMacroScope"); return x_1; } } -lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__40() { +lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__38() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__39; +x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__37; x_2 = lean_string_utf8_byte_size(x_1); return x_2; } } -lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__41() { +lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__39() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__39; +x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__37; x_2 = lean_unsigned_to_nat(0u); -x_3 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__40; +x_3 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__38; x_4 = lean_alloc_ctor(0, 3, 0); lean_ctor_set(x_4, 0, x_1); lean_ctor_set(x_4, 1, x_2); @@ -3358,13 +3342,35 @@ lean_ctor_set(x_4, 2, x_3); return x_4; } } +lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__40() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__37; +x_3 = lean_name_mk_string(x_1, x_2); +return x_3; +} +} +lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__41() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_nameToExprAux___main___closed__4; +x_2 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__37; +x_3 = lean_name_mk_string(x_1, x_2); +return x_3; +} +} lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__42() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__39; -x_3 = lean_name_mk_string(x_1, x_2); +x_2 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__41; +x_3 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_3, 0, x_2); +lean_ctor_set(x_3, 1, x_1); return x_3; } } @@ -3372,37 +3378,15 @@ lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_nameToExprAux___main___closed__4; -x_2 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__39; -x_3 = lean_name_mk_string(x_1, x_2); -return x_3; -} -} -lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__44() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__43; -x_3 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_3, 0, x_2); -lean_ctor_set(x_3, 1, x_1); -return x_3; -} -} -lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__45() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__44; +x_2 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__42; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_2); lean_ctor_set(x_3, 1, x_1); return x_3; } } -lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__46() { +lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__44() { _start: { lean_object* x_1; @@ -3410,22 +3394,22 @@ x_1 = lean_mk_string("scp"); return x_1; } } -lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__47() { +lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__45() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__46; +x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__44; x_2 = lean_string_utf8_byte_size(x_1); return x_2; } } -lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__48() { +lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__46() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__46; +x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__44; x_2 = lean_unsigned_to_nat(0u); -x_3 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__47; +x_3 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__45; x_4 = lean_alloc_ctor(0, 3, 0); lean_ctor_set(x_4, 0, x_1); lean_ctor_set(x_4, 1, x_2); @@ -3433,17 +3417,17 @@ lean_ctor_set(x_4, 2, x_3); return x_4; } } -lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__49() { +lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__47() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__46; +x_2 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__44; x_3 = lean_name_mk_string(x_1, x_2); return x_3; } } -lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__50() { +lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__48() { _start: { lean_object* x_1; @@ -3451,22 +3435,22 @@ x_1 = lean_mk_string("Syntax.ident"); return x_1; } } -lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__51() { +lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__49() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__50; +x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__48; x_2 = lean_string_utf8_byte_size(x_1); return x_2; } } -lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__52() { +lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__50() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__50; +x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__48; x_2 = lean_unsigned_to_nat(0u); -x_3 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__51; +x_3 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__49; x_4 = lean_alloc_ctor(0, 3, 0); lean_ctor_set(x_4, 0, x_1); lean_ctor_set(x_4, 1, x_2); @@ -3474,13 +3458,35 @@ lean_ctor_set(x_4, 2, x_3); return x_4; } } +lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__51() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__13; +x_2 = l_Lean_Syntax_getKind___closed__3; +x_3 = lean_name_mk_string(x_1, x_2); +return x_3; +} +} +lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__52() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__15; +x_2 = l_Lean_Syntax_getKind___closed__3; +x_3 = lean_name_mk_string(x_1, x_2); +return x_3; +} +} lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__53() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__14; -x_2 = l_Lean_Syntax_getKind___closed__3; -x_3 = lean_name_mk_string(x_1, x_2); +x_1 = lean_box(0); +x_2 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__52; +x_3 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_3, 0, x_2); +lean_ctor_set(x_3, 1, x_1); return x_3; } } @@ -3488,37 +3494,15 @@ lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__16; -x_2 = l_Lean_Syntax_getKind___closed__3; -x_3 = lean_name_mk_string(x_1, x_2); -return x_3; -} -} -lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__55() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__54; -x_3 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_3, 0, x_2); -lean_ctor_set(x_3, 1, x_1); -return x_3; -} -} -lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__56() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__55; +x_2 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__53; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_2); lean_ctor_set(x_3, 1, x_1); return x_3; } } -lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__57() { +lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__55() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; @@ -3530,17 +3514,17 @@ lean_ctor_set(x_3, 1, x_2); return x_3; } } -lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__58() { +lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__56() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Array_empty___closed__1; -x_2 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__57; +x_2 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__55; x_3 = lean_array_push(x_1, x_2); return x_3; } } -lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__59() { +lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__57() { _start: { lean_object* x_1; @@ -3548,22 +3532,22 @@ x_1 = lean_mk_string("String.toSubstring"); return x_1; } } -lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__60() { +lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__58() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__59; +x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__57; x_2 = lean_string_utf8_byte_size(x_1); return x_2; } } -lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__61() { +lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__59() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__59; +x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__57; x_2 = lean_unsigned_to_nat(0u); -x_3 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__60; +x_3 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__58; x_4 = lean_alloc_ctor(0, 3, 0); lean_ctor_set(x_4, 0, x_1); lean_ctor_set(x_4, 1, x_2); @@ -3571,7 +3555,7 @@ lean_ctor_set(x_4, 2, x_3); return x_4; } } -lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__62() { +lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__60() { _start: { lean_object* x_1; @@ -3579,41 +3563,41 @@ x_1 = lean_mk_string("toSubstring"); return x_1; } } -lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__63() { +lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__61() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Lean_Literal_type___closed__5; -x_2 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__62; +x_2 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__60; x_3 = lean_name_mk_string(x_1, x_2); return x_3; } } -lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__64() { +lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__62() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__63; +x_2 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__61; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_2); lean_ctor_set(x_3, 1, x_1); return x_3; } } -lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__65() { +lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__63() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__64; +x_2 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__62; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_2); lean_ctor_set(x_3, 1, x_1); return x_3; } } -lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__66() { +lean_object* _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__64() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; @@ -3701,10 +3685,10 @@ if (x_35 == 0) { lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; x_36 = lean_ctor_get(x_34, 0); -x_37 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__15; +x_37 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__14; x_38 = lean_name_mk_numeral(x_37, x_36); x_39 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__12; -x_40 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__19; +x_40 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__18; x_41 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_41, 0, x_16); lean_ctor_set(x_41, 1, x_39); @@ -3738,10 +3722,10 @@ x_54 = lean_ctor_get(x_34, 1); lean_inc(x_54); lean_inc(x_53); lean_dec(x_34); -x_55 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__15; +x_55 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__14; x_56 = lean_name_mk_numeral(x_55, x_53); x_57 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__12; -x_58 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__19; +x_58 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__18; x_59 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_59, 0, x_16); lean_ctor_set(x_59, 1, x_57); @@ -3852,10 +3836,10 @@ if (lean_is_exclusive(x_98)) { lean_dec_ref(x_98); x_101 = lean_box(0); } -x_102 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__15; +x_102 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__14; x_103 = lean_name_mk_numeral(x_102, x_99); x_104 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__12; -x_105 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__19; +x_105 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__18; x_106 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_106, 0, x_79); lean_ctor_set(x_106, 1, x_104); @@ -3936,7 +3920,7 @@ return x_126; else { lean_object* x_127; lean_object* x_128; -x_127 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__22; +x_127 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__21; x_128 = l_Lean_Elab_Term_throwError___rarg(x_1, x_127, x_2, x_3); return x_128; } @@ -3960,11 +3944,11 @@ if (x_133 == 0) lean_object* x_134; lean_object* x_135; lean_object* x_136; lean_object* x_137; lean_object* x_138; lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_object* x_142; lean_object* x_143; lean_object* x_144; lean_object* x_145; lean_object* x_146; lean_object* x_147; lean_object* x_148; lean_object* x_149; lean_object* x_150; lean_object* x_151; lean_object* x_152; lean_object* x_153; lean_object* x_154; lean_object* x_155; lean_object* x_156; lean_object* x_157; lean_object* x_158; lean_object* x_159; lean_object* x_160; lean_object* x_161; lean_object* x_162; lean_object* x_163; lean_object* x_164; lean_object* x_165; x_134 = lean_ctor_get(x_132, 0); x_135 = lean_box(0); -x_136 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__27; +x_136 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__25; lean_inc(x_134); x_137 = lean_name_mk_numeral(x_136, x_134); -x_138 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__25; -x_139 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__30; +x_138 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__24; +x_139 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__28; x_140 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_140, 0, x_135); lean_ctor_set(x_140, 1, x_138); @@ -3979,10 +3963,10 @@ lean_ctor_set_tag(x_1, 1); lean_ctor_set(x_1, 1, x_144); lean_ctor_set(x_1, 0, x_145); x_146 = lean_array_push(x_141, x_1); -x_147 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__33; +x_147 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__31; x_148 = lean_name_mk_numeral(x_147, x_134); -x_149 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__32; -x_150 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__38; +x_149 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__30; +x_150 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__36; x_151 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_151, 0, x_135); lean_ctor_set(x_151, 1, x_149); @@ -4022,11 +4006,11 @@ lean_inc(x_167); lean_inc(x_166); lean_dec(x_132); x_168 = lean_box(0); -x_169 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__27; +x_169 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__25; lean_inc(x_166); x_170 = lean_name_mk_numeral(x_169, x_166); -x_171 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__25; -x_172 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__30; +x_171 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__24; +x_172 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__28; x_173 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_173, 0, x_168); lean_ctor_set(x_173, 1, x_171); @@ -4041,10 +4025,10 @@ lean_ctor_set_tag(x_1, 1); lean_ctor_set(x_1, 1, x_177); lean_ctor_set(x_1, 0, x_178); x_179 = lean_array_push(x_174, x_1); -x_180 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__33; +x_180 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__31; x_181 = lean_name_mk_numeral(x_180, x_166); -x_182 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__32; -x_183 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__38; +x_182 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__30; +x_183 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__36; x_184 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_184, 0, x_168); lean_ctor_set(x_184, 1, x_182); @@ -4099,11 +4083,11 @@ if (lean_is_exclusive(x_201)) { x_204 = lean_box(0); } x_205 = lean_box(0); -x_206 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__27; +x_206 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__25; lean_inc(x_202); x_207 = lean_name_mk_numeral(x_206, x_202); -x_208 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__25; -x_209 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__30; +x_208 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__24; +x_209 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__28; x_210 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_210, 0, x_205); lean_ctor_set(x_210, 1, x_208); @@ -4118,10 +4102,10 @@ x_216 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_216, 0, x_215); lean_ctor_set(x_216, 1, x_214); x_217 = lean_array_push(x_211, x_216); -x_218 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__33; +x_218 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__31; x_219 = lean_name_mk_numeral(x_218, x_202); -x_220 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__32; -x_221 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__38; +x_220 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__30; +x_221 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__36; x_222 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_222, 0, x_205); lean_ctor_set(x_222, 1, x_220); @@ -4201,12 +4185,12 @@ x_257 = lean_ctor_get(x_255, 1); lean_inc(x_257); lean_dec(x_255); x_258 = lean_box(0); -x_259 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__42; +x_259 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__40; lean_inc(x_256); x_260 = lean_name_mk_numeral(x_259, x_256); x_261 = lean_box(0); -x_262 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__41; -x_263 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__45; +x_262 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__39; +x_263 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__43; lean_ctor_set(x_1, 3, x_263); lean_ctor_set(x_1, 2, x_260); lean_ctor_set(x_1, 1, x_262); @@ -4226,9 +4210,9 @@ x_273 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_273, 0, x_272); lean_ctor_set(x_273, 1, x_271); x_274 = lean_array_push(x_264, x_273); -x_275 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__49; +x_275 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__47; x_276 = lean_name_mk_numeral(x_275, x_256); -x_277 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__48; +x_277 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__46; x_278 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_278, 0, x_258); lean_ctor_set(x_278, 1, x_277); @@ -4251,11 +4235,11 @@ if (x_286 == 0) { lean_object* x_287; lean_object* x_288; lean_object* x_289; lean_object* x_290; lean_object* x_291; lean_object* x_292; lean_object* x_293; lean_object* x_294; lean_object* x_295; lean_object* x_296; lean_object* x_297; lean_object* x_298; lean_object* x_299; lean_object* x_300; lean_object* x_301; lean_object* x_302; lean_object* x_303; lean_object* x_304; lean_object* x_305; lean_object* x_306; lean_object* x_307; lean_object* x_308; lean_object* x_309; lean_object* x_310; lean_object* x_311; lean_object* x_312; lean_object* x_313; lean_object* x_314; lean_object* x_315; lean_object* x_316; lean_object* x_317; lean_object* x_318; lean_object* x_319; lean_object* x_320; lean_object* x_321; lean_object* x_322; lean_object* x_323; lean_object* x_324; lean_object* x_325; lean_object* x_326; lean_object* x_327; lean_object* x_328; lean_object* x_329; lean_object* x_330; lean_object* x_331; lean_object* x_332; lean_object* x_333; lean_object* x_334; lean_object* x_335; lean_object* x_336; lean_object* x_337; lean_object* x_338; lean_object* x_339; lean_object* x_340; lean_object* x_341; lean_object* x_342; lean_object* x_343; lean_object* x_344; lean_object* x_345; x_287 = lean_ctor_get(x_285, 0); -x_288 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__53; +x_288 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__51; lean_inc(x_287); x_289 = lean_name_mk_numeral(x_288, x_287); -x_290 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__52; -x_291 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__56; +x_290 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__50; +x_291 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__54; x_292 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_292, 0, x_258); lean_ctor_set(x_292, 1, x_290); @@ -4267,11 +4251,11 @@ x_295 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_295, 0, x_268); lean_ctor_set(x_295, 1, x_294); x_296 = lean_array_push(x_264, x_295); -x_297 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__33; +x_297 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__31; lean_inc(x_287); x_298 = lean_name_mk_numeral(x_297, x_287); -x_299 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__32; -x_300 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__38; +x_299 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__30; +x_300 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__36; x_301 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_301, 0, x_258); lean_ctor_set(x_301, 1, x_299); @@ -4287,10 +4271,10 @@ x_306 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_306, 0, x_272); lean_ctor_set(x_306, 1, x_305); x_307 = lean_array_push(x_264, x_306); -x_308 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__63; +x_308 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__61; x_309 = lean_name_mk_numeral(x_308, x_287); -x_310 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__61; -x_311 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__65; +x_310 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__59; +x_311 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__63; x_312 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_312, 0, x_258); lean_ctor_set(x_312, 1, x_310); @@ -4330,9 +4314,9 @@ x_330 = l_Lean_nullKind___closed__2; x_331 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_331, 0, x_330); lean_ctor_set(x_331, 1, x_329); -x_332 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__58; +x_332 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__56; x_333 = lean_array_push(x_332, x_331); -x_334 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__66; +x_334 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__64; x_335 = lean_array_push(x_333, x_334); x_336 = l_Lean_Parser_Term_paren___elambda__1___closed__1; x_337 = lean_alloc_ctor(1, 2, 0); @@ -4363,11 +4347,11 @@ x_347 = lean_ctor_get(x_285, 1); lean_inc(x_347); lean_inc(x_346); lean_dec(x_285); -x_348 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__53; +x_348 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__51; lean_inc(x_346); x_349 = lean_name_mk_numeral(x_348, x_346); -x_350 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__52; -x_351 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__56; +x_350 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__50; +x_351 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__54; x_352 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_352, 0, x_258); lean_ctor_set(x_352, 1, x_350); @@ -4379,11 +4363,11 @@ x_355 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_355, 0, x_268); lean_ctor_set(x_355, 1, x_354); x_356 = lean_array_push(x_264, x_355); -x_357 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__33; +x_357 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__31; lean_inc(x_346); x_358 = lean_name_mk_numeral(x_357, x_346); -x_359 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__32; -x_360 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__38; +x_359 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__30; +x_360 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__36; x_361 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_361, 0, x_258); lean_ctor_set(x_361, 1, x_359); @@ -4399,10 +4383,10 @@ x_366 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_366, 0, x_272); lean_ctor_set(x_366, 1, x_365); x_367 = lean_array_push(x_264, x_366); -x_368 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__63; +x_368 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__61; x_369 = lean_name_mk_numeral(x_368, x_346); -x_370 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__61; -x_371 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__65; +x_370 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__59; +x_371 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__63; x_372 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_372, 0, x_258); lean_ctor_set(x_372, 1, x_370); @@ -4442,9 +4426,9 @@ x_390 = l_Lean_nullKind___closed__2; x_391 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_391, 0, x_390); lean_ctor_set(x_391, 1, x_389); -x_392 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__58; +x_392 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__56; x_393 = lean_array_push(x_392, x_391); -x_394 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__66; +x_394 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__64; x_395 = lean_array_push(x_393, x_394); x_396 = l_Lean_Parser_Term_paren___elambda__1___closed__1; x_397 = lean_alloc_ctor(1, 2, 0); @@ -4510,12 +4494,12 @@ x_424 = lean_ctor_get(x_422, 1); lean_inc(x_424); lean_dec(x_422); x_425 = lean_box(0); -x_426 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__42; +x_426 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__40; lean_inc(x_423); x_427 = lean_name_mk_numeral(x_426, x_423); x_428 = lean_box(0); -x_429 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__41; -x_430 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__45; +x_429 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__39; +x_430 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__43; x_431 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_431, 0, x_425); lean_ctor_set(x_431, 1, x_429); @@ -4536,9 +4520,9 @@ x_441 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_441, 0, x_440); lean_ctor_set(x_441, 1, x_439); x_442 = lean_array_push(x_432, x_441); -x_443 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__49; +x_443 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__47; x_444 = lean_name_mk_numeral(x_443, x_423); -x_445 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__48; +x_445 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__46; x_446 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_446, 0, x_425); lean_ctor_set(x_446, 1, x_445); @@ -4568,11 +4552,11 @@ if (lean_is_exclusive(x_453)) { lean_dec_ref(x_453); x_456 = lean_box(0); } -x_457 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__53; +x_457 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__51; lean_inc(x_454); x_458 = lean_name_mk_numeral(x_457, x_454); -x_459 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__52; -x_460 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__56; +x_459 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__50; +x_460 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__54; x_461 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_461, 0, x_425); lean_ctor_set(x_461, 1, x_459); @@ -4584,11 +4568,11 @@ x_464 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_464, 0, x_436); lean_ctor_set(x_464, 1, x_463); x_465 = lean_array_push(x_432, x_464); -x_466 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__33; +x_466 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__31; lean_inc(x_454); x_467 = lean_name_mk_numeral(x_466, x_454); -x_468 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__32; -x_469 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__38; +x_468 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__30; +x_469 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__36; x_470 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_470, 0, x_425); lean_ctor_set(x_470, 1, x_468); @@ -4604,10 +4588,10 @@ x_475 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_475, 0, x_440); lean_ctor_set(x_475, 1, x_474); x_476 = lean_array_push(x_432, x_475); -x_477 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__63; +x_477 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__61; x_478 = lean_name_mk_numeral(x_477, x_454); -x_479 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__61; -x_480 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__65; +x_479 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__59; +x_480 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__63; x_481 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_481, 0, x_425); lean_ctor_set(x_481, 1, x_479); @@ -4647,9 +4631,9 @@ x_499 = l_Lean_nullKind___closed__2; x_500 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_500, 0, x_499); lean_ctor_set(x_500, 1, x_498); -x_501 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__58; +x_501 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__56; x_502 = lean_array_push(x_501, x_500); -x_503 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__66; +x_503 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__64; x_504 = lean_array_push(x_502, x_503); x_505 = l_Lean_Parser_Term_paren___elambda__1___closed__1; x_506 = lean_alloc_ctor(1, 2, 0); @@ -5073,10 +5057,10 @@ x_37 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_37, 0, x_36); lean_ctor_set(x_37, 1, x_35); x_38 = lean_array_push(x_20, x_37); -x_39 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__49; +x_39 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__47; lean_inc(x_12); x_40 = lean_name_mk_numeral(x_39, x_12); -x_41 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__48; +x_41 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__46; x_42 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_42, 0, x_13); lean_ctor_set(x_42, 1, x_41); @@ -5125,9 +5109,9 @@ x_68 = lean_array_push(x_67, x_22); x_69 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_69, 0, x_47); lean_ctor_set(x_69, 1, x_68); -x_70 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__58; +x_70 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__56; x_71 = lean_array_push(x_70, x_69); -x_72 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__66; +x_72 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__64; x_73 = lean_array_push(x_71, x_72); x_74 = l_Lean_Parser_Term_paren___elambda__1___closed__1; x_75 = lean_alloc_ctor(1, 2, 0); @@ -5190,10 +5174,10 @@ x_104 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_104, 0, x_103); lean_ctor_set(x_104, 1, x_102); x_105 = lean_array_push(x_87, x_104); -x_106 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__49; +x_106 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__47; lean_inc(x_78); x_107 = lean_name_mk_numeral(x_106, x_78); -x_108 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__48; +x_108 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__46; x_109 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_109, 0, x_80); lean_ctor_set(x_109, 1, x_108); @@ -5242,9 +5226,9 @@ x_135 = lean_array_push(x_134, x_89); x_136 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_136, 0, x_114); lean_ctor_set(x_136, 1, x_135); -x_137 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__58; +x_137 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__56; x_138 = lean_array_push(x_137, x_136); -x_139 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__66; +x_139 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__64; x_140 = lean_array_push(x_138, x_139); x_141 = l_Lean_Parser_Term_paren___elambda__1___closed__1; x_142 = lean_alloc_ctor(1, 2, 0); @@ -5898,7 +5882,7 @@ lean_object* _init_l___private_Init_Lean_Elab_Quotation_7__getHeadInfo___lambda_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__14; +x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__13; x_2 = l___private_Init_Lean_Elab_Quotation_7__getHeadInfo___lambda__2___closed__4; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -5932,7 +5916,7 @@ x_23 = lean_name_mk_string(x_1, x_22); x_24 = l___private_Init_Lean_Elab_Quotation_7__getHeadInfo___lambda__2___closed__5; lean_inc(x_10); x_25 = lean_name_mk_numeral(x_24, x_10); -x_26 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__13; +x_26 = l_Lean_Parser_Syntax_paren___elambda__1___closed__1; x_27 = lean_name_mk_string(x_3, x_26); x_28 = l___private_Init_Lean_Elab_Quotation_7__getHeadInfo___lambda__2___closed__4; x_29 = lean_name_mk_string(x_27, x_28); @@ -6014,7 +5998,7 @@ x_70 = lean_name_mk_string(x_1, x_69); x_71 = l___private_Init_Lean_Elab_Quotation_7__getHeadInfo___lambda__2___closed__5; lean_inc(x_56); x_72 = lean_name_mk_numeral(x_71, x_56); -x_73 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__13; +x_73 = l_Lean_Parser_Syntax_paren___elambda__1___closed__1; x_74 = lean_name_mk_string(x_3, x_73); x_75 = l___private_Init_Lean_Elab_Quotation_7__getHeadInfo___lambda__2___closed__4; x_76 = lean_name_mk_string(x_74, x_75); @@ -6128,7 +6112,7 @@ lean_object* l___private_Init_Lean_Elab_Quotation_7__getHeadInfo___lambda__4(lea _start: { lean_object* x_5; lean_object* x_6; -x_5 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__22; +x_5 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__21; x_6 = l_Lean_Elab_Term_throwError___rarg(x_1, x_5, x_3, x_4); return x_6; } @@ -7756,7 +7740,7 @@ lean_object* _init_l_List_mapM___main___at___private_Init_Lean_Elab_Quotation_9_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__14; +x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__13; x_2 = l_List_mapM___main___at___private_Init_Lean_Elab_Quotation_9__compileStxMatch___main___spec__8___closed__4; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -7766,7 +7750,7 @@ lean_object* _init_l_List_mapM___main___at___private_Init_Lean_Elab_Quotation_9_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__16; +x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__15; x_2 = l_List_mapM___main___at___private_Init_Lean_Elab_Quotation_9__compileStxMatch___main___spec__8___closed__4; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -8434,7 +8418,7 @@ lean_object* _init_l___private_Init_Lean_Elab_Quotation_9__compileStxMatch___mai _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__14; +x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__13; x_2 = l___private_Init_Lean_Elab_Quotation_9__compileStxMatch___main___closed__7; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -8444,7 +8428,7 @@ lean_object* _init_l___private_Init_Lean_Elab_Quotation_9__compileStxMatch___mai _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__16; +x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__15; x_2 = l___private_Init_Lean_Elab_Quotation_9__compileStxMatch___main___closed__7; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -8708,7 +8692,7 @@ lean_object* _init_l___private_Init_Lean_Elab_Quotation_9__compileStxMatch___mai _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__16; +x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__15; x_2 = l___private_Init_Lean_Elab_Quotation_7__getHeadInfo___lambda__2___closed__4; x_3 = lean_name_mk_string(x_1, x_2); return x_3; @@ -10289,9 +10273,9 @@ x_625 = l_Lean_nullKind___closed__2; x_626 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_626, 0, x_625); lean_ctor_set(x_626, 1, x_624); -x_627 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__58; +x_627 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__56; x_628 = lean_array_push(x_627, x_626); -x_629 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__66; +x_629 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__64; x_630 = lean_array_push(x_628, x_629); x_631 = l_Lean_Parser_Term_paren___elambda__1___closed__1; x_632 = lean_alloc_ctor(1, 2, 0); @@ -10630,9 +10614,9 @@ x_804 = l_Lean_nullKind___closed__2; x_805 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_805, 0, x_804); lean_ctor_set(x_805, 1, x_803); -x_806 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__58; +x_806 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__56; x_807 = lean_array_push(x_806, x_805); -x_808 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__66; +x_808 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__64; x_809 = lean_array_push(x_807, x_808); x_810 = l_Lean_Parser_Term_paren___elambda__1___closed__1; x_811 = lean_alloc_ctor(1, 2, 0); @@ -11129,9 +11113,9 @@ x_1005 = l_Lean_nullKind___closed__2; x_1006 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_1006, 0, x_1005); lean_ctor_set(x_1006, 1, x_1004); -x_1007 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__58; +x_1007 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__56; x_1008 = lean_array_push(x_1007, x_1006); -x_1009 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__66; +x_1009 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__64; x_1010 = lean_array_push(x_1008, x_1009); x_1011 = l_Lean_Parser_Term_paren___elambda__1___closed__1; x_1012 = lean_alloc_ctor(1, 2, 0); @@ -12264,7 +12248,7 @@ lean_object* _init_l___private_Init_Lean_Elab_Quotation_12__letBindRhss___main__ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__58; +x_1 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__56; x_2 = l___private_Init_Lean_Elab_Term_8__expandCDot___closed__4; x_3 = lean_array_push(x_1, x_2); return x_3; @@ -12275,7 +12259,7 @@ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l___private_Init_Lean_Elab_Quotation_12__letBindRhss___main___closed__5; -x_2 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__66; +x_2 = l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__64; x_3 = lean_array_push(x_1, x_2); return x_3; } @@ -26124,10 +26108,6 @@ l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__63 = _init_ lean_mark_persistent(l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__63); l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__64 = _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__64(); lean_mark_persistent(l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__64); -l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__65 = _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__65(); -lean_mark_persistent(l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__65); -l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__66 = _init_l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__66(); -lean_mark_persistent(l___private_Init_Lean_Elab_Quotation_5__quoteSyntax___main___closed__66); l_Lean_Elab_Term_stxQuot_expand___closed__1 = _init_l_Lean_Elab_Term_stxQuot_expand___closed__1(); lean_mark_persistent(l_Lean_Elab_Term_stxQuot_expand___closed__1); l_Lean_Elab_Term_stxQuot_expand___closed__2 = _init_l_Lean_Elab_Term_stxQuot_expand___closed__2(); diff --git a/stage0/stdlib/Init/Lean/Parser/Command.c b/stage0/stdlib/Init/Lean/Parser/Command.c index 0ba2c74210..1cdcabb6f9 100644 --- a/stage0/stdlib/Init/Lean/Parser/Command.c +++ b/stage0/stdlib/Init/Lean/Parser/Command.c @@ -509,7 +509,7 @@ lean_object* l_Lean_Parser_Command_prefix___elambda__1___closed__7; lean_object* l_Lean_Parser_Command_prefix___closed__1; lean_object* l_Lean_Parser_Command_infixl___elambda__1___closed__2; lean_object* l_Lean_Parser_Command_set__option___elambda__1___closed__2; -lean_object* l_Lean_Parser_nonReservedSymbolInfo(lean_object*); +lean_object* l_Lean_Parser_nonReservedSymbolInfo(lean_object*, uint8_t); lean_object* l_Lean_Parser_Command_example___elambda__1(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Command_declId___closed__1; lean_object* l_Lean_Parser_Command_declModifiers___closed__15; @@ -21685,19 +21685,21 @@ return x_3; lean_object* _init_l_Lean_Parser_Command_set__option___closed__2() { _start: { -lean_object* x_1; lean_object* x_2; +lean_object* x_1; uint8_t x_2; lean_object* x_3; x_1 = l_Lean_Parser_Command_set__option___elambda__1___closed__7; -x_2 = l_Lean_Parser_nonReservedSymbolInfo(x_1); -return x_2; +x_2 = 0; +x_3 = l_Lean_Parser_nonReservedSymbolInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Command_set__option___closed__3() { _start: { -lean_object* x_1; lean_object* x_2; +lean_object* x_1; uint8_t x_2; lean_object* x_3; x_1 = l_Lean_Parser_Command_set__option___elambda__1___closed__8; -x_2 = l_Lean_Parser_nonReservedSymbolInfo(x_1); -return x_2; +x_2 = 0; +x_3 = l_Lean_Parser_nonReservedSymbolInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Command_set__option___closed__4() { @@ -26205,10 +26207,11 @@ return x_22; lean_object* _init_l_Lean_Parser_Command_maxPrec___closed__1() { _start: { -lean_object* x_1; lean_object* x_2; +lean_object* x_1; uint8_t x_2; lean_object* x_3; x_1 = l_Lean_Parser_Command_maxPrec___elambda__1___closed__5; -x_2 = l_Lean_Parser_nonReservedSymbolInfo(x_1); -return x_2; +x_2 = 0; +x_3 = l_Lean_Parser_nonReservedSymbolInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Command_maxPrec___closed__2() { diff --git a/stage0/stdlib/Init/Lean/Parser/Level.c b/stage0/stdlib/Init/Lean/Parser/Level.c index d0fcdc689e..04cccda2cf 100644 --- a/stage0/stdlib/Init/Lean/Parser/Level.c +++ b/stage0/stdlib/Init/Lean/Parser/Level.c @@ -80,7 +80,7 @@ lean_object* l_Lean_Parser_nodeInfo(lean_object*, lean_object*); lean_object* l_Lean_Parser_Level_addLit___elambda__1(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Level_imax___elambda__1___closed__2; lean_object* l_Lean_Parser_Level_paren___elambda__1___closed__7; -lean_object* l_Lean_Parser_nonReservedSymbolInfo(lean_object*); +lean_object* l_Lean_Parser_nonReservedSymbolInfo(lean_object*, uint8_t); lean_object* l_Lean_Parser_Level_paren; lean_object* l_Lean_Parser_Level_addLit___elambda__1___closed__2; lean_object* l_Lean_Parser_Level_paren___closed__10; @@ -1017,10 +1017,11 @@ return x_41; lean_object* _init_l_Lean_Parser_Level_max___closed__1() { _start: { -lean_object* x_1; lean_object* x_2; +lean_object* x_1; uint8_t x_2; lean_object* x_3; x_1 = l_Lean_Parser_Level_max___elambda__1___closed__5; -x_2 = l_Lean_Parser_nonReservedSymbolInfo(x_1); -return x_2; +x_2 = 0; +x_3 = l_Lean_Parser_nonReservedSymbolInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Level_max___closed__2() { diff --git a/stage0/stdlib/Init/Lean/Parser/Parser.c b/stage0/stdlib/Init/Lean/Parser/Parser.c index 757bb1ae9e..42491365f7 100644 --- a/stage0/stdlib/Init/Lean/Parser/Parser.c +++ b/stage0/stdlib/Init/Lean/Parser/Parser.c @@ -14,7 +14,7 @@ extern "C" { #endif lean_object* l_Lean_Parser_declareBuiltinParser___closed__9; -lean_object* l_Lean_Parser_nonReservedSymbol___boxed(lean_object*, lean_object*); +lean_object* l_Lean_Parser_nonReservedSymbol___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_List_reverse___rarg(lean_object*); lean_object* l_Lean_Parser_optionalFn___rarg(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_takeWhileFn___at_Lean_Parser_decimalNumberFn___spec__1___boxed(lean_object*, lean_object*); @@ -29,6 +29,7 @@ extern lean_object* l_Lean_Name_toString___closed__1; lean_object* l_Lean_Parser_charLit___closed__1; lean_object* l_Lean_Parser_andthenInfo___elambda__1(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_symbolAux___boxed(lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Parser_unicodeInfixL___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_hashOrelse(uint8_t); lean_object* l_RBNode_ins___main___at_Lean_Parser_TokenMap_insert___spec__7___rarg(lean_object*, lean_object*, lean_object*); size_t l_USize_add(size_t, size_t); @@ -78,6 +79,7 @@ extern lean_object* l_Lean_nullKind; lean_object* l_Lean_Parser_mkParserExtension___closed__2; lean_object* l_Array_iterateMAux___main___at___private_Init_Lean_Parser_Parser_19__ParserAttribute_add___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_RBNode_find___main___at_Lean_Parser_indexed___spec__3___rarg(lean_object*, lean_object*); +lean_object* l_Lean_Parser_unicodeInfixR(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_andthenAux(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_unicodeSymbolCheckPrecFnAux(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_octalNumberFn___closed__1; @@ -95,6 +97,7 @@ lean_object* l_Lean_Syntax_foldArgsAuxM___rarg(lean_object*, lean_object*, lean_ lean_object* l_Lean_Parser_rawFn___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_List_repr___rarg___closed__1; lean_object* l_Lean_Parser_takeUntilFn___main___at_Lean_Parser_identFnAux___main___spec__2___boxed(lean_object*, lean_object*); +lean_object* l_Lean_Parser_unicodeInfixR___elambda__1(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_optionaInfo___elambda__2(lean_object*, lean_object*); lean_object* l_Lean_Parser_ParserFn_inhabited___rarg(lean_object*); lean_object* l___private_Init_Lean_Parser_Parser_12__mergePrecendences___closed__2; @@ -136,7 +139,6 @@ lean_object* l_Array_foldSepBy___rarg___boxed(lean_object*, lean_object*, lean_o lean_object* l_Lean_Parser_strLitFnAux(lean_object*, lean_object*, lean_object*); lean_object* l___private_Init_Lean_Parser_Parser_6__updateCache(lean_object*, lean_object*); lean_object* l_PersistentHashMap_foldlMAux___main___at___private_Init_Lean_Parser_Parser_19__ParserAttribute_add___spec__3___boxed(lean_object*, lean_object*); -lean_object* l_Lean_Parser_tacticSymbolInfo___elambda__2(lean_object*); lean_object* l_Array_iterateMAux___main___at_Lean_Parser_SyntaxNodeKindSet_insert___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_ParserState_next(lean_object*, lean_object*, lean_object*); lean_object* l_Array_extract___rarg(lean_object*, lean_object*, lean_object*); @@ -182,7 +184,6 @@ lean_object* l_Lean_Parser_mkParserExtension___lambda__2(lean_object*); lean_object* l_Lean_Parser_ParsingTables_inhabited; lean_object* l_Lean_Parser_categoryParserFnExtension___closed__2; lean_object* l_Lean_Parser_checkNoWsBefore___elambda__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_Parser_tacticSymbolInfo___elambda__1___boxed(lean_object*); uint8_t lean_name_eq(lean_object*, lean_object*); lean_object* l_Lean_Parser_many1Indent___lambda__1(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); lean_object* lean_io_ref_get(lean_object*, lean_object*); @@ -201,6 +202,7 @@ lean_object* l_Lean_Parser_orelseFn(uint8_t); lean_object* l_Lean_Parser_registerBuiltinDynamicParserAttribute(lean_object*, lean_object*, lean_object*); lean_object* l___private_Init_Lean_Parser_Parser_18__BuiltinParserAttribute_add___closed__1; extern lean_object* l_Lean_Position_Inhabited___closed__1; +lean_object* l_Lean_Parser_infixR___elambda__1(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_symbolNoWsFn___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_unquotedSymbolFn___rarg(lean_object*, lean_object*); lean_object* l_Lean_Parser_unquotedSymbol___elambda__1___rarg(lean_object*, lean_object*); @@ -233,7 +235,6 @@ lean_object* l_Lean_Parser_categoryParserFnImpl(lean_object*, lean_object*, lean lean_object* l_Lean_Parser_withPosition(uint8_t, lean_object*); lean_object* l_PersistentHashMap_contains___at___private_Init_Lean_Parser_Parser_9__addParserCategoryCore___spec__1___boxed(lean_object*, lean_object*); lean_object* l_Lean_Parser_mkAntiquot___closed__11; -lean_object* l_Lean_Parser_tacticSymbolInfo___elambda__1(lean_object*); lean_object* l_Lean_Parser_charLitFnAux(lean_object*, lean_object*, lean_object*); lean_object* l___private_Init_Lean_Parser_Parser_19__ParserAttribute_add___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___private_Init_Lean_Parser_Parser_22__pushNone(uint8_t); @@ -246,7 +247,7 @@ lean_object* l___private_Init_Lean_Parser_Parser_3__rawAux___rarg___boxed(lean_o size_t l_USize_shiftRight(size_t, size_t); lean_object* l_Lean_Parser_identFnAux___main___closed__1; lean_object* l_Lean_Parser_symbolInfo___elambda__1(lean_object*); -lean_object* l_Lean_Parser_nonReservedSymbol(uint8_t, lean_object*); +lean_object* l_Lean_Parser_nonReservedSymbol(uint8_t, lean_object*, uint8_t); lean_object* l_Lean_Parser_symbolFnAux___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___private_Init_Lean_Parser_Parser_20__registerParserAttributeImplBuilder___lambda__1___closed__1; lean_object* l_Lean_Parser_mkNodeToken___boxed(lean_object*, lean_object*, lean_object*, lean_object*); @@ -347,6 +348,7 @@ lean_object* l_PersistentHashMap_insert___at___private_Init_Lean_Parser_Parser_9 lean_object* l_Lean_Parser_satisfyFn___at_Lean_Parser_quotedSymbolFn___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_takeWhileFn(lean_object*, lean_object*, lean_object*); lean_object* l___private_Init_Lean_Parser_Parser_10__addBuiltinParserCategory(lean_object*, uint8_t, lean_object*); +lean_object* l_Lean_Parser_infixR___boxed(lean_object*, lean_object*); lean_object* l_Lean_Parser_declareTrailingBuiltinParser___closed__2; lean_object* l_Lean_Parser_nonReservedSymbolInfo___elambda__2(lean_object*); lean_object* l_Lean_Parser_unicodeSymbolFn___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -410,6 +412,7 @@ lean_object* l_Lean_Parser_symbolNoWsFnAux(lean_object*, lean_object*, lean_obje lean_object* l_Lean_Parser_nodeInfo(lean_object*, lean_object*); lean_object* l_RBNode_insert___at_Lean_Parser_TokenMap_insert___spec__2___rarg(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_dollarSymbol(uint8_t); +lean_object* l_Lean_Parser_infixR(lean_object*, lean_object*); lean_object* l_Lean_Parser_quotedSymbol___elambda__1___rarg___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_symbolFn___boxed(lean_object*); extern lean_object* l_Lean_numLitKind; @@ -436,7 +439,7 @@ lean_object* l_Lean_Parser_noFirstTokenInfo(lean_object*); lean_object* l_Lean_Parser_mkParserOfConstantUnsafe___closed__1; lean_object* l_Lean_Parser_checkLeadingFn___closed__1; extern lean_object* l_Lean_strLitKind; -lean_object* l_Lean_Parser_nonReservedSymbolInfo(lean_object*); +lean_object* l_Lean_Parser_nonReservedSymbolInfo(lean_object*, uint8_t); lean_object* l_Lean_Parser_finishCommentBlock___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_unquotedSymbol___elambda__1___boxed(lean_object*, lean_object*); lean_object* l_Lean_Parser_parserExtension___closed__6; @@ -469,6 +472,7 @@ lean_object* l_Lean_Parser_anyOfFn___main___boxed(lean_object*, lean_object*, le lean_object* l___private_Init_Lean_Parser_Parser_10__addBuiltinParserCategory___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_mkParserExtension___closed__8; lean_object* l_Lean_Parser_takeWhileFn___at_Lean_Parser_octalNumberFn___spec__2(lean_object*, lean_object*); +lean_object* l_Lean_Parser_infixL___boxed(lean_object*, lean_object*); lean_object* l_Lean_Parser_symbolInfo___elambda__1___boxed(lean_object*); lean_object* l_PersistentHashMap_insertAux___main___at___private_Init_Lean_Parser_Parser_9__addParserCategoryCore___spec__4(lean_object*, size_t, size_t, lean_object*, lean_object*); lean_object* l_Lean_Parser_whitespace___main(lean_object*, lean_object*); @@ -717,7 +721,6 @@ lean_object* l_Lean_Parser_categoryParserFnExtension___elambda__2(lean_object*); lean_object* l_Lean_Parser_trailingNode(lean_object*, lean_object*); lean_object* l_Lean_Parser_orelseInfo___elambda__2(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_quotedCharFn___boxed(lean_object*, lean_object*); -lean_object* l_Lean_Parser_tacticSymbolInfo(lean_object*); lean_object* l_Lean_Parser_sepBy1(uint8_t, lean_object*, lean_object*, uint8_t); lean_object* l_PersistentHashMap_foldlM___at___private_Init_Lean_Parser_Parser_19__ParserAttribute_add___spec__2___boxed(lean_object*, lean_object*); lean_object* l_Lean_Parser_regBuiltinTermParserAttr___closed__4; @@ -813,6 +816,7 @@ lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_many1Indent___spec__1 lean_object* l_Lean_Parser_chFn___boxed(lean_object*); uint8_t l_Lean_Parser_isValidSyntaxNodeKind(lean_object*, lean_object*); lean_object* l_Lean_Parser_dollarSymbol___elambda__1___rarg___closed__2; +lean_object* l_Lean_Parser_unicodeInfixR___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Error_beq___boxed(lean_object*, lean_object*); lean_object* l_Lean_Parser_orelseInfo___elambda__1(lean_object*, lean_object*, lean_object*); lean_object* l___private_Init_Lean_Parser_Parser_22__pushNone___elambda__1(uint8_t, lean_object*, lean_object*); @@ -820,6 +824,7 @@ lean_object* l_Lean_Parser_FirstTokens_toStr___closed__1; lean_object* l_Lean_Syntax_foldArgsAuxM___main___at_Lean_Syntax_foldArgs___spec__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_runParserCategory(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Array_iterateMAux___main___at_Lean_Parser_getSyntaxNodeKinds___spec__4(lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Parser_unicodeInfixL(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_addLeadingParser(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_quotedSymbolFn___boxed(lean_object*); uint8_t l_PersistentHashMap_containsAtAux___main___at_Lean_Parser_isValidSyntaxNodeKind___spec__3(lean_object*, lean_object*, lean_object*); @@ -878,11 +883,9 @@ lean_object* l_Lean_Parser_takeWhileFn___at_Lean_Parser_hexNumberFn___spec__2___ lean_object* l_Lean_Parser_checkNoWsBefore___elambda__1(uint8_t); lean_object* l_RBNode_setBlack___rarg(lean_object*); lean_object* l_PersistentHashMap_foldlM___at___private_Init_Lean_Parser_Parser_19__ParserAttribute_add___spec__2(lean_object*, lean_object*); -lean_object* l_Lean_Parser_tacticSymbolInfo___elambda__2___boxed(lean_object*); lean_object* l___private_Init_Lean_Parser_Parser_19__ParserAttribute_add(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*); lean_object* l_Lean_Parser_noFirstTokenInfo___elambda__2(lean_object*, lean_object*); lean_object* l_Lean_registerEnvExtensionUnsafe___at_Lean_Parser_mkCategoryParserFnExtension___spec__1(lean_object*, lean_object*); -lean_object* l_Lean_Parser_tacticSymbol___boxed(lean_object*); lean_object* l_Lean_Parser_mkCategoryParserFnRef___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_chFn___rarg(uint32_t, uint8_t, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Syntax_foldArgsAuxM___main___at_Lean_Syntax_forArgsM___spec__1___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -923,7 +926,6 @@ lean_object* l_Lean_Parser_charLitFn___boxed(lean_object*, lean_object*); lean_object* l_Lean_Parser_compileParserDescr___main(lean_object*, uint8_t, lean_object*); lean_object* l_Lean_Parser_regBuiltinTermParserAttr(lean_object*); lean_object* l_Lean_Parser_nodeFn(uint8_t); -lean_object* l_Lean_Parser_tacticSymbol(lean_object*); lean_object* l___private_Init_Lean_Parser_Parser_5__tokenFnAux(lean_object*, lean_object*); lean_object* l_Lean_Parser_checkWsBeforeFn___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_optionalFn(uint8_t); @@ -944,7 +946,6 @@ lean_object* l_Lean_Parser_currLbp(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_mkParserOfConstant(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_takeWhile1Fn(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_List_foldl___main___at___private_Init_Lean_Parser_Parser_14__addTrailingParserAux___spec__1(lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_Parser_tacticSymbolInfo___closed__1; lean_object* lean_io_initializing(lean_object*); lean_object* l_Array_getEvenElems___boxed(lean_object*); extern lean_object* l_Lean_registerPersistentEnvExtensionUnsafe___rarg___closed__2; @@ -1012,6 +1013,7 @@ lean_object* l_Lean_Syntax_forArgsM___boxed(lean_object*); lean_object* l_List_toStringAux___main___at_Lean_Parser_FirstTokens_toStr___spec__2(uint8_t, lean_object*); lean_object* l_List_toArrayAux___main___rarg(lean_object*, lean_object*); lean_object* l_Lean_Parser_andthen(uint8_t, lean_object*, lean_object*); +lean_object* l_Lean_Parser_unicodeInfixL___elambda__1(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_node(uint8_t, lean_object*, lean_object*); lean_object* l_Lean_Parser_lookahead___boxed(lean_object*, lean_object*); lean_object* l_unsafeCast(lean_object*, lean_object*, lean_object*, lean_object*); @@ -1078,6 +1080,7 @@ lean_object* l_Lean_mkConst(lean_object*, lean_object*); lean_object* l_Lean_Parser_longestMatchStep___boxed(lean_object*); lean_object* l_Lean_Parser_Error_toString___closed__1; lean_object* l_Lean_Parser_regBuiltinTermParserAttr___closed__2; +lean_object* l_Lean_Parser_infixL(lean_object*, lean_object*); lean_object* l_PersistentHashMap_findAtAux___main___at_Lean_Parser_addLeadingParser___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_mkAntiquot___closed__2; lean_object* l_Lean_Parser_Parser_inhabited___closed__1; @@ -1116,6 +1119,7 @@ lean_object* l_Lean_Parser_sepBy___boxed(lean_object*, lean_object*, lean_object lean_object* l_Lean_Parser_trailingLoop___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_PersistentHashMap_insertAtCollisionNodeAux___main___at___private_Init_Lean_Parser_Parser_9__addParserCategoryCore___spec__5(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_quotedSymbol___boxed(lean_object*); +lean_object* l_Lean_Parser_nonReservedSymbolInfo___boxed(lean_object*, lean_object*); lean_object* l_Lean_Parser_ParserState_mergeErrors(lean_object*, lean_object*, lean_object*); uint8_t l_Lean_isIdRest(uint32_t); lean_object* l_Lean_Parser_numberFnAux___boxed(lean_object*, lean_object*); @@ -1127,7 +1131,7 @@ lean_object* l___private_Init_Lean_Parser_Parser_12__mergePrecendences___boxed(l lean_object* l_Lean_Parser_mkIdent(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_withPosition___boxed(lean_object*, lean_object*); uint8_t lean_string_dec_eq(lean_object*, lean_object*); -lean_object* l_Lean_Parser_tacticSymbolInfo___closed__2; +lean_object* l_Lean_Parser_infixL___elambda__1(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_registerParserCategory___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_nat_dec_lt(lean_object*, lean_object*); lean_object* l_Lean_Parser_mkAntiquot___boxed(lean_object*, lean_object*, lean_object*, lean_object*); @@ -9654,6 +9658,22 @@ return x_1; lean_object* _init_l_Lean_Parser_nonReservedSymbolInfo___closed__1() { _start: { +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_nonReservedSymbolInfo___elambda__2___boxed), 1, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_nonReservedSymbolInfo___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_nonReservedSymbolInfo___elambda__1___boxed), 1, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_nonReservedSymbolInfo___closed__3() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); x_2 = l_Lean_Syntax_getKind___closed__3; @@ -9664,56 +9684,65 @@ lean_ctor_set(x_3, 2, x_1); return x_3; } } -lean_object* _init_l_Lean_Parser_nonReservedSymbolInfo___closed__2() { +lean_object* _init_l_Lean_Parser_nonReservedSymbolInfo___closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Lean_Parser_nonReservedSymbolInfo___closed__1; +x_2 = l_Lean_Parser_nonReservedSymbolInfo___closed__3; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_2); lean_ctor_set(x_3, 1, x_1); return x_3; } } -lean_object* _init_l_Lean_Parser_nonReservedSymbolInfo___closed__3() { +lean_object* l_Lean_Parser_nonReservedSymbolInfo(lean_object* x_1, uint8_t x_2) { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_nonReservedSymbolInfo___elambda__2___boxed), 1, 0); -return x_1; -} -} -lean_object* _init_l_Lean_Parser_nonReservedSymbolInfo___closed__4() { -_start: +if (x_2 == 0) { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_nonReservedSymbolInfo___elambda__1___boxed), 1, 0); -return x_1; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +x_3 = lean_box(0); +x_4 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_4, 0, x_1); +lean_ctor_set(x_4, 1, x_3); +lean_ctor_set(x_4, 2, x_3); +x_5 = lean_box(0); +x_6 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_6, 0, x_4); +lean_ctor_set(x_6, 1, x_5); +x_7 = lean_alloc_ctor(2, 1, 0); +lean_ctor_set(x_7, 0, x_6); +x_8 = l_Lean_Parser_nonReservedSymbolInfo___closed__1; +x_9 = l_Lean_Parser_nonReservedSymbolInfo___closed__2; +x_10 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_10, 0, x_8); +lean_ctor_set(x_10, 1, x_9); +lean_ctor_set(x_10, 2, x_7); +return x_10; } -} -lean_object* l_Lean_Parser_nonReservedSymbolInfo(lean_object* x_1) { -_start: +else { -lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; -x_2 = lean_box(0); -x_3 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_3, 0, x_1); -lean_ctor_set(x_3, 1, x_2); -lean_ctor_set(x_3, 2, x_2); -x_4 = l_Lean_Parser_nonReservedSymbolInfo___closed__2; -x_5 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_5, 0, x_3); -lean_ctor_set(x_5, 1, x_4); -x_6 = lean_alloc_ctor(2, 1, 0); -lean_ctor_set(x_6, 0, x_5); -x_7 = l_Lean_Parser_nonReservedSymbolInfo___closed__3; -x_8 = l_Lean_Parser_nonReservedSymbolInfo___closed__4; -x_9 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_9, 0, x_7); -lean_ctor_set(x_9, 1, x_8); -lean_ctor_set(x_9, 2, x_6); -return x_9; +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_11 = lean_box(0); +x_12 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_12, 0, x_1); +lean_ctor_set(x_12, 1, x_11); +lean_ctor_set(x_12, 2, x_11); +x_13 = l_Lean_Parser_nonReservedSymbolInfo___closed__4; +x_14 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_14, 0, x_12); +lean_ctor_set(x_14, 1, x_13); +x_15 = lean_alloc_ctor(2, 1, 0); +lean_ctor_set(x_15, 0, x_14); +x_16 = l_Lean_Parser_nonReservedSymbolInfo___closed__1; +x_17 = l_Lean_Parser_nonReservedSymbolInfo___closed__2; +x_18 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_18, 0, x_16); +lean_ctor_set(x_18, 1, x_17); +lean_ctor_set(x_18, 2, x_15); +return x_18; +} } } lean_object* l_Lean_Parser_nonReservedSymbolInfo___elambda__1___boxed(lean_object* x_1) { @@ -9734,6 +9763,16 @@ lean_dec(x_1); return x_2; } } +lean_object* l_Lean_Parser_nonReservedSymbolInfo___boxed(lean_object* x_1, lean_object* x_2) { +_start: +{ +uint8_t x_3; lean_object* x_4; +x_3 = lean_unbox(x_2); +lean_dec(x_2); +x_4 = l_Lean_Parser_nonReservedSymbolInfo(x_1, x_3); +return x_4; +} +} lean_object* l_Lean_Parser_nonReservedSymbol___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { @@ -9745,19 +9784,19 @@ x_8 = l_Lean_Parser_nonReservedSymbolFnAux(x_1, x_7, x_3, x_4); return x_8; } } -lean_object* l_Lean_Parser_nonReservedSymbol(uint8_t x_1, lean_object* x_2) { +lean_object* l_Lean_Parser_nonReservedSymbol(uint8_t x_1, lean_object* x_2, uint8_t x_3) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; -x_3 = l_String_trim(x_2); -lean_inc(x_3); -x_4 = l_Lean_Parser_nonReservedSymbolInfo(x_3); -x_5 = lean_alloc_closure((void*)(l_Lean_Parser_nonReservedSymbol___lambda__1___boxed), 4, 1); -lean_closure_set(x_5, 0, x_3); -x_6 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_6, 0, x_4); -lean_ctor_set(x_6, 1, x_5); -return x_6; +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; +x_4 = l_String_trim(x_2); +lean_inc(x_4); +x_5 = l_Lean_Parser_nonReservedSymbolInfo(x_4, x_3); +x_6 = lean_alloc_closure((void*)(l_Lean_Parser_nonReservedSymbol___lambda__1___boxed), 4, 1); +lean_closure_set(x_6, 0, x_4); +x_7 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_7, 0, x_5); +lean_ctor_set(x_7, 1, x_6); +return x_7; } } lean_object* l_Lean_Parser_nonReservedSymbol___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { @@ -9769,15 +9808,17 @@ lean_dec(x_2); return x_5; } } -lean_object* l_Lean_Parser_nonReservedSymbol___boxed(lean_object* x_1, lean_object* x_2) { +lean_object* l_Lean_Parser_nonReservedSymbol___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -uint8_t x_3; lean_object* x_4; -x_3 = lean_unbox(x_1); +uint8_t x_4; uint8_t x_5; lean_object* x_6; +x_4 = lean_unbox(x_1); lean_dec(x_1); -x_4 = l_Lean_Parser_nonReservedSymbol(x_3, x_2); +x_5 = lean_unbox(x_3); +lean_dec(x_3); +x_6 = l_Lean_Parser_nonReservedSymbol(x_4, x_2, x_5); lean_dec(x_2); -return x_4; +return x_6; } } lean_object* l_Lean_Parser_strAux___main(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { @@ -23136,102 +23177,6 @@ x_1 = l_Lean_Parser_ParsingTables_inhabited___closed__1; return x_1; } } -lean_object* l_Lean_Parser_tacticSymbolInfo___elambda__1(lean_object* x_1) { -_start: -{ -lean_inc(x_1); -return x_1; -} -} -lean_object* l_Lean_Parser_tacticSymbolInfo___elambda__2(lean_object* x_1) { -_start: -{ -lean_inc(x_1); -return x_1; -} -} -lean_object* _init_l_Lean_Parser_tacticSymbolInfo___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_tacticSymbolInfo___elambda__2___boxed), 1, 0); -return x_1; -} -} -lean_object* _init_l_Lean_Parser_tacticSymbolInfo___closed__2() { -_start: -{ -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Parser_tacticSymbolInfo___elambda__1___boxed), 1, 0); -return x_1; -} -} -lean_object* l_Lean_Parser_tacticSymbolInfo(lean_object* x_1) { -_start: -{ -lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; -x_2 = lean_box(0); -x_3 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_3, 0, x_1); -lean_ctor_set(x_3, 1, x_2); -lean_ctor_set(x_3, 2, x_2); -x_4 = lean_box(0); -x_5 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_5, 0, x_3); -lean_ctor_set(x_5, 1, x_4); -x_6 = lean_alloc_ctor(2, 1, 0); -lean_ctor_set(x_6, 0, x_5); -x_7 = l_Lean_Parser_tacticSymbolInfo___closed__1; -x_8 = l_Lean_Parser_tacticSymbolInfo___closed__2; -x_9 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_9, 0, x_7); -lean_ctor_set(x_9, 1, x_8); -lean_ctor_set(x_9, 2, x_6); -return x_9; -} -} -lean_object* l_Lean_Parser_tacticSymbolInfo___elambda__1___boxed(lean_object* x_1) { -_start: -{ -lean_object* x_2; -x_2 = l_Lean_Parser_tacticSymbolInfo___elambda__1(x_1); -lean_dec(x_1); -return x_2; -} -} -lean_object* l_Lean_Parser_tacticSymbolInfo___elambda__2___boxed(lean_object* x_1) { -_start: -{ -lean_object* x_2; -x_2 = l_Lean_Parser_tacticSymbolInfo___elambda__2(x_1); -lean_dec(x_1); -return x_2; -} -} -lean_object* l_Lean_Parser_tacticSymbol(lean_object* x_1) { -_start: -{ -lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; -x_2 = l_String_trim(x_1); -lean_inc(x_2); -x_3 = l_Lean_Parser_tacticSymbolInfo(x_2); -x_4 = lean_alloc_closure((void*)(l_Lean_Parser_nonReservedSymbol___lambda__1___boxed), 4, 1); -lean_closure_set(x_4, 0, x_2); -x_5 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_5, 0, x_3); -lean_ctor_set(x_5, 1, x_4); -return x_5; -} -} -lean_object* l_Lean_Parser_tacticSymbol___boxed(lean_object* x_1) { -_start: -{ -lean_object* x_2; -x_2 = l_Lean_Parser_tacticSymbol(x_1); -lean_dec(x_1); -return x_2; -} -} lean_object* l_Lean_Parser_currLbp(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { @@ -28826,48 +28771,49 @@ return x_281; } case 12: { -lean_object* x_282; lean_object* x_283; lean_object* x_284; lean_object* x_285; lean_object* x_286; lean_object* x_287; +lean_object* x_282; uint8_t x_283; lean_object* x_284; lean_object* x_285; lean_object* x_286; lean_object* x_287; lean_object* x_288; lean_dec(x_1); x_282 = lean_ctor_get(x_3, 0); lean_inc(x_282); +x_283 = lean_ctor_get_uint8(x_3, sizeof(void*)*1); lean_dec(x_3); -x_283 = l_String_trim(x_282); +x_284 = l_String_trim(x_282); lean_dec(x_282); -lean_inc(x_283); -x_284 = l_Lean_Parser_tacticSymbolInfo(x_283); -x_285 = lean_alloc_closure((void*)(l_Lean_Parser_nonReservedSymbol___lambda__1___boxed), 4, 1); -lean_closure_set(x_285, 0, x_283); -x_286 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_286, 0, x_284); -lean_ctor_set(x_286, 1, x_285); -x_287 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_287, 0, x_286); -return x_287; +lean_inc(x_284); +x_285 = l_Lean_Parser_nonReservedSymbolInfo(x_284, x_283); +x_286 = lean_alloc_closure((void*)(l_Lean_Parser_nonReservedSymbol___lambda__1___boxed), 4, 1); +lean_closure_set(x_286, 0, x_284); +x_287 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_287, 0, x_285); +lean_ctor_set(x_287, 1, x_286); +x_288 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_288, 0, x_287); +return x_288; } default: { -lean_object* x_288; lean_object* x_289; lean_object* x_290; -x_288 = lean_ctor_get(x_3, 0); -lean_inc(x_288); -x_289 = lean_ctor_get(x_3, 1); +lean_object* x_289; lean_object* x_290; lean_object* x_291; +x_289 = lean_ctor_get(x_3, 0); lean_inc(x_289); +x_290 = lean_ctor_get(x_3, 1); +lean_inc(x_290); lean_dec(x_3); -x_290 = l_PersistentHashMap_find_x3f___at_Lean_Parser_addLeadingParser___spec__1(x_1, x_288); -if (lean_obj_tag(x_290) == 0) +x_291 = l_PersistentHashMap_find_x3f___at_Lean_Parser_addLeadingParser___spec__1(x_1, x_289); +if (lean_obj_tag(x_291) == 0) { -lean_object* x_291; -lean_dec(x_289); -x_291 = l_Lean_Parser_throwUnknownParserCategory___rarg(x_288); -return x_291; +lean_object* x_292; +lean_dec(x_290); +x_292 = l_Lean_Parser_throwUnknownParserCategory___rarg(x_289); +return x_292; } else { -lean_object* x_292; lean_object* x_293; -lean_dec(x_290); -x_292 = l_Lean_Parser_categoryParser(x_2, x_288, x_289); -x_293 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_293, 0, x_292); -return x_293; +lean_object* x_293; lean_object* x_294; +lean_dec(x_291); +x_293 = l_Lean_Parser_categoryParser(x_2, x_289, x_290); +x_294 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_294, 0, x_293); +return x_294; } } } @@ -28877,1069 +28823,1069 @@ else switch (lean_obj_tag(x_3)) { case 0: { -lean_object* x_294; lean_object* x_295; lean_object* x_296; -x_294 = lean_ctor_get(x_3, 0); -lean_inc(x_294); -x_295 = lean_ctor_get(x_3, 1); +lean_object* x_295; lean_object* x_296; lean_object* x_297; +x_295 = lean_ctor_get(x_3, 0); lean_inc(x_295); +x_296 = lean_ctor_get(x_3, 1); +lean_inc(x_296); lean_dec(x_3); lean_inc(x_1); -x_296 = l_Lean_Parser_compileParserDescr___main(x_1, x_2, x_294); -if (lean_obj_tag(x_296) == 0) +x_297 = l_Lean_Parser_compileParserDescr___main(x_1, x_2, x_295); +if (lean_obj_tag(x_297) == 0) { -uint8_t x_297; -lean_dec(x_295); +uint8_t x_298; +lean_dec(x_296); lean_dec(x_1); -x_297 = !lean_is_exclusive(x_296); -if (x_297 == 0) +x_298 = !lean_is_exclusive(x_297); +if (x_298 == 0) { -return x_296; +return x_297; } else { -lean_object* x_298; lean_object* x_299; -x_298 = lean_ctor_get(x_296, 0); -lean_inc(x_298); -lean_dec(x_296); -x_299 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_299, 0, x_298); -return x_299; +lean_object* x_299; lean_object* x_300; +x_299 = lean_ctor_get(x_297, 0); +lean_inc(x_299); +lean_dec(x_297); +x_300 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_300, 0, x_299); +return x_300; } } else { -lean_object* x_300; lean_object* x_301; -x_300 = lean_ctor_get(x_296, 0); -lean_inc(x_300); -lean_dec(x_296); -x_301 = l_Lean_Parser_compileParserDescr___main(x_1, x_2, x_295); -if (lean_obj_tag(x_301) == 0) +lean_object* x_301; lean_object* x_302; +x_301 = lean_ctor_get(x_297, 0); +lean_inc(x_301); +lean_dec(x_297); +x_302 = l_Lean_Parser_compileParserDescr___main(x_1, x_2, x_296); +if (lean_obj_tag(x_302) == 0) { -uint8_t x_302; -lean_dec(x_300); -x_302 = !lean_is_exclusive(x_301); -if (x_302 == 0) -{ -return x_301; -} -else -{ -lean_object* x_303; lean_object* x_304; -x_303 = lean_ctor_get(x_301, 0); -lean_inc(x_303); +uint8_t x_303; lean_dec(x_301); -x_304 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_304, 0, x_303); -return x_304; +x_303 = !lean_is_exclusive(x_302); +if (x_303 == 0) +{ +return x_302; +} +else +{ +lean_object* x_304; lean_object* x_305; +x_304 = lean_ctor_get(x_302, 0); +lean_inc(x_304); +lean_dec(x_302); +x_305 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_305, 0, x_304); +return x_305; } } else { -uint8_t x_305; -x_305 = !lean_is_exclusive(x_301); -if (x_305 == 0) +uint8_t x_306; +x_306 = !lean_is_exclusive(x_302); +if (x_306 == 0) { -lean_object* x_306; lean_object* x_307; lean_object* x_308; lean_object* x_309; lean_object* x_310; lean_object* x_311; lean_object* x_312; lean_object* x_313; -x_306 = lean_ctor_get(x_301, 0); -x_307 = lean_ctor_get(x_300, 0); -lean_inc(x_307); -x_308 = lean_ctor_get(x_306, 0); +lean_object* x_307; lean_object* x_308; lean_object* x_309; lean_object* x_310; lean_object* x_311; lean_object* x_312; lean_object* x_313; lean_object* x_314; +x_307 = lean_ctor_get(x_302, 0); +x_308 = lean_ctor_get(x_301, 0); lean_inc(x_308); -x_309 = l_Lean_Parser_andthenInfo(x_307, x_308); -x_310 = lean_ctor_get(x_300, 1); -lean_inc(x_310); -lean_dec(x_300); -x_311 = lean_ctor_get(x_306, 1); +x_309 = lean_ctor_get(x_307, 0); +lean_inc(x_309); +x_310 = l_Lean_Parser_andthenInfo(x_308, x_309); +x_311 = lean_ctor_get(x_301, 1); lean_inc(x_311); -lean_dec(x_306); -x_312 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn___rarg), 5, 2); -lean_closure_set(x_312, 0, x_310); -lean_closure_set(x_312, 1, x_311); -x_313 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_313, 0, x_309); -lean_ctor_set(x_313, 1, x_312); -lean_ctor_set(x_301, 0, x_313); -return x_301; +lean_dec(x_301); +x_312 = lean_ctor_get(x_307, 1); +lean_inc(x_312); +lean_dec(x_307); +x_313 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn___rarg), 5, 2); +lean_closure_set(x_313, 0, x_311); +lean_closure_set(x_313, 1, x_312); +x_314 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_314, 0, x_310); +lean_ctor_set(x_314, 1, x_313); +lean_ctor_set(x_302, 0, x_314); +return x_302; } else { -lean_object* x_314; lean_object* x_315; lean_object* x_316; lean_object* x_317; lean_object* x_318; lean_object* x_319; lean_object* x_320; lean_object* x_321; lean_object* x_322; -x_314 = lean_ctor_get(x_301, 0); -lean_inc(x_314); -lean_dec(x_301); -x_315 = lean_ctor_get(x_300, 0); +lean_object* x_315; lean_object* x_316; lean_object* x_317; lean_object* x_318; lean_object* x_319; lean_object* x_320; lean_object* x_321; lean_object* x_322; lean_object* x_323; +x_315 = lean_ctor_get(x_302, 0); lean_inc(x_315); -x_316 = lean_ctor_get(x_314, 0); +lean_dec(x_302); +x_316 = lean_ctor_get(x_301, 0); lean_inc(x_316); -x_317 = l_Lean_Parser_andthenInfo(x_315, x_316); -x_318 = lean_ctor_get(x_300, 1); -lean_inc(x_318); -lean_dec(x_300); -x_319 = lean_ctor_get(x_314, 1); +x_317 = lean_ctor_get(x_315, 0); +lean_inc(x_317); +x_318 = l_Lean_Parser_andthenInfo(x_316, x_317); +x_319 = lean_ctor_get(x_301, 1); lean_inc(x_319); -lean_dec(x_314); -x_320 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn___rarg), 5, 2); -lean_closure_set(x_320, 0, x_318); -lean_closure_set(x_320, 1, x_319); -x_321 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_321, 0, x_317); -lean_ctor_set(x_321, 1, x_320); -x_322 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_322, 0, x_321); -return x_322; +lean_dec(x_301); +x_320 = lean_ctor_get(x_315, 1); +lean_inc(x_320); +lean_dec(x_315); +x_321 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn___rarg), 5, 2); +lean_closure_set(x_321, 0, x_319); +lean_closure_set(x_321, 1, x_320); +x_322 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_322, 0, x_318); +lean_ctor_set(x_322, 1, x_321); +x_323 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_323, 0, x_322); +return x_323; } } } } case 1: { -lean_object* x_323; lean_object* x_324; lean_object* x_325; -x_323 = lean_ctor_get(x_3, 0); -lean_inc(x_323); -x_324 = lean_ctor_get(x_3, 1); +lean_object* x_324; lean_object* x_325; lean_object* x_326; +x_324 = lean_ctor_get(x_3, 0); lean_inc(x_324); +x_325 = lean_ctor_get(x_3, 1); +lean_inc(x_325); lean_dec(x_3); lean_inc(x_1); -x_325 = l_Lean_Parser_compileParserDescr___main(x_1, x_2, x_323); -if (lean_obj_tag(x_325) == 0) +x_326 = l_Lean_Parser_compileParserDescr___main(x_1, x_2, x_324); +if (lean_obj_tag(x_326) == 0) { -uint8_t x_326; -lean_dec(x_324); +uint8_t x_327; +lean_dec(x_325); lean_dec(x_1); -x_326 = !lean_is_exclusive(x_325); -if (x_326 == 0) +x_327 = !lean_is_exclusive(x_326); +if (x_327 == 0) { -return x_325; +return x_326; } else { -lean_object* x_327; lean_object* x_328; -x_327 = lean_ctor_get(x_325, 0); -lean_inc(x_327); -lean_dec(x_325); -x_328 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_328, 0, x_327); -return x_328; +lean_object* x_328; lean_object* x_329; +x_328 = lean_ctor_get(x_326, 0); +lean_inc(x_328); +lean_dec(x_326); +x_329 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_329, 0, x_328); +return x_329; } } else { -lean_object* x_329; lean_object* x_330; -x_329 = lean_ctor_get(x_325, 0); -lean_inc(x_329); -lean_dec(x_325); -x_330 = l_Lean_Parser_compileParserDescr___main(x_1, x_2, x_324); -if (lean_obj_tag(x_330) == 0) +lean_object* x_330; lean_object* x_331; +x_330 = lean_ctor_get(x_326, 0); +lean_inc(x_330); +lean_dec(x_326); +x_331 = l_Lean_Parser_compileParserDescr___main(x_1, x_2, x_325); +if (lean_obj_tag(x_331) == 0) { -uint8_t x_331; -lean_dec(x_329); -x_331 = !lean_is_exclusive(x_330); -if (x_331 == 0) -{ -return x_330; -} -else -{ -lean_object* x_332; lean_object* x_333; -x_332 = lean_ctor_get(x_330, 0); -lean_inc(x_332); +uint8_t x_332; lean_dec(x_330); -x_333 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_333, 0, x_332); -return x_333; +x_332 = !lean_is_exclusive(x_331); +if (x_332 == 0) +{ +return x_331; +} +else +{ +lean_object* x_333; lean_object* x_334; +x_333 = lean_ctor_get(x_331, 0); +lean_inc(x_333); +lean_dec(x_331); +x_334 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_334, 0, x_333); +return x_334; } } else { -uint8_t x_334; -x_334 = !lean_is_exclusive(x_330); -if (x_334 == 0) +uint8_t x_335; +x_335 = !lean_is_exclusive(x_331); +if (x_335 == 0) { -lean_object* x_335; lean_object* x_336; lean_object* x_337; lean_object* x_338; lean_object* x_339; lean_object* x_340; lean_object* x_341; lean_object* x_342; -x_335 = lean_ctor_get(x_330, 0); -x_336 = lean_ctor_get(x_329, 0); -lean_inc(x_336); -x_337 = lean_ctor_get(x_335, 0); +lean_object* x_336; lean_object* x_337; lean_object* x_338; lean_object* x_339; lean_object* x_340; lean_object* x_341; lean_object* x_342; lean_object* x_343; +x_336 = lean_ctor_get(x_331, 0); +x_337 = lean_ctor_get(x_330, 0); lean_inc(x_337); -x_338 = l_Lean_Parser_orelseInfo(x_336, x_337); -x_339 = lean_ctor_get(x_329, 1); -lean_inc(x_339); -lean_dec(x_329); -x_340 = lean_ctor_get(x_335, 1); +x_338 = lean_ctor_get(x_336, 0); +lean_inc(x_338); +x_339 = l_Lean_Parser_orelseInfo(x_337, x_338); +x_340 = lean_ctor_get(x_330, 1); lean_inc(x_340); -lean_dec(x_335); -x_341 = lean_alloc_closure((void*)(l_Lean_Parser_orelseFn___rarg), 5, 2); -lean_closure_set(x_341, 0, x_339); -lean_closure_set(x_341, 1, x_340); -x_342 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_342, 0, x_338); -lean_ctor_set(x_342, 1, x_341); -lean_ctor_set(x_330, 0, x_342); -return x_330; +lean_dec(x_330); +x_341 = lean_ctor_get(x_336, 1); +lean_inc(x_341); +lean_dec(x_336); +x_342 = lean_alloc_closure((void*)(l_Lean_Parser_orelseFn___rarg), 5, 2); +lean_closure_set(x_342, 0, x_340); +lean_closure_set(x_342, 1, x_341); +x_343 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_343, 0, x_339); +lean_ctor_set(x_343, 1, x_342); +lean_ctor_set(x_331, 0, x_343); +return x_331; } else { -lean_object* x_343; lean_object* x_344; lean_object* x_345; lean_object* x_346; lean_object* x_347; lean_object* x_348; lean_object* x_349; lean_object* x_350; lean_object* x_351; -x_343 = lean_ctor_get(x_330, 0); -lean_inc(x_343); -lean_dec(x_330); -x_344 = lean_ctor_get(x_329, 0); +lean_object* x_344; lean_object* x_345; lean_object* x_346; lean_object* x_347; lean_object* x_348; lean_object* x_349; lean_object* x_350; lean_object* x_351; lean_object* x_352; +x_344 = lean_ctor_get(x_331, 0); lean_inc(x_344); -x_345 = lean_ctor_get(x_343, 0); +lean_dec(x_331); +x_345 = lean_ctor_get(x_330, 0); lean_inc(x_345); -x_346 = l_Lean_Parser_orelseInfo(x_344, x_345); -x_347 = lean_ctor_get(x_329, 1); -lean_inc(x_347); -lean_dec(x_329); -x_348 = lean_ctor_get(x_343, 1); +x_346 = lean_ctor_get(x_344, 0); +lean_inc(x_346); +x_347 = l_Lean_Parser_orelseInfo(x_345, x_346); +x_348 = lean_ctor_get(x_330, 1); lean_inc(x_348); -lean_dec(x_343); -x_349 = lean_alloc_closure((void*)(l_Lean_Parser_orelseFn___rarg), 5, 2); -lean_closure_set(x_349, 0, x_347); -lean_closure_set(x_349, 1, x_348); -x_350 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_350, 0, x_346); -lean_ctor_set(x_350, 1, x_349); -x_351 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_351, 0, x_350); -return x_351; +lean_dec(x_330); +x_349 = lean_ctor_get(x_344, 1); +lean_inc(x_349); +lean_dec(x_344); +x_350 = lean_alloc_closure((void*)(l_Lean_Parser_orelseFn___rarg), 5, 2); +lean_closure_set(x_350, 0, x_348); +lean_closure_set(x_350, 1, x_349); +x_351 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_351, 0, x_347); +lean_ctor_set(x_351, 1, x_350); +x_352 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_352, 0, x_351); +return x_352; } } } } case 2: { -lean_object* x_352; lean_object* x_353; -x_352 = lean_ctor_get(x_3, 0); -lean_inc(x_352); +lean_object* x_353; lean_object* x_354; +x_353 = lean_ctor_get(x_3, 0); +lean_inc(x_353); lean_dec(x_3); -x_353 = l_Lean_Parser_compileParserDescr___main(x_1, x_2, x_352); -if (lean_obj_tag(x_353) == 0) +x_354 = l_Lean_Parser_compileParserDescr___main(x_1, x_2, x_353); +if (lean_obj_tag(x_354) == 0) { -uint8_t x_354; -x_354 = !lean_is_exclusive(x_353); -if (x_354 == 0) +uint8_t x_355; +x_355 = !lean_is_exclusive(x_354); +if (x_355 == 0) { -return x_353; +return x_354; } else { -lean_object* x_355; lean_object* x_356; -x_355 = lean_ctor_get(x_353, 0); -lean_inc(x_355); -lean_dec(x_353); -x_356 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_356, 0, x_355); -return x_356; +lean_object* x_356; lean_object* x_357; +x_356 = lean_ctor_get(x_354, 0); +lean_inc(x_356); +lean_dec(x_354); +x_357 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_357, 0, x_356); +return x_357; } } else { -uint8_t x_357; -x_357 = !lean_is_exclusive(x_353); -if (x_357 == 0) +uint8_t x_358; +x_358 = !lean_is_exclusive(x_354); +if (x_358 == 0) { -lean_object* x_358; lean_object* x_359; lean_object* x_360; lean_object* x_361; lean_object* x_362; lean_object* x_363; -x_358 = lean_ctor_get(x_353, 0); -x_359 = lean_ctor_get(x_358, 0); -lean_inc(x_359); -x_360 = l_Lean_Parser_optionaInfo(x_359); -x_361 = lean_ctor_get(x_358, 1); -lean_inc(x_361); -lean_dec(x_358); -x_362 = lean_alloc_closure((void*)(l_Lean_Parser_optionalFn___rarg), 4, 1); -lean_closure_set(x_362, 0, x_361); -x_363 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_363, 0, x_360); -lean_ctor_set(x_363, 1, x_362); -lean_ctor_set(x_353, 0, x_363); -return x_353; +lean_object* x_359; lean_object* x_360; lean_object* x_361; lean_object* x_362; lean_object* x_363; lean_object* x_364; +x_359 = lean_ctor_get(x_354, 0); +x_360 = lean_ctor_get(x_359, 0); +lean_inc(x_360); +x_361 = l_Lean_Parser_optionaInfo(x_360); +x_362 = lean_ctor_get(x_359, 1); +lean_inc(x_362); +lean_dec(x_359); +x_363 = lean_alloc_closure((void*)(l_Lean_Parser_optionalFn___rarg), 4, 1); +lean_closure_set(x_363, 0, x_362); +x_364 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_364, 0, x_361); +lean_ctor_set(x_364, 1, x_363); +lean_ctor_set(x_354, 0, x_364); +return x_354; } else { -lean_object* x_364; lean_object* x_365; lean_object* x_366; lean_object* x_367; lean_object* x_368; lean_object* x_369; lean_object* x_370; -x_364 = lean_ctor_get(x_353, 0); -lean_inc(x_364); -lean_dec(x_353); -x_365 = lean_ctor_get(x_364, 0); +lean_object* x_365; lean_object* x_366; lean_object* x_367; lean_object* x_368; lean_object* x_369; lean_object* x_370; lean_object* x_371; +x_365 = lean_ctor_get(x_354, 0); lean_inc(x_365); -x_366 = l_Lean_Parser_optionaInfo(x_365); -x_367 = lean_ctor_get(x_364, 1); -lean_inc(x_367); -lean_dec(x_364); -x_368 = lean_alloc_closure((void*)(l_Lean_Parser_optionalFn___rarg), 4, 1); -lean_closure_set(x_368, 0, x_367); -x_369 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_369, 0, x_366); -lean_ctor_set(x_369, 1, x_368); -x_370 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_370, 0, x_369); -return x_370; +lean_dec(x_354); +x_366 = lean_ctor_get(x_365, 0); +lean_inc(x_366); +x_367 = l_Lean_Parser_optionaInfo(x_366); +x_368 = lean_ctor_get(x_365, 1); +lean_inc(x_368); +lean_dec(x_365); +x_369 = lean_alloc_closure((void*)(l_Lean_Parser_optionalFn___rarg), 4, 1); +lean_closure_set(x_369, 0, x_368); +x_370 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_370, 0, x_367); +lean_ctor_set(x_370, 1, x_369); +x_371 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_371, 0, x_370); +return x_371; } } } case 3: { -lean_object* x_371; lean_object* x_372; -x_371 = lean_ctor_get(x_3, 0); -lean_inc(x_371); +lean_object* x_372; lean_object* x_373; +x_372 = lean_ctor_get(x_3, 0); +lean_inc(x_372); lean_dec(x_3); -x_372 = l_Lean_Parser_compileParserDescr___main(x_1, x_2, x_371); -if (lean_obj_tag(x_372) == 0) +x_373 = l_Lean_Parser_compileParserDescr___main(x_1, x_2, x_372); +if (lean_obj_tag(x_373) == 0) { -uint8_t x_373; -x_373 = !lean_is_exclusive(x_372); -if (x_373 == 0) +uint8_t x_374; +x_374 = !lean_is_exclusive(x_373); +if (x_374 == 0) { -return x_372; +return x_373; } else { -lean_object* x_374; lean_object* x_375; -x_374 = lean_ctor_get(x_372, 0); -lean_inc(x_374); -lean_dec(x_372); -x_375 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_375, 0, x_374); -return x_375; +lean_object* x_375; lean_object* x_376; +x_375 = lean_ctor_get(x_373, 0); +lean_inc(x_375); +lean_dec(x_373); +x_376 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_376, 0, x_375); +return x_376; } } else { -uint8_t x_376; -x_376 = !lean_is_exclusive(x_372); -if (x_376 == 0) +uint8_t x_377; +x_377 = !lean_is_exclusive(x_373); +if (x_377 == 0) { -lean_object* x_377; uint8_t x_378; -x_377 = lean_ctor_get(x_372, 0); -x_378 = !lean_is_exclusive(x_377); -if (x_378 == 0) +lean_object* x_378; uint8_t x_379; +x_378 = lean_ctor_get(x_373, 0); +x_379 = !lean_is_exclusive(x_378); +if (x_379 == 0) { -lean_object* x_379; lean_object* x_380; -x_379 = lean_ctor_get(x_377, 1); -x_380 = lean_alloc_closure((void*)(l_Lean_Parser_lookaheadFn___rarg), 4, 1); -lean_closure_set(x_380, 0, x_379); -lean_ctor_set(x_377, 1, x_380); -return x_372; +lean_object* x_380; lean_object* x_381; +x_380 = lean_ctor_get(x_378, 1); +x_381 = lean_alloc_closure((void*)(l_Lean_Parser_lookaheadFn___rarg), 4, 1); +lean_closure_set(x_381, 0, x_380); +lean_ctor_set(x_378, 1, x_381); +return x_373; } else { -lean_object* x_381; lean_object* x_382; lean_object* x_383; lean_object* x_384; -x_381 = lean_ctor_get(x_377, 0); -x_382 = lean_ctor_get(x_377, 1); +lean_object* x_382; lean_object* x_383; lean_object* x_384; lean_object* x_385; +x_382 = lean_ctor_get(x_378, 0); +x_383 = lean_ctor_get(x_378, 1); +lean_inc(x_383); lean_inc(x_382); -lean_inc(x_381); -lean_dec(x_377); -x_383 = lean_alloc_closure((void*)(l_Lean_Parser_lookaheadFn___rarg), 4, 1); -lean_closure_set(x_383, 0, x_382); -x_384 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_384, 0, x_381); -lean_ctor_set(x_384, 1, x_383); -lean_ctor_set(x_372, 0, x_384); -return x_372; +lean_dec(x_378); +x_384 = lean_alloc_closure((void*)(l_Lean_Parser_lookaheadFn___rarg), 4, 1); +lean_closure_set(x_384, 0, x_383); +x_385 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_385, 0, x_382); +lean_ctor_set(x_385, 1, x_384); +lean_ctor_set(x_373, 0, x_385); +return x_373; } } else { -lean_object* x_385; lean_object* x_386; lean_object* x_387; lean_object* x_388; lean_object* x_389; lean_object* x_390; lean_object* x_391; -x_385 = lean_ctor_get(x_372, 0); -lean_inc(x_385); -lean_dec(x_372); -x_386 = lean_ctor_get(x_385, 0); +lean_object* x_386; lean_object* x_387; lean_object* x_388; lean_object* x_389; lean_object* x_390; lean_object* x_391; lean_object* x_392; +x_386 = lean_ctor_get(x_373, 0); lean_inc(x_386); -x_387 = lean_ctor_get(x_385, 1); +lean_dec(x_373); +x_387 = lean_ctor_get(x_386, 0); lean_inc(x_387); -if (lean_is_exclusive(x_385)) { - lean_ctor_release(x_385, 0); - lean_ctor_release(x_385, 1); - x_388 = x_385; +x_388 = lean_ctor_get(x_386, 1); +lean_inc(x_388); +if (lean_is_exclusive(x_386)) { + lean_ctor_release(x_386, 0); + lean_ctor_release(x_386, 1); + x_389 = x_386; } else { - lean_dec_ref(x_385); - x_388 = lean_box(0); + lean_dec_ref(x_386); + x_389 = lean_box(0); } -x_389 = lean_alloc_closure((void*)(l_Lean_Parser_lookaheadFn___rarg), 4, 1); -lean_closure_set(x_389, 0, x_387); -if (lean_is_scalar(x_388)) { - x_390 = lean_alloc_ctor(0, 2, 0); +x_390 = lean_alloc_closure((void*)(l_Lean_Parser_lookaheadFn___rarg), 4, 1); +lean_closure_set(x_390, 0, x_388); +if (lean_is_scalar(x_389)) { + x_391 = lean_alloc_ctor(0, 2, 0); } else { - x_390 = x_388; + x_391 = x_389; } -lean_ctor_set(x_390, 0, x_386); -lean_ctor_set(x_390, 1, x_389); -x_391 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_391, 0, x_390); -return x_391; +lean_ctor_set(x_391, 0, x_387); +lean_ctor_set(x_391, 1, x_390); +x_392 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_392, 0, x_391); +return x_392; } } } case 4: { -lean_object* x_392; lean_object* x_393; -x_392 = lean_ctor_get(x_3, 0); -lean_inc(x_392); +lean_object* x_393; lean_object* x_394; +x_393 = lean_ctor_get(x_3, 0); +lean_inc(x_393); lean_dec(x_3); -x_393 = l_Lean_Parser_compileParserDescr___main(x_1, x_2, x_392); -if (lean_obj_tag(x_393) == 0) +x_394 = l_Lean_Parser_compileParserDescr___main(x_1, x_2, x_393); +if (lean_obj_tag(x_394) == 0) { -uint8_t x_394; -x_394 = !lean_is_exclusive(x_393); -if (x_394 == 0) +uint8_t x_395; +x_395 = !lean_is_exclusive(x_394); +if (x_395 == 0) { -return x_393; +return x_394; } else { -lean_object* x_395; lean_object* x_396; -x_395 = lean_ctor_get(x_393, 0); -lean_inc(x_395); -lean_dec(x_393); -x_396 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_396, 0, x_395); -return x_396; +lean_object* x_396; lean_object* x_397; +x_396 = lean_ctor_get(x_394, 0); +lean_inc(x_396); +lean_dec(x_394); +x_397 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_397, 0, x_396); +return x_397; } } else { -uint8_t x_397; -x_397 = !lean_is_exclusive(x_393); -if (x_397 == 0) +uint8_t x_398; +x_398 = !lean_is_exclusive(x_394); +if (x_398 == 0) { -lean_object* x_398; uint8_t x_399; -x_398 = lean_ctor_get(x_393, 0); -x_399 = !lean_is_exclusive(x_398); -if (x_399 == 0) +lean_object* x_399; uint8_t x_400; +x_399 = lean_ctor_get(x_394, 0); +x_400 = !lean_is_exclusive(x_399); +if (x_400 == 0) { -lean_object* x_400; lean_object* x_401; -x_400 = lean_ctor_get(x_398, 1); -x_401 = lean_alloc_closure((void*)(l_Lean_Parser_tryFn___rarg), 4, 1); -lean_closure_set(x_401, 0, x_400); -lean_ctor_set(x_398, 1, x_401); -return x_393; +lean_object* x_401; lean_object* x_402; +x_401 = lean_ctor_get(x_399, 1); +x_402 = lean_alloc_closure((void*)(l_Lean_Parser_tryFn___rarg), 4, 1); +lean_closure_set(x_402, 0, x_401); +lean_ctor_set(x_399, 1, x_402); +return x_394; } else { -lean_object* x_402; lean_object* x_403; lean_object* x_404; lean_object* x_405; -x_402 = lean_ctor_get(x_398, 0); -x_403 = lean_ctor_get(x_398, 1); +lean_object* x_403; lean_object* x_404; lean_object* x_405; lean_object* x_406; +x_403 = lean_ctor_get(x_399, 0); +x_404 = lean_ctor_get(x_399, 1); +lean_inc(x_404); lean_inc(x_403); -lean_inc(x_402); -lean_dec(x_398); -x_404 = lean_alloc_closure((void*)(l_Lean_Parser_tryFn___rarg), 4, 1); -lean_closure_set(x_404, 0, x_403); -x_405 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_405, 0, x_402); -lean_ctor_set(x_405, 1, x_404); -lean_ctor_set(x_393, 0, x_405); -return x_393; +lean_dec(x_399); +x_405 = lean_alloc_closure((void*)(l_Lean_Parser_tryFn___rarg), 4, 1); +lean_closure_set(x_405, 0, x_404); +x_406 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_406, 0, x_403); +lean_ctor_set(x_406, 1, x_405); +lean_ctor_set(x_394, 0, x_406); +return x_394; } } else { -lean_object* x_406; lean_object* x_407; lean_object* x_408; lean_object* x_409; lean_object* x_410; lean_object* x_411; lean_object* x_412; -x_406 = lean_ctor_get(x_393, 0); -lean_inc(x_406); -lean_dec(x_393); -x_407 = lean_ctor_get(x_406, 0); +lean_object* x_407; lean_object* x_408; lean_object* x_409; lean_object* x_410; lean_object* x_411; lean_object* x_412; lean_object* x_413; +x_407 = lean_ctor_get(x_394, 0); lean_inc(x_407); -x_408 = lean_ctor_get(x_406, 1); +lean_dec(x_394); +x_408 = lean_ctor_get(x_407, 0); lean_inc(x_408); -if (lean_is_exclusive(x_406)) { - lean_ctor_release(x_406, 0); - lean_ctor_release(x_406, 1); - x_409 = x_406; +x_409 = lean_ctor_get(x_407, 1); +lean_inc(x_409); +if (lean_is_exclusive(x_407)) { + lean_ctor_release(x_407, 0); + lean_ctor_release(x_407, 1); + x_410 = x_407; } else { - lean_dec_ref(x_406); - x_409 = lean_box(0); + lean_dec_ref(x_407); + x_410 = lean_box(0); } -x_410 = lean_alloc_closure((void*)(l_Lean_Parser_tryFn___rarg), 4, 1); -lean_closure_set(x_410, 0, x_408); -if (lean_is_scalar(x_409)) { - x_411 = lean_alloc_ctor(0, 2, 0); +x_411 = lean_alloc_closure((void*)(l_Lean_Parser_tryFn___rarg), 4, 1); +lean_closure_set(x_411, 0, x_409); +if (lean_is_scalar(x_410)) { + x_412 = lean_alloc_ctor(0, 2, 0); } else { - x_411 = x_409; + x_412 = x_410; } -lean_ctor_set(x_411, 0, x_407); -lean_ctor_set(x_411, 1, x_410); -x_412 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_412, 0, x_411); -return x_412; +lean_ctor_set(x_412, 0, x_408); +lean_ctor_set(x_412, 1, x_411); +x_413 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_413, 0, x_412); +return x_413; } } } case 5: { -lean_object* x_413; lean_object* x_414; -x_413 = lean_ctor_get(x_3, 0); -lean_inc(x_413); +lean_object* x_414; lean_object* x_415; +x_414 = lean_ctor_get(x_3, 0); +lean_inc(x_414); lean_dec(x_3); -x_414 = l_Lean_Parser_compileParserDescr___main(x_1, x_2, x_413); -if (lean_obj_tag(x_414) == 0) +x_415 = l_Lean_Parser_compileParserDescr___main(x_1, x_2, x_414); +if (lean_obj_tag(x_415) == 0) { -uint8_t x_415; -x_415 = !lean_is_exclusive(x_414); -if (x_415 == 0) +uint8_t x_416; +x_416 = !lean_is_exclusive(x_415); +if (x_416 == 0) { -return x_414; +return x_415; } else { -lean_object* x_416; lean_object* x_417; -x_416 = lean_ctor_get(x_414, 0); -lean_inc(x_416); -lean_dec(x_414); -x_417 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_417, 0, x_416); -return x_417; +lean_object* x_417; lean_object* x_418; +x_417 = lean_ctor_get(x_415, 0); +lean_inc(x_417); +lean_dec(x_415); +x_418 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_418, 0, x_417); +return x_418; } } else { -uint8_t x_418; -x_418 = !lean_is_exclusive(x_414); -if (x_418 == 0) +uint8_t x_419; +x_419 = !lean_is_exclusive(x_415); +if (x_419 == 0) { -lean_object* x_419; lean_object* x_420; lean_object* x_421; lean_object* x_422; lean_object* x_423; lean_object* x_424; lean_object* x_425; -x_419 = lean_ctor_get(x_414, 0); -x_420 = lean_ctor_get(x_419, 0); -lean_inc(x_420); -x_421 = l_Lean_Parser_noFirstTokenInfo(x_420); -x_422 = lean_ctor_get(x_419, 1); -lean_inc(x_422); -lean_dec(x_419); -x_423 = lean_box(x_2); -x_424 = lean_alloc_closure((void*)(l_Lean_Parser_manyFn___boxed), 5, 2); -lean_closure_set(x_424, 0, x_423); -lean_closure_set(x_424, 1, x_422); -x_425 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_425, 0, x_421); -lean_ctor_set(x_425, 1, x_424); -lean_ctor_set(x_414, 0, x_425); -return x_414; +lean_object* x_420; lean_object* x_421; lean_object* x_422; lean_object* x_423; lean_object* x_424; lean_object* x_425; lean_object* x_426; +x_420 = lean_ctor_get(x_415, 0); +x_421 = lean_ctor_get(x_420, 0); +lean_inc(x_421); +x_422 = l_Lean_Parser_noFirstTokenInfo(x_421); +x_423 = lean_ctor_get(x_420, 1); +lean_inc(x_423); +lean_dec(x_420); +x_424 = lean_box(x_2); +x_425 = lean_alloc_closure((void*)(l_Lean_Parser_manyFn___boxed), 5, 2); +lean_closure_set(x_425, 0, x_424); +lean_closure_set(x_425, 1, x_423); +x_426 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_426, 0, x_422); +lean_ctor_set(x_426, 1, x_425); +lean_ctor_set(x_415, 0, x_426); +return x_415; } else { -lean_object* x_426; lean_object* x_427; lean_object* x_428; lean_object* x_429; lean_object* x_430; lean_object* x_431; lean_object* x_432; lean_object* x_433; -x_426 = lean_ctor_get(x_414, 0); -lean_inc(x_426); -lean_dec(x_414); -x_427 = lean_ctor_get(x_426, 0); +lean_object* x_427; lean_object* x_428; lean_object* x_429; lean_object* x_430; lean_object* x_431; lean_object* x_432; lean_object* x_433; lean_object* x_434; +x_427 = lean_ctor_get(x_415, 0); lean_inc(x_427); -x_428 = l_Lean_Parser_noFirstTokenInfo(x_427); -x_429 = lean_ctor_get(x_426, 1); -lean_inc(x_429); -lean_dec(x_426); -x_430 = lean_box(x_2); -x_431 = lean_alloc_closure((void*)(l_Lean_Parser_manyFn___boxed), 5, 2); -lean_closure_set(x_431, 0, x_430); -lean_closure_set(x_431, 1, x_429); -x_432 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_432, 0, x_428); -lean_ctor_set(x_432, 1, x_431); -x_433 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_433, 0, x_432); -return x_433; +lean_dec(x_415); +x_428 = lean_ctor_get(x_427, 0); +lean_inc(x_428); +x_429 = l_Lean_Parser_noFirstTokenInfo(x_428); +x_430 = lean_ctor_get(x_427, 1); +lean_inc(x_430); +lean_dec(x_427); +x_431 = lean_box(x_2); +x_432 = lean_alloc_closure((void*)(l_Lean_Parser_manyFn___boxed), 5, 2); +lean_closure_set(x_432, 0, x_431); +lean_closure_set(x_432, 1, x_430); +x_433 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_433, 0, x_429); +lean_ctor_set(x_433, 1, x_432); +x_434 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_434, 0, x_433); +return x_434; } } } case 6: { -lean_object* x_434; lean_object* x_435; -x_434 = lean_ctor_get(x_3, 0); -lean_inc(x_434); +lean_object* x_435; lean_object* x_436; +x_435 = lean_ctor_get(x_3, 0); +lean_inc(x_435); lean_dec(x_3); -x_435 = l_Lean_Parser_compileParserDescr___main(x_1, x_2, x_434); -if (lean_obj_tag(x_435) == 0) +x_436 = l_Lean_Parser_compileParserDescr___main(x_1, x_2, x_435); +if (lean_obj_tag(x_436) == 0) { -uint8_t x_436; -x_436 = !lean_is_exclusive(x_435); -if (x_436 == 0) +uint8_t x_437; +x_437 = !lean_is_exclusive(x_436); +if (x_437 == 0) { -return x_435; +return x_436; } else { -lean_object* x_437; lean_object* x_438; -x_437 = lean_ctor_get(x_435, 0); -lean_inc(x_437); -lean_dec(x_435); -x_438 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_438, 0, x_437); -return x_438; +lean_object* x_438; lean_object* x_439; +x_438 = lean_ctor_get(x_436, 0); +lean_inc(x_438); +lean_dec(x_436); +x_439 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_439, 0, x_438); +return x_439; } } else { -uint8_t x_439; -x_439 = !lean_is_exclusive(x_435); -if (x_439 == 0) +uint8_t x_440; +x_440 = !lean_is_exclusive(x_436); +if (x_440 == 0) { -lean_object* x_440; uint8_t x_441; -x_440 = lean_ctor_get(x_435, 0); -x_441 = !lean_is_exclusive(x_440); -if (x_441 == 0) +lean_object* x_441; uint8_t x_442; +x_441 = lean_ctor_get(x_436, 0); +x_442 = !lean_is_exclusive(x_441); +if (x_442 == 0) { -lean_object* x_442; uint8_t x_443; lean_object* x_444; lean_object* x_445; lean_object* x_446; -x_442 = lean_ctor_get(x_440, 1); -x_443 = 0; -x_444 = lean_box(x_2); -x_445 = lean_box(x_443); -x_446 = lean_alloc_closure((void*)(l_Lean_Parser_many1Fn___boxed), 6, 3); -lean_closure_set(x_446, 0, x_444); -lean_closure_set(x_446, 1, x_442); -lean_closure_set(x_446, 2, x_445); -lean_ctor_set(x_440, 1, x_446); -return x_435; +lean_object* x_443; uint8_t x_444; lean_object* x_445; lean_object* x_446; lean_object* x_447; +x_443 = lean_ctor_get(x_441, 1); +x_444 = 0; +x_445 = lean_box(x_2); +x_446 = lean_box(x_444); +x_447 = lean_alloc_closure((void*)(l_Lean_Parser_many1Fn___boxed), 6, 3); +lean_closure_set(x_447, 0, x_445); +lean_closure_set(x_447, 1, x_443); +lean_closure_set(x_447, 2, x_446); +lean_ctor_set(x_441, 1, x_447); +return x_436; } else { -lean_object* x_447; lean_object* x_448; uint8_t x_449; lean_object* x_450; lean_object* x_451; lean_object* x_452; lean_object* x_453; -x_447 = lean_ctor_get(x_440, 0); -x_448 = lean_ctor_get(x_440, 1); +lean_object* x_448; lean_object* x_449; uint8_t x_450; lean_object* x_451; lean_object* x_452; lean_object* x_453; lean_object* x_454; +x_448 = lean_ctor_get(x_441, 0); +x_449 = lean_ctor_get(x_441, 1); +lean_inc(x_449); lean_inc(x_448); -lean_inc(x_447); -lean_dec(x_440); -x_449 = 0; -x_450 = lean_box(x_2); -x_451 = lean_box(x_449); -x_452 = lean_alloc_closure((void*)(l_Lean_Parser_many1Fn___boxed), 6, 3); -lean_closure_set(x_452, 0, x_450); -lean_closure_set(x_452, 1, x_448); -lean_closure_set(x_452, 2, x_451); -x_453 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_453, 0, x_447); -lean_ctor_set(x_453, 1, x_452); -lean_ctor_set(x_435, 0, x_453); -return x_435; +lean_dec(x_441); +x_450 = 0; +x_451 = lean_box(x_2); +x_452 = lean_box(x_450); +x_453 = lean_alloc_closure((void*)(l_Lean_Parser_many1Fn___boxed), 6, 3); +lean_closure_set(x_453, 0, x_451); +lean_closure_set(x_453, 1, x_449); +lean_closure_set(x_453, 2, x_452); +x_454 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_454, 0, x_448); +lean_ctor_set(x_454, 1, x_453); +lean_ctor_set(x_436, 0, x_454); +return x_436; } } else { -lean_object* x_454; lean_object* x_455; lean_object* x_456; lean_object* x_457; uint8_t x_458; lean_object* x_459; lean_object* x_460; lean_object* x_461; lean_object* x_462; lean_object* x_463; -x_454 = lean_ctor_get(x_435, 0); -lean_inc(x_454); -lean_dec(x_435); -x_455 = lean_ctor_get(x_454, 0); +lean_object* x_455; lean_object* x_456; lean_object* x_457; lean_object* x_458; uint8_t x_459; lean_object* x_460; lean_object* x_461; lean_object* x_462; lean_object* x_463; lean_object* x_464; +x_455 = lean_ctor_get(x_436, 0); lean_inc(x_455); -x_456 = lean_ctor_get(x_454, 1); +lean_dec(x_436); +x_456 = lean_ctor_get(x_455, 0); lean_inc(x_456); -if (lean_is_exclusive(x_454)) { - lean_ctor_release(x_454, 0); - lean_ctor_release(x_454, 1); - x_457 = x_454; +x_457 = lean_ctor_get(x_455, 1); +lean_inc(x_457); +if (lean_is_exclusive(x_455)) { + lean_ctor_release(x_455, 0); + lean_ctor_release(x_455, 1); + x_458 = x_455; } else { - lean_dec_ref(x_454); - x_457 = lean_box(0); + lean_dec_ref(x_455); + x_458 = lean_box(0); } -x_458 = 0; -x_459 = lean_box(x_2); -x_460 = lean_box(x_458); -x_461 = lean_alloc_closure((void*)(l_Lean_Parser_many1Fn___boxed), 6, 3); -lean_closure_set(x_461, 0, x_459); -lean_closure_set(x_461, 1, x_456); -lean_closure_set(x_461, 2, x_460); -if (lean_is_scalar(x_457)) { - x_462 = lean_alloc_ctor(0, 2, 0); +x_459 = 0; +x_460 = lean_box(x_2); +x_461 = lean_box(x_459); +x_462 = lean_alloc_closure((void*)(l_Lean_Parser_many1Fn___boxed), 6, 3); +lean_closure_set(x_462, 0, x_460); +lean_closure_set(x_462, 1, x_457); +lean_closure_set(x_462, 2, x_461); +if (lean_is_scalar(x_458)) { + x_463 = lean_alloc_ctor(0, 2, 0); } else { - x_462 = x_457; + x_463 = x_458; } -lean_ctor_set(x_462, 0, x_455); -lean_ctor_set(x_462, 1, x_461); -x_463 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_463, 0, x_462); -return x_463; +lean_ctor_set(x_463, 0, x_456); +lean_ctor_set(x_463, 1, x_462); +x_464 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_464, 0, x_463); +return x_464; } } } case 7: { -lean_object* x_464; lean_object* x_465; lean_object* x_466; -x_464 = lean_ctor_get(x_3, 0); -lean_inc(x_464); -x_465 = lean_ctor_get(x_3, 1); +lean_object* x_465; lean_object* x_466; lean_object* x_467; +x_465 = lean_ctor_get(x_3, 0); lean_inc(x_465); +x_466 = lean_ctor_get(x_3, 1); +lean_inc(x_466); lean_dec(x_3); lean_inc(x_1); -x_466 = l_Lean_Parser_compileParserDescr___main(x_1, x_2, x_464); -if (lean_obj_tag(x_466) == 0) +x_467 = l_Lean_Parser_compileParserDescr___main(x_1, x_2, x_465); +if (lean_obj_tag(x_467) == 0) { -uint8_t x_467; -lean_dec(x_465); +uint8_t x_468; +lean_dec(x_466); lean_dec(x_1); -x_467 = !lean_is_exclusive(x_466); -if (x_467 == 0) +x_468 = !lean_is_exclusive(x_467); +if (x_468 == 0) { -return x_466; +return x_467; } else { -lean_object* x_468; lean_object* x_469; -x_468 = lean_ctor_get(x_466, 0); -lean_inc(x_468); -lean_dec(x_466); -x_469 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_469, 0, x_468); -return x_469; +lean_object* x_469; lean_object* x_470; +x_469 = lean_ctor_get(x_467, 0); +lean_inc(x_469); +lean_dec(x_467); +x_470 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_470, 0, x_469); +return x_470; } } else { -lean_object* x_470; lean_object* x_471; -x_470 = lean_ctor_get(x_466, 0); -lean_inc(x_470); -lean_dec(x_466); -x_471 = l_Lean_Parser_compileParserDescr___main(x_1, x_2, x_465); -if (lean_obj_tag(x_471) == 0) +lean_object* x_471; lean_object* x_472; +x_471 = lean_ctor_get(x_467, 0); +lean_inc(x_471); +lean_dec(x_467); +x_472 = l_Lean_Parser_compileParserDescr___main(x_1, x_2, x_466); +if (lean_obj_tag(x_472) == 0) { -uint8_t x_472; -lean_dec(x_470); -x_472 = !lean_is_exclusive(x_471); -if (x_472 == 0) -{ -return x_471; -} -else -{ -lean_object* x_473; lean_object* x_474; -x_473 = lean_ctor_get(x_471, 0); -lean_inc(x_473); +uint8_t x_473; lean_dec(x_471); -x_474 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_474, 0, x_473); -return x_474; +x_473 = !lean_is_exclusive(x_472); +if (x_473 == 0) +{ +return x_472; +} +else +{ +lean_object* x_474; lean_object* x_475; +x_474 = lean_ctor_get(x_472, 0); +lean_inc(x_474); +lean_dec(x_472); +x_475 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_475, 0, x_474); +return x_475; } } else { -uint8_t x_475; -x_475 = !lean_is_exclusive(x_471); -if (x_475 == 0) +uint8_t x_476; +x_476 = !lean_is_exclusive(x_472); +if (x_476 == 0) { -lean_object* x_476; lean_object* x_477; lean_object* x_478; lean_object* x_479; lean_object* x_480; lean_object* x_481; uint8_t x_482; lean_object* x_483; lean_object* x_484; lean_object* x_485; lean_object* x_486; -x_476 = lean_ctor_get(x_471, 0); -x_477 = lean_ctor_get(x_470, 0); -lean_inc(x_477); -x_478 = lean_ctor_get(x_476, 0); +lean_object* x_477; lean_object* x_478; lean_object* x_479; lean_object* x_480; lean_object* x_481; lean_object* x_482; uint8_t x_483; lean_object* x_484; lean_object* x_485; lean_object* x_486; lean_object* x_487; +x_477 = lean_ctor_get(x_472, 0); +x_478 = lean_ctor_get(x_471, 0); lean_inc(x_478); -x_479 = l_Lean_Parser_sepByInfo(x_477, x_478); -x_480 = lean_ctor_get(x_470, 1); -lean_inc(x_480); -lean_dec(x_470); -x_481 = lean_ctor_get(x_476, 1); +x_479 = lean_ctor_get(x_477, 0); +lean_inc(x_479); +x_480 = l_Lean_Parser_sepByInfo(x_478, x_479); +x_481 = lean_ctor_get(x_471, 1); lean_inc(x_481); -lean_dec(x_476); -x_482 = 0; -x_483 = lean_box(x_2); -x_484 = lean_box(x_482); -x_485 = lean_alloc_closure((void*)(l_Lean_Parser_sepByFn___boxed), 7, 4); -lean_closure_set(x_485, 0, x_483); -lean_closure_set(x_485, 1, x_484); -lean_closure_set(x_485, 2, x_480); -lean_closure_set(x_485, 3, x_481); -x_486 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_486, 0, x_479); -lean_ctor_set(x_486, 1, x_485); -lean_ctor_set(x_471, 0, x_486); -return x_471; +lean_dec(x_471); +x_482 = lean_ctor_get(x_477, 1); +lean_inc(x_482); +lean_dec(x_477); +x_483 = 0; +x_484 = lean_box(x_2); +x_485 = lean_box(x_483); +x_486 = lean_alloc_closure((void*)(l_Lean_Parser_sepByFn___boxed), 7, 4); +lean_closure_set(x_486, 0, x_484); +lean_closure_set(x_486, 1, x_485); +lean_closure_set(x_486, 2, x_481); +lean_closure_set(x_486, 3, x_482); +x_487 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_487, 0, x_480); +lean_ctor_set(x_487, 1, x_486); +lean_ctor_set(x_472, 0, x_487); +return x_472; } else { -lean_object* x_487; lean_object* x_488; lean_object* x_489; lean_object* x_490; lean_object* x_491; lean_object* x_492; uint8_t x_493; lean_object* x_494; lean_object* x_495; lean_object* x_496; lean_object* x_497; lean_object* x_498; -x_487 = lean_ctor_get(x_471, 0); -lean_inc(x_487); -lean_dec(x_471); -x_488 = lean_ctor_get(x_470, 0); +lean_object* x_488; lean_object* x_489; lean_object* x_490; lean_object* x_491; lean_object* x_492; lean_object* x_493; uint8_t x_494; lean_object* x_495; lean_object* x_496; lean_object* x_497; lean_object* x_498; lean_object* x_499; +x_488 = lean_ctor_get(x_472, 0); lean_inc(x_488); -x_489 = lean_ctor_get(x_487, 0); +lean_dec(x_472); +x_489 = lean_ctor_get(x_471, 0); lean_inc(x_489); -x_490 = l_Lean_Parser_sepByInfo(x_488, x_489); -x_491 = lean_ctor_get(x_470, 1); -lean_inc(x_491); -lean_dec(x_470); -x_492 = lean_ctor_get(x_487, 1); +x_490 = lean_ctor_get(x_488, 0); +lean_inc(x_490); +x_491 = l_Lean_Parser_sepByInfo(x_489, x_490); +x_492 = lean_ctor_get(x_471, 1); lean_inc(x_492); -lean_dec(x_487); -x_493 = 0; -x_494 = lean_box(x_2); -x_495 = lean_box(x_493); -x_496 = lean_alloc_closure((void*)(l_Lean_Parser_sepByFn___boxed), 7, 4); -lean_closure_set(x_496, 0, x_494); -lean_closure_set(x_496, 1, x_495); -lean_closure_set(x_496, 2, x_491); -lean_closure_set(x_496, 3, x_492); -x_497 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_497, 0, x_490); -lean_ctor_set(x_497, 1, x_496); -x_498 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_498, 0, x_497); -return x_498; +lean_dec(x_471); +x_493 = lean_ctor_get(x_488, 1); +lean_inc(x_493); +lean_dec(x_488); +x_494 = 0; +x_495 = lean_box(x_2); +x_496 = lean_box(x_494); +x_497 = lean_alloc_closure((void*)(l_Lean_Parser_sepByFn___boxed), 7, 4); +lean_closure_set(x_497, 0, x_495); +lean_closure_set(x_497, 1, x_496); +lean_closure_set(x_497, 2, x_492); +lean_closure_set(x_497, 3, x_493); +x_498 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_498, 0, x_491); +lean_ctor_set(x_498, 1, x_497); +x_499 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_499, 0, x_498); +return x_499; } } } } case 8: { -lean_object* x_499; lean_object* x_500; lean_object* x_501; -x_499 = lean_ctor_get(x_3, 0); -lean_inc(x_499); -x_500 = lean_ctor_get(x_3, 1); +lean_object* x_500; lean_object* x_501; lean_object* x_502; +x_500 = lean_ctor_get(x_3, 0); lean_inc(x_500); +x_501 = lean_ctor_get(x_3, 1); +lean_inc(x_501); lean_dec(x_3); lean_inc(x_1); -x_501 = l_Lean_Parser_compileParserDescr___main(x_1, x_2, x_499); -if (lean_obj_tag(x_501) == 0) +x_502 = l_Lean_Parser_compileParserDescr___main(x_1, x_2, x_500); +if (lean_obj_tag(x_502) == 0) { -uint8_t x_502; -lean_dec(x_500); +uint8_t x_503; +lean_dec(x_501); lean_dec(x_1); -x_502 = !lean_is_exclusive(x_501); -if (x_502 == 0) +x_503 = !lean_is_exclusive(x_502); +if (x_503 == 0) { -return x_501; +return x_502; } else { -lean_object* x_503; lean_object* x_504; -x_503 = lean_ctor_get(x_501, 0); -lean_inc(x_503); -lean_dec(x_501); -x_504 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_504, 0, x_503); -return x_504; +lean_object* x_504; lean_object* x_505; +x_504 = lean_ctor_get(x_502, 0); +lean_inc(x_504); +lean_dec(x_502); +x_505 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_505, 0, x_504); +return x_505; } } else { -lean_object* x_505; lean_object* x_506; -x_505 = lean_ctor_get(x_501, 0); -lean_inc(x_505); -lean_dec(x_501); -x_506 = l_Lean_Parser_compileParserDescr___main(x_1, x_2, x_500); -if (lean_obj_tag(x_506) == 0) +lean_object* x_506; lean_object* x_507; +x_506 = lean_ctor_get(x_502, 0); +lean_inc(x_506); +lean_dec(x_502); +x_507 = l_Lean_Parser_compileParserDescr___main(x_1, x_2, x_501); +if (lean_obj_tag(x_507) == 0) { -uint8_t x_507; -lean_dec(x_505); -x_507 = !lean_is_exclusive(x_506); -if (x_507 == 0) -{ -return x_506; -} -else -{ -lean_object* x_508; lean_object* x_509; -x_508 = lean_ctor_get(x_506, 0); -lean_inc(x_508); +uint8_t x_508; lean_dec(x_506); -x_509 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_509, 0, x_508); -return x_509; +x_508 = !lean_is_exclusive(x_507); +if (x_508 == 0) +{ +return x_507; +} +else +{ +lean_object* x_509; lean_object* x_510; +x_509 = lean_ctor_get(x_507, 0); +lean_inc(x_509); +lean_dec(x_507); +x_510 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_510, 0, x_509); +return x_510; } } else { -uint8_t x_510; -x_510 = !lean_is_exclusive(x_506); -if (x_510 == 0) +uint8_t x_511; +x_511 = !lean_is_exclusive(x_507); +if (x_511 == 0) { -lean_object* x_511; lean_object* x_512; lean_object* x_513; lean_object* x_514; lean_object* x_515; lean_object* x_516; uint8_t x_517; lean_object* x_518; lean_object* x_519; lean_object* x_520; lean_object* x_521; -x_511 = lean_ctor_get(x_506, 0); -x_512 = lean_ctor_get(x_505, 0); -lean_inc(x_512); -x_513 = lean_ctor_get(x_511, 0); +lean_object* x_512; lean_object* x_513; lean_object* x_514; lean_object* x_515; lean_object* x_516; lean_object* x_517; uint8_t x_518; lean_object* x_519; lean_object* x_520; lean_object* x_521; lean_object* x_522; +x_512 = lean_ctor_get(x_507, 0); +x_513 = lean_ctor_get(x_506, 0); lean_inc(x_513); -x_514 = l_Lean_Parser_sepBy1Info(x_512, x_513); -x_515 = lean_ctor_get(x_505, 1); -lean_inc(x_515); -lean_dec(x_505); -x_516 = lean_ctor_get(x_511, 1); +x_514 = lean_ctor_get(x_512, 0); +lean_inc(x_514); +x_515 = l_Lean_Parser_sepBy1Info(x_513, x_514); +x_516 = lean_ctor_get(x_506, 1); lean_inc(x_516); -lean_dec(x_511); -x_517 = 0; -x_518 = lean_box(x_2); -x_519 = lean_box(x_517); -x_520 = lean_alloc_closure((void*)(l_Lean_Parser_sepBy1Fn___boxed), 7, 4); -lean_closure_set(x_520, 0, x_518); -lean_closure_set(x_520, 1, x_519); -lean_closure_set(x_520, 2, x_515); -lean_closure_set(x_520, 3, x_516); -x_521 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_521, 0, x_514); -lean_ctor_set(x_521, 1, x_520); -lean_ctor_set(x_506, 0, x_521); -return x_506; +lean_dec(x_506); +x_517 = lean_ctor_get(x_512, 1); +lean_inc(x_517); +lean_dec(x_512); +x_518 = 0; +x_519 = lean_box(x_2); +x_520 = lean_box(x_518); +x_521 = lean_alloc_closure((void*)(l_Lean_Parser_sepBy1Fn___boxed), 7, 4); +lean_closure_set(x_521, 0, x_519); +lean_closure_set(x_521, 1, x_520); +lean_closure_set(x_521, 2, x_516); +lean_closure_set(x_521, 3, x_517); +x_522 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_522, 0, x_515); +lean_ctor_set(x_522, 1, x_521); +lean_ctor_set(x_507, 0, x_522); +return x_507; } else { -lean_object* x_522; lean_object* x_523; lean_object* x_524; lean_object* x_525; lean_object* x_526; lean_object* x_527; uint8_t x_528; lean_object* x_529; lean_object* x_530; lean_object* x_531; lean_object* x_532; lean_object* x_533; -x_522 = lean_ctor_get(x_506, 0); -lean_inc(x_522); -lean_dec(x_506); -x_523 = lean_ctor_get(x_505, 0); +lean_object* x_523; lean_object* x_524; lean_object* x_525; lean_object* x_526; lean_object* x_527; lean_object* x_528; uint8_t x_529; lean_object* x_530; lean_object* x_531; lean_object* x_532; lean_object* x_533; lean_object* x_534; +x_523 = lean_ctor_get(x_507, 0); lean_inc(x_523); -x_524 = lean_ctor_get(x_522, 0); +lean_dec(x_507); +x_524 = lean_ctor_get(x_506, 0); lean_inc(x_524); -x_525 = l_Lean_Parser_sepBy1Info(x_523, x_524); -x_526 = lean_ctor_get(x_505, 1); -lean_inc(x_526); -lean_dec(x_505); -x_527 = lean_ctor_get(x_522, 1); +x_525 = lean_ctor_get(x_523, 0); +lean_inc(x_525); +x_526 = l_Lean_Parser_sepBy1Info(x_524, x_525); +x_527 = lean_ctor_get(x_506, 1); lean_inc(x_527); -lean_dec(x_522); -x_528 = 0; -x_529 = lean_box(x_2); -x_530 = lean_box(x_528); -x_531 = lean_alloc_closure((void*)(l_Lean_Parser_sepBy1Fn___boxed), 7, 4); -lean_closure_set(x_531, 0, x_529); -lean_closure_set(x_531, 1, x_530); -lean_closure_set(x_531, 2, x_526); -lean_closure_set(x_531, 3, x_527); -x_532 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_532, 0, x_525); -lean_ctor_set(x_532, 1, x_531); -x_533 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_533, 0, x_532); -return x_533; +lean_dec(x_506); +x_528 = lean_ctor_get(x_523, 1); +lean_inc(x_528); +lean_dec(x_523); +x_529 = 0; +x_530 = lean_box(x_2); +x_531 = lean_box(x_529); +x_532 = lean_alloc_closure((void*)(l_Lean_Parser_sepBy1Fn___boxed), 7, 4); +lean_closure_set(x_532, 0, x_530); +lean_closure_set(x_532, 1, x_531); +lean_closure_set(x_532, 2, x_527); +lean_closure_set(x_532, 3, x_528); +x_533 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_533, 0, x_526); +lean_ctor_set(x_533, 1, x_532); +x_534 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_534, 0, x_533); +return x_534; } } } } case 9: { -lean_object* x_534; lean_object* x_535; lean_object* x_536; -x_534 = lean_ctor_get(x_3, 0); -lean_inc(x_534); -x_535 = lean_ctor_get(x_3, 1); +lean_object* x_535; lean_object* x_536; lean_object* x_537; +x_535 = lean_ctor_get(x_3, 0); lean_inc(x_535); +x_536 = lean_ctor_get(x_3, 1); +lean_inc(x_536); lean_dec(x_3); -x_536 = l_Lean_Parser_compileParserDescr___main(x_1, x_2, x_535); -if (lean_obj_tag(x_536) == 0) +x_537 = l_Lean_Parser_compileParserDescr___main(x_1, x_2, x_536); +if (lean_obj_tag(x_537) == 0) { -uint8_t x_537; -lean_dec(x_534); -x_537 = !lean_is_exclusive(x_536); -if (x_537 == 0) +uint8_t x_538; +lean_dec(x_535); +x_538 = !lean_is_exclusive(x_537); +if (x_538 == 0) { -return x_536; +return x_537; } else { -lean_object* x_538; lean_object* x_539; -x_538 = lean_ctor_get(x_536, 0); -lean_inc(x_538); -lean_dec(x_536); -x_539 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_539, 0, x_538); -return x_539; +lean_object* x_539; lean_object* x_540; +x_539 = lean_ctor_get(x_537, 0); +lean_inc(x_539); +lean_dec(x_537); +x_540 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_540, 0, x_539); +return x_540; } } else { -uint8_t x_540; -x_540 = !lean_is_exclusive(x_536); -if (x_540 == 0) +uint8_t x_541; +x_541 = !lean_is_exclusive(x_537); +if (x_541 == 0) { -lean_object* x_541; lean_object* x_542; lean_object* x_543; lean_object* x_544; lean_object* x_545; lean_object* x_546; -x_541 = lean_ctor_get(x_536, 0); -x_542 = lean_ctor_get(x_541, 0); -lean_inc(x_542); -lean_inc(x_534); -x_543 = l_Lean_Parser_nodeInfo(x_534, x_542); -x_544 = lean_ctor_get(x_541, 1); -lean_inc(x_544); -lean_dec(x_541); -x_545 = lean_alloc_closure((void*)(l_Lean_Parser_nodeFn___rarg), 5, 2); -lean_closure_set(x_545, 0, x_534); -lean_closure_set(x_545, 1, x_544); -x_546 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_546, 0, x_543); -lean_ctor_set(x_546, 1, x_545); -lean_ctor_set(x_536, 0, x_546); -return x_536; +lean_object* x_542; lean_object* x_543; lean_object* x_544; lean_object* x_545; lean_object* x_546; lean_object* x_547; +x_542 = lean_ctor_get(x_537, 0); +x_543 = lean_ctor_get(x_542, 0); +lean_inc(x_543); +lean_inc(x_535); +x_544 = l_Lean_Parser_nodeInfo(x_535, x_543); +x_545 = lean_ctor_get(x_542, 1); +lean_inc(x_545); +lean_dec(x_542); +x_546 = lean_alloc_closure((void*)(l_Lean_Parser_nodeFn___rarg), 5, 2); +lean_closure_set(x_546, 0, x_535); +lean_closure_set(x_546, 1, x_545); +x_547 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_547, 0, x_544); +lean_ctor_set(x_547, 1, x_546); +lean_ctor_set(x_537, 0, x_547); +return x_537; } else { -lean_object* x_547; lean_object* x_548; lean_object* x_549; lean_object* x_550; lean_object* x_551; lean_object* x_552; lean_object* x_553; -x_547 = lean_ctor_get(x_536, 0); -lean_inc(x_547); -lean_dec(x_536); -x_548 = lean_ctor_get(x_547, 0); +lean_object* x_548; lean_object* x_549; lean_object* x_550; lean_object* x_551; lean_object* x_552; lean_object* x_553; lean_object* x_554; +x_548 = lean_ctor_get(x_537, 0); lean_inc(x_548); -lean_inc(x_534); -x_549 = l_Lean_Parser_nodeInfo(x_534, x_548); -x_550 = lean_ctor_get(x_547, 1); -lean_inc(x_550); -lean_dec(x_547); -x_551 = lean_alloc_closure((void*)(l_Lean_Parser_nodeFn___rarg), 5, 2); -lean_closure_set(x_551, 0, x_534); -lean_closure_set(x_551, 1, x_550); -x_552 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_552, 0, x_549); -lean_ctor_set(x_552, 1, x_551); -x_553 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_553, 0, x_552); -return x_553; +lean_dec(x_537); +x_549 = lean_ctor_get(x_548, 0); +lean_inc(x_549); +lean_inc(x_535); +x_550 = l_Lean_Parser_nodeInfo(x_535, x_549); +x_551 = lean_ctor_get(x_548, 1); +lean_inc(x_551); +lean_dec(x_548); +x_552 = lean_alloc_closure((void*)(l_Lean_Parser_nodeFn___rarg), 5, 2); +lean_closure_set(x_552, 0, x_535); +lean_closure_set(x_552, 1, x_551); +x_553 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_553, 0, x_550); +lean_ctor_set(x_553, 1, x_552); +x_554 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_554, 0, x_553); +return x_554; } } } case 10: { -lean_object* x_554; lean_object* x_555; lean_object* x_556; lean_object* x_557; lean_object* x_558; lean_object* x_559; lean_object* x_560; lean_object* x_561; +lean_object* x_555; lean_object* x_556; lean_object* x_557; lean_object* x_558; lean_object* x_559; lean_object* x_560; lean_object* x_561; lean_object* x_562; lean_dec(x_1); -x_554 = lean_ctor_get(x_3, 0); -lean_inc(x_554); -x_555 = lean_ctor_get(x_3, 1); +x_555 = lean_ctor_get(x_3, 0); lean_inc(x_555); +x_556 = lean_ctor_get(x_3, 1); +lean_inc(x_556); lean_dec(x_3); -x_556 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_556, 0, x_555); -x_557 = l_String_trim(x_554); -lean_dec(x_554); -lean_inc(x_557); -x_558 = l_Lean_Parser_symbolInfo(x_557, x_556); -x_559 = lean_alloc_closure((void*)(l_Lean_Parser_symbolFn___rarg___boxed), 4, 1); -lean_closure_set(x_559, 0, x_557); -x_560 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_560, 0, x_558); -lean_ctor_set(x_560, 1, x_559); -x_561 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_561, 0, x_560); -return x_561; +x_557 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_557, 0, x_556); +x_558 = l_String_trim(x_555); +lean_dec(x_555); +lean_inc(x_558); +x_559 = l_Lean_Parser_symbolInfo(x_558, x_557); +x_560 = lean_alloc_closure((void*)(l_Lean_Parser_symbolFn___rarg___boxed), 4, 1); +lean_closure_set(x_560, 0, x_558); +x_561 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_561, 0, x_559); +lean_ctor_set(x_561, 1, x_560); +x_562 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_562, 0, x_561); +return x_562; } case 11: { -lean_object* x_562; lean_object* x_563; lean_object* x_564; lean_object* x_565; lean_object* x_566; lean_object* x_567; lean_object* x_568; lean_object* x_569; lean_object* x_570; lean_object* x_571; +lean_object* x_563; lean_object* x_564; lean_object* x_565; lean_object* x_566; lean_object* x_567; lean_object* x_568; lean_object* x_569; lean_object* x_570; lean_object* x_571; lean_object* x_572; lean_dec(x_1); -x_562 = lean_ctor_get(x_3, 0); -lean_inc(x_562); -x_563 = lean_ctor_get(x_3, 1); +x_563 = lean_ctor_get(x_3, 0); lean_inc(x_563); -x_564 = lean_ctor_get(x_3, 2); +x_564 = lean_ctor_get(x_3, 1); lean_inc(x_564); +x_565 = lean_ctor_get(x_3, 2); +lean_inc(x_565); lean_dec(x_3); -x_565 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_565, 0, x_564); -x_566 = l_String_trim(x_562); -lean_dec(x_562); +x_566 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_566, 0, x_565); x_567 = l_String_trim(x_563); lean_dec(x_563); +x_568 = l_String_trim(x_564); +lean_dec(x_564); +lean_inc(x_568); lean_inc(x_567); -lean_inc(x_566); -x_568 = l_Lean_Parser_unicodeSymbolInfo(x_566, x_567, x_565); -x_569 = lean_alloc_closure((void*)(l_Lean_Parser_unicodeSymbolFn___rarg___boxed), 5, 2); -lean_closure_set(x_569, 0, x_566); -lean_closure_set(x_569, 1, x_567); -x_570 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_570, 0, x_568); -lean_ctor_set(x_570, 1, x_569); -x_571 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_571, 0, x_570); -return x_571; +x_569 = l_Lean_Parser_unicodeSymbolInfo(x_567, x_568, x_566); +x_570 = lean_alloc_closure((void*)(l_Lean_Parser_unicodeSymbolFn___rarg___boxed), 5, 2); +lean_closure_set(x_570, 0, x_567); +lean_closure_set(x_570, 1, x_568); +x_571 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_571, 0, x_569); +lean_ctor_set(x_571, 1, x_570); +x_572 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_572, 0, x_571); +return x_572; } default: { -lean_object* x_572; +lean_object* x_573; lean_dec(x_1); -x_572 = l_Lean_Parser_compileParserDescr___main___closed__1; -return x_572; +x_573 = l_Lean_Parser_compileParserDescr___main___closed__1; +return x_573; } } } @@ -35957,6 +35903,304 @@ x_3 = l_Lean_Parser_fieldIdx(x_2); return x_3; } } +lean_object* l_Lean_Parser_unicodeInfixR___elambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +lean_object* x_5; lean_object* x_6; +lean_inc(x_2); +lean_inc(x_4); +x_5 = l_Lean_Parser_ParserState_pushSyntax(x_4, x_2); +x_6 = lean_ctor_get(x_4, 3); +lean_inc(x_6); +lean_dec(x_4); +if (lean_obj_tag(x_6) == 0) +{ +lean_object* x_7; +x_7 = lean_apply_3(x_1, x_2, x_3, x_5); +return x_7; +} +else +{ +lean_dec(x_6); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_5; +} +} +} +lean_object* l_Lean_Parser_unicodeInfixR(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; uint8_t x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; +lean_inc(x_3); +x_4 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_4, 0, x_3); +x_5 = l_String_trim(x_1); +x_6 = l_String_trim(x_2); +lean_inc(x_6); +lean_inc(x_5); +x_7 = l_Lean_Parser_unicodeSymbolInfo(x_5, x_6, x_4); +x_8 = lean_alloc_closure((void*)(l_Lean_Parser_unicodeSymbolFn___rarg___boxed), 5, 2); +lean_closure_set(x_8, 0, x_5); +lean_closure_set(x_8, 1, x_6); +x_9 = lean_unsigned_to_nat(1u); +x_10 = lean_nat_sub(x_3, x_9); +lean_dec(x_3); +x_11 = 1; +x_12 = l_Lean_Parser_regBuiltinTermParserAttr___closed__4; +lean_inc(x_10); +x_13 = l_Lean_Parser_categoryParser(x_11, x_12, x_10); +x_14 = lean_ctor_get(x_13, 0); +lean_inc(x_14); +lean_dec(x_13); +x_15 = l_Lean_Parser_andthenInfo(x_7, x_14); +x_16 = lean_alloc_closure((void*)(l_Lean_Parser_categoryParser___elambda__1___rarg___boxed), 5, 2); +lean_closure_set(x_16, 0, x_12); +lean_closure_set(x_16, 1, x_10); +x_17 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn___rarg), 5, 2); +lean_closure_set(x_17, 0, x_8); +lean_closure_set(x_17, 1, x_16); +x_18 = l_Lean_Parser_epsilonInfo; +x_19 = l_Lean_Parser_andthenInfo(x_18, x_15); +x_20 = lean_alloc_closure((void*)(l_Lean_Parser_unicodeInfixR___elambda__1), 4, 1); +lean_closure_set(x_20, 0, x_17); +x_21 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_21, 0, x_19); +lean_ctor_set(x_21, 1, x_20); +return x_21; +} +} +lean_object* l_Lean_Parser_unicodeInfixR___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l_Lean_Parser_unicodeInfixR(x_1, x_2, x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_4; +} +} +lean_object* l_Lean_Parser_infixR___elambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +lean_object* x_5; lean_object* x_6; +lean_inc(x_2); +lean_inc(x_4); +x_5 = l_Lean_Parser_ParserState_pushSyntax(x_4, x_2); +x_6 = lean_ctor_get(x_4, 3); +lean_inc(x_6); +lean_dec(x_4); +if (lean_obj_tag(x_6) == 0) +{ +lean_object* x_7; +x_7 = lean_apply_3(x_1, x_2, x_3, x_5); +return x_7; +} +else +{ +lean_dec(x_6); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_5; +} +} +} +lean_object* l_Lean_Parser_infixR(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; uint8_t x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; +lean_inc(x_2); +x_3 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_3, 0, x_2); +x_4 = l_String_trim(x_1); +lean_inc(x_4); +x_5 = l_Lean_Parser_symbolInfo(x_4, x_3); +x_6 = lean_alloc_closure((void*)(l_Lean_Parser_symbolFn___rarg___boxed), 4, 1); +lean_closure_set(x_6, 0, x_4); +x_7 = lean_unsigned_to_nat(1u); +x_8 = lean_nat_sub(x_2, x_7); +lean_dec(x_2); +x_9 = 1; +x_10 = l_Lean_Parser_regBuiltinTermParserAttr___closed__4; +lean_inc(x_8); +x_11 = l_Lean_Parser_categoryParser(x_9, x_10, x_8); +x_12 = lean_ctor_get(x_11, 0); +lean_inc(x_12); +lean_dec(x_11); +x_13 = l_Lean_Parser_andthenInfo(x_5, x_12); +x_14 = lean_alloc_closure((void*)(l_Lean_Parser_categoryParser___elambda__1___rarg___boxed), 5, 2); +lean_closure_set(x_14, 0, x_10); +lean_closure_set(x_14, 1, x_8); +x_15 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn___rarg), 5, 2); +lean_closure_set(x_15, 0, x_6); +lean_closure_set(x_15, 1, x_14); +x_16 = l_Lean_Parser_epsilonInfo; +x_17 = l_Lean_Parser_andthenInfo(x_16, x_13); +x_18 = lean_alloc_closure((void*)(l_Lean_Parser_infixR___elambda__1), 4, 1); +lean_closure_set(x_18, 0, x_15); +x_19 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_19, 0, x_17); +lean_ctor_set(x_19, 1, x_18); +return x_19; +} +} +lean_object* l_Lean_Parser_infixR___boxed(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = l_Lean_Parser_infixR(x_1, x_2); +lean_dec(x_1); +return x_3; +} +} +lean_object* l_Lean_Parser_unicodeInfixL___elambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +lean_object* x_5; lean_object* x_6; +lean_inc(x_2); +lean_inc(x_4); +x_5 = l_Lean_Parser_ParserState_pushSyntax(x_4, x_2); +x_6 = lean_ctor_get(x_4, 3); +lean_inc(x_6); +lean_dec(x_4); +if (lean_obj_tag(x_6) == 0) +{ +lean_object* x_7; +x_7 = lean_apply_3(x_1, x_2, x_3, x_5); +return x_7; +} +else +{ +lean_dec(x_6); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_5; +} +} +} +lean_object* l_Lean_Parser_unicodeInfixL(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; uint8_t x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; +lean_inc(x_3); +x_4 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_4, 0, x_3); +x_5 = l_String_trim(x_1); +x_6 = l_String_trim(x_2); +lean_inc(x_6); +lean_inc(x_5); +x_7 = l_Lean_Parser_unicodeSymbolInfo(x_5, x_6, x_4); +x_8 = lean_alloc_closure((void*)(l_Lean_Parser_unicodeSymbolFn___rarg___boxed), 5, 2); +lean_closure_set(x_8, 0, x_5); +lean_closure_set(x_8, 1, x_6); +x_9 = 1; +x_10 = l_Lean_Parser_regBuiltinTermParserAttr___closed__4; +lean_inc(x_3); +x_11 = l_Lean_Parser_categoryParser(x_9, x_10, x_3); +x_12 = lean_ctor_get(x_11, 0); +lean_inc(x_12); +lean_dec(x_11); +x_13 = l_Lean_Parser_andthenInfo(x_7, x_12); +x_14 = lean_alloc_closure((void*)(l_Lean_Parser_categoryParser___elambda__1___rarg___boxed), 5, 2); +lean_closure_set(x_14, 0, x_10); +lean_closure_set(x_14, 1, x_3); +x_15 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn___rarg), 5, 2); +lean_closure_set(x_15, 0, x_8); +lean_closure_set(x_15, 1, x_14); +x_16 = l_Lean_Parser_epsilonInfo; +x_17 = l_Lean_Parser_andthenInfo(x_16, x_13); +x_18 = lean_alloc_closure((void*)(l_Lean_Parser_unicodeInfixL___elambda__1), 4, 1); +lean_closure_set(x_18, 0, x_15); +x_19 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_19, 0, x_17); +lean_ctor_set(x_19, 1, x_18); +return x_19; +} +} +lean_object* l_Lean_Parser_unicodeInfixL___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l_Lean_Parser_unicodeInfixL(x_1, x_2, x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_4; +} +} +lean_object* l_Lean_Parser_infixL___elambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +lean_object* x_5; lean_object* x_6; +lean_inc(x_2); +lean_inc(x_4); +x_5 = l_Lean_Parser_ParserState_pushSyntax(x_4, x_2); +x_6 = lean_ctor_get(x_4, 3); +lean_inc(x_6); +lean_dec(x_4); +if (lean_obj_tag(x_6) == 0) +{ +lean_object* x_7; +x_7 = lean_apply_3(x_1, x_2, x_3, x_5); +return x_7; +} +else +{ +lean_dec(x_6); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_5; +} +} +} +lean_object* l_Lean_Parser_infixL(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; uint8_t x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +lean_inc(x_2); +x_3 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_3, 0, x_2); +x_4 = l_String_trim(x_1); +lean_inc(x_4); +x_5 = l_Lean_Parser_symbolInfo(x_4, x_3); +x_6 = lean_alloc_closure((void*)(l_Lean_Parser_symbolFn___rarg___boxed), 4, 1); +lean_closure_set(x_6, 0, x_4); +x_7 = 1; +x_8 = l_Lean_Parser_regBuiltinTermParserAttr___closed__4; +lean_inc(x_2); +x_9 = l_Lean_Parser_categoryParser(x_7, x_8, x_2); +x_10 = lean_ctor_get(x_9, 0); +lean_inc(x_10); +lean_dec(x_9); +x_11 = l_Lean_Parser_andthenInfo(x_5, x_10); +x_12 = lean_alloc_closure((void*)(l_Lean_Parser_categoryParser___elambda__1___rarg___boxed), 5, 2); +lean_closure_set(x_12, 0, x_8); +lean_closure_set(x_12, 1, x_2); +x_13 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn___rarg), 5, 2); +lean_closure_set(x_13, 0, x_6); +lean_closure_set(x_13, 1, x_12); +x_14 = l_Lean_Parser_epsilonInfo; +x_15 = l_Lean_Parser_andthenInfo(x_14, x_11); +x_16 = lean_alloc_closure((void*)(l_Lean_Parser_infixL___elambda__1), 4, 1); +lean_closure_set(x_16, 0, x_13); +x_17 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_17, 0, x_15); +lean_ctor_set(x_17, 1, x_16); +return x_17; +} +} +lean_object* l_Lean_Parser_infixL___boxed(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = l_Lean_Parser_infixL(x_1, x_2); +lean_dec(x_1); +return x_3; +} +} uint8_t l_Lean_Syntax_isNone(lean_object* x_1) { _start: { @@ -37195,10 +37439,6 @@ l_Lean_Parser_ParsingTables_inhabited___closed__1 = _init_l_Lean_Parser_ParsingT lean_mark_persistent(l_Lean_Parser_ParsingTables_inhabited___closed__1); l_Lean_Parser_ParsingTables_inhabited = _init_l_Lean_Parser_ParsingTables_inhabited(); lean_mark_persistent(l_Lean_Parser_ParsingTables_inhabited); -l_Lean_Parser_tacticSymbolInfo___closed__1 = _init_l_Lean_Parser_tacticSymbolInfo___closed__1(); -lean_mark_persistent(l_Lean_Parser_tacticSymbolInfo___closed__1); -l_Lean_Parser_tacticSymbolInfo___closed__2 = _init_l_Lean_Parser_tacticSymbolInfo___closed__2(); -lean_mark_persistent(l_Lean_Parser_tacticSymbolInfo___closed__2); l_Lean_Parser_mkCategoryParserFnRef___closed__1 = _init_l_Lean_Parser_mkCategoryParserFnRef___closed__1(); lean_mark_persistent(l_Lean_Parser_mkCategoryParserFnRef___closed__1); res = l_Lean_Parser_mkCategoryParserFnRef(lean_io_mk_world()); diff --git a/stage0/stdlib/Init/Lean/Parser/Syntax.c b/stage0/stdlib/Init/Lean/Parser/Syntax.c index b2e9c406fb..88f6e95be5 100644 --- a/stage0/stdlib/Init/Lean/Parser/Syntax.c +++ b/stage0/stdlib/Init/Lean/Parser/Syntax.c @@ -1,6 +1,6 @@ // Lean compiler output // Module: Init.Lean.Parser.Syntax -// Imports: Init.Lean.Parser.Parser +// Imports: Init.Lean.Parser.Command #include "runtime/lean.h" #if defined(__clang__) #pragma clang diagnostic ignored "-Wunused-parameter" @@ -13,19 +13,268 @@ #ifdef __cplusplus extern "C" { #endif +lean_object* l_Lean_Parser_Command_syntax___elambda__1___closed__6; +extern lean_object* l_Lean_Parser_Term_orelse___elambda__1___closed__4; +lean_object* l_Lean_Parser_Syntax_many___elambda__1___closed__1; +lean_object* l_Lean_Parser_Syntax_str___elambda__1(lean_object*, lean_object*, lean_object*); +extern lean_object* l_Lean_Parser_manyAux___main___closed__1; +lean_object* l_Lean_Parser_Syntax_try___closed__5; +lean_object* l_Lean_Parser_Syntax_sepBy___elambda__1___closed__7; +extern lean_object* l_Lean_Parser_declareLeadingBuiltinParser___closed__1; +lean_object* l_Lean_Parser_Syntax_many1; +lean_object* l_Lean_Parser_Syntax_many___elambda__1___closed__2; +lean_object* l_Lean_Parser_andthenInfo(lean_object*, lean_object*); +lean_object* l_Lean_Parser_Syntax_lookahead___closed__4; +lean_object* l_Lean_Parser_Syntax_num___closed__5; +lean_object* l_Lean_Parser_Syntax_try___elambda__1___closed__1; +lean_object* l_Lean_Parser_Syntax_try___closed__3; +lean_object* l_Lean_Parser_Syntax_many1___elambda__1___closed__1; +extern lean_object* l_Lean_nullKind; +lean_object* l_Lean_Parser_Syntax_paren___closed__6; +lean_object* l_Lean_Parser_Command_syntax___elambda__1(lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Parser_Syntax_str___elambda__1___closed__5; +lean_object* l_Lean_Parser_Syntax_try___elambda__1___closed__6; lean_object* l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__2; +extern lean_object* l_Lean_Parser_regBuiltinCommandParserAttr___closed__4; +lean_object* l_Lean_Parser_Syntax_paren___elambda__1___closed__5; +lean_object* l_Lean_Parser_Syntax_paren___closed__4; +lean_object* l_Lean_Parser_Syntax_many1___elambda__1___closed__2; +lean_object* l_Lean_Parser_Syntax_cat___closed__4; +lean_object* l___regBuiltinParser_Lean_Parser_Syntax_cat(lean_object*); +lean_object* l_Lean_Parser_Syntax_paren___elambda__1___closed__3; +lean_object* l_Lean_Parser_Syntax_sepBy___closed__3; lean_object* l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; +lean_object* l_Lean_Parser_Syntax_many___closed__1; +lean_object* l_Lean_Parser_Syntax_many___closed__2; +lean_object* l_Lean_Parser_Syntax_many___elambda__1___closed__5; +lean_object* l_Lean_Parser_Syntax_str___elambda__1___closed__3; +lean_object* l___regBuiltinParser_Lean_Parser_Syntax_many(lean_object*); +lean_object* l_Lean_Parser_Syntax_orelse___elambda__1___closed__1; +lean_object* l_Lean_Parser_ParserState_pushSyntax(lean_object*, lean_object*); +lean_object* l_Lean_Parser_Syntax_lookahead___closed__5; +lean_object* l_Lean_Parser_Syntax_str___closed__3; +lean_object* l_Lean_Parser_Syntax_sepBy; +lean_object* l_Lean_Parser_Syntax_sepBy___closed__5; +lean_object* l_Lean_Parser_Syntax_paren; +lean_object* l_Lean_Parser_Syntax_paren___elambda__1(lean_object*, lean_object*, lean_object*); +lean_object* l___regBuiltinParser_Lean_Parser_Syntax_try(lean_object*); +lean_object* l_Lean_Parser_ParserState_mkNode(lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Parser_Syntax_many___elambda__1___closed__3; +lean_object* l_Lean_Parser_Syntax_str___closed__5; +extern lean_object* l_Lean_Parser_Level_num___elambda__1___closed__1; +extern lean_object* l_Lean_Parser_Term_typeAscription___elambda__1___closed__6; lean_object* l_Lean_Parser_registerBuiltinDynamicParserAttribute(lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Parser_Syntax_cat___closed__2; +lean_object* l_Lean_Parser_addBuiltinParser(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__1; +lean_object* lean_array_get_size(lean_object*); +lean_object* lean_string_append(lean_object*, lean_object*); +lean_object* l_Lean_Parser_tokenFn(lean_object*, lean_object*); +lean_object* l_Lean_Parser_Syntax_sepBy___elambda__1(lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Parser_Syntax_sepBy___elambda__1___closed__3; +lean_object* l_Lean_Parser_Syntax_num___elambda__1___closed__4; +lean_object* l_Lean_Parser_ParserState_mkErrorsAt(lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Parser_Syntax_many___elambda__1(lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Parser_Syntax_paren___closed__3; +lean_object* l_Lean_Parser_Command_syntax___elambda__1___closed__2; +extern lean_object* l_Lean_Parser_Level_addLit___elambda__1___closed__6; +extern lean_object* l_Lean_Parser_strLit___closed__1; +lean_object* l_Lean_Parser_Syntax_many1___closed__4; +lean_object* l_Lean_Parser_Syntax_try___elambda__1___closed__8; +lean_object* l_Lean_Parser_Syntax_sepBy___closed__4; +lean_object* l_Lean_Parser_Syntax_str___closed__4; +lean_object* l_Lean_Parser_Command_syntax; +lean_object* l_Lean_Parser_Command_syntax___closed__5; +lean_object* l_Lean_Parser_Syntax_lookahead___closed__6; +lean_object* l_Lean_Parser_Syntax_str___elambda__1___closed__6; +lean_object* l_Lean_Parser_Syntax_sepBy___elambda__1___closed__6; +lean_object* l_Lean_Parser_Syntax_paren___closed__1; +lean_object* l_Lean_Parser_Syntax_lookahead___elambda__1___closed__4; +lean_object* l_Lean_Parser_Syntax_cat___closed__1; +lean_object* l___regBuiltinParser_Lean_Parser_Syntax_orelse(lean_object*); lean_object* l_Lean_Parser_syntaxParser___boxed(lean_object*, lean_object*); +lean_object* l_Lean_Parser_Syntax_sepBy1___elambda__1(lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Parser_Syntax_num; +lean_object* l_Lean_Parser_Syntax_lookahead___elambda__1___closed__8; +lean_object* l_Lean_Parser_Syntax_num___closed__3; +lean_object* l_Lean_Parser_Syntax_try___closed__4; lean_object* l_Lean_Parser_regSyntaxParserAttribute___closed__2; +uint8_t lean_nat_dec_eq(lean_object*, lean_object*); +lean_object* l_Lean_Parser_nonReservedSymbolFnAux(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_regSyntaxParserAttribute___closed__1; +lean_object* l_Lean_Parser_Syntax_many1___closed__1; +lean_object* l___regBuiltinParser_Lean_Parser_Syntax_lookahead(lean_object*); +lean_object* l_Lean_Parser_nodeInfo(lean_object*, lean_object*); +lean_object* l_Lean_Parser_Syntax_many1___closed__2; +lean_object* l_Lean_Parser_Syntax_sepBy1; +lean_object* l_Lean_Parser_Syntax_num___elambda__1___closed__1; +extern lean_object* l_Lean_Parser_Level_paren___elambda__1___closed__7; +lean_object* l_Lean_Parser_Syntax_sepBy1___closed__2; +lean_object* l_Lean_Parser_Syntax_try___elambda__1___closed__4; +lean_object* l_Lean_Parser_nonReservedSymbolInfo(lean_object*, uint8_t); +lean_object* l_Lean_Parser_Syntax_str___closed__2; +lean_object* l_Lean_Parser_Syntax_optional___closed__4; +lean_object* l_Lean_Parser_Command_syntax___elambda__1___closed__7; +lean_object* l_Lean_Parser_Command_syntax___closed__3; +lean_object* l_Lean_Parser_Syntax_orelse___closed__3; +lean_object* l_Lean_Parser_Syntax_sepBy1___closed__4; +lean_object* l_Lean_Parser_Syntax_try___elambda__1(lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Parser_Syntax_paren___elambda__1___closed__1; +lean_object* l_Lean_Parser_Command_syntax___closed__7; +lean_object* l_Lean_Parser_Syntax_str___closed__1; +lean_object* l_Lean_Parser_Syntax_paren___closed__5; +lean_object* l_Lean_Parser_Syntax_optional___elambda__1___closed__1; +lean_object* l_Lean_Parser_Syntax_paren___elambda__1___closed__4; +lean_object* l_Lean_Parser_Syntax_num___closed__2; +lean_object* l_Lean_Parser_Syntax_lookahead___elambda__1___closed__5; +lean_object* l_Lean_Parser_Syntax_num___closed__1; +lean_object* l_Lean_Parser_Syntax_paren___elambda__1___closed__2; +lean_object* l_Lean_Parser_Syntax_num___closed__4; +extern lean_object* l_Char_HasRepr___closed__1; +lean_object* l_Lean_Parser_Syntax_lookahead___elambda__1___closed__3; +lean_object* l_Lean_Parser_Syntax_cat; +lean_object* l_Lean_Parser_Syntax_optional___elambda__1___closed__4; +lean_object* l_Lean_Parser_orelseInfo(lean_object*, lean_object*); +lean_object* l_Lean_Parser_Command_syntax___elambda__1___closed__3; +lean_object* l_Lean_Parser_Syntax_lookahead___closed__3; +lean_object* l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__3; lean_object* lean_name_mk_string(lean_object*, lean_object*); +lean_object* l___regBuiltinParser_Lean_Parser_Syntax_str(lean_object*); +extern lean_object* l___regBuiltinParser_Lean_Parser_Command_antiquot___closed__2; +lean_object* l_Lean_Parser_Command_syntax___elambda__1___closed__5; +extern lean_object* l_Lean_Parser_Level_paren___elambda__1___closed__11; +lean_object* l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__5; +extern lean_object* l_Lean_Parser_Term_explicitBinder___closed__1; +lean_object* l_Lean_Parser_Syntax_lookahead___elambda__1___closed__6; lean_object* l_Lean_Parser_registerBuiltinParserAttribute(lean_object*, lean_object*, uint8_t, lean_object*); +lean_object* l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__8; +lean_object* l_Lean_Parser_Syntax_cat___elambda__1___closed__2; +lean_object* l_Lean_Parser_Syntax_num___elambda__1(lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Syntax_paren___elambda__1___spec__1(uint8_t, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Parser_Syntax_sepBy___elambda__1___closed__1; +lean_object* l_Lean_Parser_Syntax_sepBy___closed__2; +extern lean_object* l_Lean_Parser_Level_ident___elambda__1___closed__4; +lean_object* l_Lean_Parser_Syntax_sepBy___closed__1; +lean_object* l_Array_back___at___private_Init_Lean_Parser_Parser_6__updateCache___spec__1(lean_object*); +lean_object* l_Lean_Parser_ParserState_restore(lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Parser_Syntax_many___closed__3; +lean_object* l_Lean_Parser_Syntax_optional___elambda__1(lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Parser_Syntax_num___elambda__1___closed__6; +lean_object* l_Lean_Parser_Syntax_atom___closed__4; +lean_object* l___regBuiltinParser_Lean_Parser_Syntax_sepBy(lean_object*); +lean_object* l_Lean_Parser_Syntax_atom; +lean_object* l_Lean_Parser_Syntax_sepBy___elambda__1___closed__8; +extern lean_object* l_Lean_Parser_FirstTokens_toStr___closed__3; +extern lean_object* l_Lean_Parser_Level_paren___closed__4; +extern lean_object* l_Lean_Parser_mkAntiquot___closed__7; +lean_object* l_Lean_Parser_Command_syntax___closed__1; +lean_object* l___regBuiltinParser_Lean_Parser_Syntax_paren(lean_object*); +lean_object* l_Lean_Parser_categoryParserFn(lean_object*, lean_object*, lean_object*, lean_object*); +extern lean_object* l_Lean_Parser_Term_str___elambda__1___closed__1; +lean_object* l_Lean_Parser_Syntax_cat___elambda__1___closed__3; +lean_object* l_Lean_Parser_Syntax_lookahead___elambda__1___closed__1; +lean_object* l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__2; +lean_object* l_Lean_Parser_Syntax_optional; +lean_object* l_Lean_Parser_Syntax_atom___closed__1; +lean_object* l_Lean_Parser_Syntax_sepBy___elambda__1___closed__4; +lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Syntax_paren___elambda__1___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l___regBuiltinParser_Lean_Parser_Syntax_sepBy1(lean_object*); +lean_object* l_Lean_Parser_Syntax_sepBy___elambda__1___closed__5; +lean_object* l_Lean_Parser_Syntax_num___elambda__1___closed__2; +lean_object* l_Lean_Parser_Syntax_paren___closed__2; +lean_object* l_Lean_Parser_Syntax_many1___closed__5; +lean_object* l___regBuiltinParser_Lean_Parser_Syntax_num(lean_object*); +extern lean_object* l_Lean_Parser_Level_paren___elambda__1___closed__3; +lean_object* l_Lean_Parser_Syntax_atom___elambda__1___closed__4; +lean_object* l_Lean_Parser_Command_syntax___closed__6; +lean_object* l_Lean_Parser_Syntax_str___elambda__1___closed__2; +lean_object* l_Lean_Parser_Syntax_lookahead___elambda__1___closed__2; +lean_object* l_Lean_Parser_Syntax_optional___closed__3; +lean_object* l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__7; +lean_object* l_Lean_Parser_Syntax_sepBy___closed__6; +lean_object* l_Lean_Parser_Syntax_str___elambda__1___closed__4; +lean_object* l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__1; +lean_object* l_Lean_Parser_mergeOrElseErrors(lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Parser_Syntax_cat___elambda__1(lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Parser_Syntax_sepBy1___closed__1; lean_object* l_Lean_Parser_categoryParser(uint8_t, lean_object*, lean_object*); +lean_object* l_Lean_Parser_Syntax_many1___closed__3; +lean_object* l_Lean_Parser_Syntax_optional___elambda__1___closed__2; +lean_object* l_Lean_Parser_Syntax_optional___closed__5; +lean_object* l_Lean_Parser_Syntax_atom___elambda__1___closed__2; lean_object* l_Lean_Parser_regSyntaxParserAttribute(lean_object*); +lean_object* l_Lean_Parser_Syntax_lookahead___elambda__1(lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Parser_symbolInfo(lean_object*, lean_object*); +extern lean_object* l_Lean_Parser_epsilonInfo; +extern lean_object* l_Lean_Parser_Term_typeAscription___closed__1; +lean_object* l_Lean_Parser_Syntax_atom___elambda__1(lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Parser_Syntax_str___elambda__1___closed__1; lean_object* l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__3; +lean_object* l_Lean_Parser_Syntax_sepBy1___closed__6; +lean_object* l_Lean_Parser_strLitFn___rarg(lean_object*, lean_object*); +lean_object* l_Lean_Parser_Syntax_sepBy1___closed__3; +lean_object* l_Lean_Parser_Syntax_sepBy1___closed__5; +lean_object* l_Lean_Parser_Syntax_lookahead___elambda__1___closed__7; +lean_object* l_Lean_Parser_Syntax_atom___elambda__1___closed__3; lean_object* l_Lean_Parser_regBuiltinSyntaxParserAttr(lean_object*); +lean_object* l_Lean_Parser_Syntax_atom___elambda__1___closed__1; +lean_object* l_Lean_Parser_Syntax_orelse___closed__2; +lean_object* l_Lean_Parser_Command_syntax___elambda__1___closed__4; +lean_object* l_Lean_Parser_Syntax_optional___elambda__1___closed__3; +lean_object* l_String_trim(lean_object*); +extern lean_object* l_Lean_Parser_Level_paren___elambda__1___closed__8; +lean_object* l_Lean_Parser_Syntax_orelse___closed__1; +lean_object* l_Lean_Parser_Command_syntax___elambda__1___closed__8; +lean_object* l_Lean_Parser_Syntax_paren___closed__7; +extern lean_object* l_Lean_Parser_Level_addLit___elambda__1___closed__3; +lean_object* l_Lean_Parser_Syntax_str; +lean_object* l_Lean_Parser_Syntax_optional___elambda__1___closed__5; +lean_object* l_Lean_Parser_Syntax_many; +lean_object* l_Lean_Parser_Syntax_try___closed__1; +extern lean_object* l_Lean_Parser_mkAntiquot___closed__6; +lean_object* l_Lean_Parser_Syntax_lookahead___closed__1; +lean_object* l_Lean_Parser_Syntax_try; +lean_object* l_Lean_Parser_Syntax_try___elambda__1___closed__7; +lean_object* l_Lean_Parser_mkAntiquot(uint8_t, lean_object*, lean_object*, uint8_t); +lean_object* l_Lean_Parser_Syntax_optional___elambda__1___closed__6; +lean_object* l_Lean_Parser_Syntax_try___closed__2; +lean_object* l_Lean_Parser_Syntax_cat___closed__3; +lean_object* l_Lean_Parser_Syntax_lookahead___closed__2; +lean_object* l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__4; +lean_object* l_Lean_Parser_Syntax_lookahead; +extern lean_object* l_Lean_Parser_Level_paren___elambda__1___closed__14; +lean_object* l_Lean_Parser_Syntax_atom___closed__2; +lean_object* l_Lean_Parser_Syntax_try___elambda__1___closed__3; +lean_object* l_Lean_Parser_Syntax_sepBy___closed__7; +lean_object* l_Lean_Parser_ParserState_mkUnexpectedError(lean_object*, lean_object*); +lean_object* l_Lean_Parser_Syntax_many___closed__4; +lean_object* l_Lean_Parser_Syntax_sepBy___elambda__1___closed__2; +lean_object* l_Lean_Parser_Syntax_try___closed__6; +lean_object* l_Lean_Parser_Command_syntax___closed__2; +lean_object* l___regBuiltinParser_Lean_Parser_Syntax_atom(lean_object*); +lean_object* l_Lean_Parser_Syntax_optional___closed__2; +lean_object* l_Lean_Parser_Syntax_num___elambda__1___closed__5; +lean_object* l_Lean_Parser_Syntax_orelse___elambda__1(lean_object*, lean_object*, lean_object*); +extern lean_object* l_Lean_Parser_Term_typeAscription___elambda__1___closed__9; +lean_object* l_Lean_Parser_Syntax_optional___closed__1; +lean_object* l_Lean_Parser_Syntax_cat___elambda__1___closed__1; +lean_object* l___regBuiltinParser_Lean_Parser_Syntax_optional(lean_object*); +lean_object* l_Lean_Parser_Syntax_many1___elambda__1(lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Parser_Command_syntax___elambda__1___closed__1; +lean_object* l___regBuiltinParser_Lean_Parser_Command_syntax(lean_object*); +lean_object* l_Lean_Parser_Syntax_atom___closed__3; +extern lean_object* l_Lean_Parser_Term_orelse___elambda__1___closed__1; +lean_object* l_Lean_Parser_Command_syntax___closed__8; +lean_object* l_Lean_Parser_Syntax_num___elambda__1___closed__3; +lean_object* l___regBuiltinParser_Lean_Parser_Syntax_many1(lean_object*); +lean_object* l_Lean_Parser_Syntax_try___elambda__1___closed__2; +lean_object* l_Lean_Parser_Syntax_many___elambda__1___closed__4; +lean_object* l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__6; +lean_object* l_Lean_Parser_Syntax_cat___elambda__1___closed__4; +uint8_t lean_string_dec_eq(lean_object*, lean_object*); +lean_object* l_Lean_Parser_Syntax_orelse; +lean_object* l_Lean_Parser_Syntax_try___elambda__1___closed__5; +lean_object* l_Lean_Parser_Command_syntax___closed__4; lean_object* l_Lean_Parser_syntaxParser(uint8_t, lean_object*); lean_object* _init_l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__1() { _start: @@ -69,7 +318,7 @@ _start: lean_object* x_2; lean_object* x_3; uint8_t x_4; lean_object* x_5; x_2 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__2; x_3 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; -x_4 = 0; +x_4 = 1; x_5 = l_Lean_Parser_registerBuiltinParserAttribute(x_2, x_3, x_4, x_1); return x_5; } @@ -121,13 +370,3388 @@ x_4 = l_Lean_Parser_syntaxParser(x_3, x_2); return x_4; } } -lean_object* initialize_Init_Lean_Parser_Parser(lean_object*); +lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Syntax_paren___elambda__1___spec__1(uint8_t x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; +x_5 = lean_ctor_get(x_4, 0); +lean_inc(x_5); +x_6 = lean_array_get_size(x_5); +lean_dec(x_5); +x_7 = lean_ctor_get(x_4, 1); +lean_inc(x_7); +x_8 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; +x_9 = lean_unsigned_to_nat(0u); +lean_inc(x_3); +x_10 = l_Lean_Parser_categoryParserFn(x_8, x_9, x_3, x_4); +x_11 = lean_ctor_get(x_10, 3); +lean_inc(x_11); +if (lean_obj_tag(x_11) == 0) +{ +lean_object* x_12; uint8_t x_13; +lean_dec(x_6); +x_12 = lean_ctor_get(x_10, 1); +lean_inc(x_12); +x_13 = lean_nat_dec_eq(x_7, x_12); +lean_dec(x_12); +lean_dec(x_7); +if (x_13 == 0) +{ +x_4 = x_10; +goto _start; +} +else +{ +lean_object* x_15; lean_object* x_16; +lean_dec(x_3); +x_15 = l_Lean_Parser_manyAux___main___closed__1; +x_16 = l_Lean_Parser_ParserState_mkUnexpectedError(x_10, x_15); +return x_16; +} +} +else +{ +lean_object* x_17; uint8_t x_18; +lean_dec(x_11); +lean_dec(x_3); +x_17 = lean_ctor_get(x_10, 1); +lean_inc(x_17); +x_18 = lean_nat_dec_eq(x_7, x_17); +lean_dec(x_17); +if (x_18 == 0) +{ +lean_dec(x_7); +lean_dec(x_6); +return x_10; +} +else +{ +lean_object* x_19; +x_19 = l_Lean_Parser_ParserState_restore(x_10, x_6, x_7); +lean_dec(x_6); +return x_19; +} +} +} +} +lean_object* _init_l_Lean_Parser_Syntax_paren___elambda__1___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string("Syntax"); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Syntax_paren___elambda__1___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_declareLeadingBuiltinParser___closed__1; +x_2 = l_Lean_Parser_Syntax_paren___elambda__1___closed__1; +x_3 = lean_name_mk_string(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_paren___elambda__1___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_paren___elambda__1___closed__2; +x_2 = l_Lean_Parser_Level_paren___elambda__1___closed__3; +x_3 = lean_name_mk_string(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_paren___elambda__1___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Syntax_paren___elambda__1___closed__3; +x_2 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_2, 0, x_1); +return x_2; +} +} +lean_object* _init_l_Lean_Parser_Syntax_paren___elambda__1___closed__5() { +_start: +{ +uint8_t x_1; lean_object* x_2; lean_object* x_3; uint8_t x_4; lean_object* x_5; +x_1 = 0; +x_2 = l_Lean_Parser_Level_paren___elambda__1___closed__3; +x_3 = l_Lean_Parser_Syntax_paren___elambda__1___closed__4; +x_4 = 1; +x_5 = l_Lean_Parser_mkAntiquot(x_1, x_2, x_3, x_4); +return x_5; +} +} +lean_object* l_Lean_Parser_Syntax_paren___elambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +x_4 = l_Lean_Parser_Syntax_paren___elambda__1___closed__5; +x_5 = lean_ctor_get(x_4, 1); +lean_inc(x_5); +x_6 = lean_ctor_get(x_3, 0); +lean_inc(x_6); +x_7 = lean_array_get_size(x_6); +lean_dec(x_6); +x_8 = lean_ctor_get(x_3, 1); +lean_inc(x_8); +lean_inc(x_2); +lean_inc(x_1); +x_9 = lean_apply_3(x_5, x_1, x_2, x_3); +x_10 = lean_ctor_get(x_9, 3); +lean_inc(x_10); +if (lean_obj_tag(x_10) == 0) +{ +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_2); +lean_dec(x_1); +return x_9; +} +else +{ +lean_object* x_11; lean_object* x_12; uint8_t x_13; +x_11 = lean_ctor_get(x_10, 0); +lean_inc(x_11); +lean_dec(x_10); +x_12 = lean_ctor_get(x_9, 1); +lean_inc(x_12); +x_13 = lean_nat_dec_eq(x_12, x_8); +lean_dec(x_12); +if (x_13 == 0) +{ +lean_dec(x_11); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_2); +lean_dec(x_1); +return x_9; +} +else +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_49; lean_object* x_67; lean_object* x_68; +lean_inc(x_8); +x_14 = l_Lean_Parser_ParserState_restore(x_9, x_7, x_8); +lean_dec(x_7); +x_15 = lean_ctor_get(x_14, 0); +lean_inc(x_15); +x_16 = lean_array_get_size(x_15); +lean_dec(x_15); +lean_inc(x_2); +x_67 = l_Lean_Parser_tokenFn(x_2, x_14); +x_68 = lean_ctor_get(x_67, 3); +lean_inc(x_68); +if (lean_obj_tag(x_68) == 0) +{ +lean_object* x_69; lean_object* x_70; +x_69 = lean_ctor_get(x_67, 0); +lean_inc(x_69); +x_70 = l_Array_back___at___private_Init_Lean_Parser_Parser_6__updateCache___spec__1(x_69); +lean_dec(x_69); +if (lean_obj_tag(x_70) == 2) +{ +lean_object* x_71; lean_object* x_72; uint8_t x_73; +x_71 = lean_ctor_get(x_70, 1); +lean_inc(x_71); +lean_dec(x_70); +x_72 = l_Lean_Parser_Level_paren___elambda__1___closed__7; +x_73 = lean_string_dec_eq(x_71, x_72); +lean_dec(x_71); +if (x_73 == 0) +{ +lean_object* x_74; lean_object* x_75; +x_74 = l_Lean_Parser_Level_paren___elambda__1___closed__14; +lean_inc(x_8); +x_75 = l_Lean_Parser_ParserState_mkErrorsAt(x_67, x_74, x_8); +x_49 = x_75; +goto block_66; +} +else +{ +x_49 = x_67; +goto block_66; +} +} +else +{ +lean_object* x_76; lean_object* x_77; +lean_dec(x_70); +x_76 = l_Lean_Parser_Level_paren___elambda__1___closed__14; +lean_inc(x_8); +x_77 = l_Lean_Parser_ParserState_mkErrorsAt(x_67, x_76, x_8); +x_49 = x_77; +goto block_66; +} +} +else +{ +lean_object* x_78; lean_object* x_79; +lean_dec(x_68); +x_78 = l_Lean_Parser_Level_paren___elambda__1___closed__14; +lean_inc(x_8); +x_79 = l_Lean_Parser_ParserState_mkErrorsAt(x_67, x_78, x_8); +x_49 = x_79; +goto block_66; +} +block_48: +{ +lean_object* x_18; +x_18 = lean_ctor_get(x_17, 3); +lean_inc(x_18); +if (lean_obj_tag(x_18) == 0) +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_19 = lean_ctor_get(x_17, 1); +lean_inc(x_19); +x_20 = l_Lean_Parser_tokenFn(x_2, x_17); +x_21 = lean_ctor_get(x_20, 3); +lean_inc(x_21); +if (lean_obj_tag(x_21) == 0) +{ +lean_object* x_22; lean_object* x_23; +x_22 = lean_ctor_get(x_20, 0); +lean_inc(x_22); +x_23 = l_Array_back___at___private_Init_Lean_Parser_Parser_6__updateCache___spec__1(x_22); +lean_dec(x_22); +if (lean_obj_tag(x_23) == 2) +{ +lean_object* x_24; lean_object* x_25; uint8_t x_26; +x_24 = lean_ctor_get(x_23, 1); +lean_inc(x_24); +lean_dec(x_23); +x_25 = l_Lean_Parser_Level_paren___elambda__1___closed__8; +x_26 = lean_string_dec_eq(x_24, x_25); +lean_dec(x_24); +if (x_26 == 0) +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +x_27 = l_Lean_Parser_Level_paren___elambda__1___closed__11; +x_28 = l_Lean_Parser_ParserState_mkErrorsAt(x_20, x_27, x_19); +x_29 = l_Lean_Parser_Syntax_paren___elambda__1___closed__3; +x_30 = l_Lean_Parser_ParserState_mkNode(x_28, x_29, x_16); +x_31 = l_Lean_Parser_mergeOrElseErrors(x_30, x_11, x_8); +lean_dec(x_8); +return x_31; +} +else +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; +lean_dec(x_19); +x_32 = l_Lean_Parser_Syntax_paren___elambda__1___closed__3; +x_33 = l_Lean_Parser_ParserState_mkNode(x_20, x_32, x_16); +x_34 = l_Lean_Parser_mergeOrElseErrors(x_33, x_11, x_8); +lean_dec(x_8); +return x_34; +} +} +else +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +lean_dec(x_23); +x_35 = l_Lean_Parser_Level_paren___elambda__1___closed__11; +x_36 = l_Lean_Parser_ParserState_mkErrorsAt(x_20, x_35, x_19); +x_37 = l_Lean_Parser_Syntax_paren___elambda__1___closed__3; +x_38 = l_Lean_Parser_ParserState_mkNode(x_36, x_37, x_16); +x_39 = l_Lean_Parser_mergeOrElseErrors(x_38, x_11, x_8); +lean_dec(x_8); +return x_39; +} +} +else +{ +lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +lean_dec(x_21); +x_40 = l_Lean_Parser_Level_paren___elambda__1___closed__11; +x_41 = l_Lean_Parser_ParserState_mkErrorsAt(x_20, x_40, x_19); +x_42 = l_Lean_Parser_Syntax_paren___elambda__1___closed__3; +x_43 = l_Lean_Parser_ParserState_mkNode(x_41, x_42, x_16); +x_44 = l_Lean_Parser_mergeOrElseErrors(x_43, x_11, x_8); +lean_dec(x_8); +return x_44; +} +} +else +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; +lean_dec(x_18); +lean_dec(x_2); +x_45 = l_Lean_Parser_Syntax_paren___elambda__1___closed__3; +x_46 = l_Lean_Parser_ParserState_mkNode(x_17, x_45, x_16); +x_47 = l_Lean_Parser_mergeOrElseErrors(x_46, x_11, x_8); +lean_dec(x_8); +return x_47; +} +} +block_66: +{ +lean_object* x_50; +x_50 = lean_ctor_get(x_49, 3); +lean_inc(x_50); +if (lean_obj_tag(x_50) == 0) +{ +lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; +x_51 = lean_ctor_get(x_49, 0); +lean_inc(x_51); +x_52 = lean_array_get_size(x_51); +lean_dec(x_51); +x_53 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; +x_54 = lean_unsigned_to_nat(0u); +lean_inc(x_2); +x_55 = l_Lean_Parser_categoryParserFn(x_53, x_54, x_2, x_49); +x_56 = lean_ctor_get(x_55, 3); +lean_inc(x_56); +if (lean_obj_tag(x_56) == 0) +{ +uint8_t x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; +x_57 = 0; +lean_inc(x_2); +x_58 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Syntax_paren___elambda__1___spec__1(x_57, x_1, x_2, x_55); +lean_dec(x_1); +x_59 = l_Lean_nullKind; +x_60 = l_Lean_Parser_ParserState_mkNode(x_58, x_59, x_52); +x_17 = x_60; +goto block_48; +} +else +{ +lean_object* x_61; lean_object* x_62; +lean_dec(x_56); +lean_dec(x_1); +x_61 = l_Lean_nullKind; +x_62 = l_Lean_Parser_ParserState_mkNode(x_55, x_61, x_52); +x_17 = x_62; +goto block_48; +} +} +else +{ +lean_object* x_63; lean_object* x_64; lean_object* x_65; +lean_dec(x_50); +lean_dec(x_2); +lean_dec(x_1); +x_63 = l_Lean_Parser_Syntax_paren___elambda__1___closed__3; +x_64 = l_Lean_Parser_ParserState_mkNode(x_49, x_63, x_16); +x_65 = l_Lean_Parser_mergeOrElseErrors(x_64, x_11, x_8); +lean_dec(x_8); +return x_65; +} +} +} +} +} +} +lean_object* _init_l_Lean_Parser_Syntax_paren___closed__1() { +_start: +{ +uint8_t x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = 0; +x_2 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; +x_3 = lean_unsigned_to_nat(0u); +x_4 = l_Lean_Parser_categoryParser(x_1, x_2, x_3); +return x_4; +} +} +lean_object* _init_l_Lean_Parser_Syntax_paren___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Parser_Syntax_paren___closed__1; +x_2 = lean_ctor_get(x_1, 0); +lean_inc(x_2); +x_3 = l_Lean_Parser_Level_paren___closed__4; +x_4 = l_Lean_Parser_andthenInfo(x_2, x_3); +return x_4; +} +} +lean_object* _init_l_Lean_Parser_Syntax_paren___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Term_explicitBinder___closed__1; +x_2 = l_Lean_Parser_Syntax_paren___closed__2; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_paren___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_paren___elambda__1___closed__3; +x_2 = l_Lean_Parser_Syntax_paren___closed__3; +x_3 = l_Lean_Parser_nodeInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_paren___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Parser_Syntax_paren___elambda__1___closed__5; +x_2 = lean_ctor_get(x_1, 0); +lean_inc(x_2); +x_3 = l_Lean_Parser_Syntax_paren___closed__4; +x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); +return x_4; +} +} +lean_object* _init_l_Lean_Parser_Syntax_paren___closed__6() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Syntax_paren___elambda__1), 3, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Syntax_paren___closed__7() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_paren___closed__5; +x_2 = l_Lean_Parser_Syntax_paren___closed__6; +x_3 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_paren() { +_start: +{ +lean_object* x_1; +x_1 = l_Lean_Parser_Syntax_paren___closed__7; +return x_1; +} +} +lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Syntax_paren___elambda__1___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +uint8_t x_5; lean_object* x_6; +x_5 = lean_unbox(x_1); +lean_dec(x_1); +x_6 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Syntax_paren___elambda__1___spec__1(x_5, x_2, x_3, x_4); +lean_dec(x_2); +return x_6; +} +} +lean_object* l___regBuiltinParser_Lean_Parser_Syntax_paren(lean_object* x_1) { +_start: +{ +uint8_t x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_2 = 0; +x_3 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; +x_4 = l_Lean_Parser_Syntax_paren___elambda__1___closed__3; +x_5 = l_Lean_Parser_Syntax_paren; +x_6 = l_Lean_Parser_addBuiltinParser(x_2, x_3, x_4, x_5, x_1); +return x_6; +} +} +lean_object* _init_l_Lean_Parser_Syntax_cat___elambda__1___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string("cat"); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Syntax_cat___elambda__1___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_paren___elambda__1___closed__2; +x_2 = l_Lean_Parser_Syntax_cat___elambda__1___closed__1; +x_3 = lean_name_mk_string(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_cat___elambda__1___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Syntax_cat___elambda__1___closed__2; +x_2 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_2, 0, x_1); +return x_2; +} +} +lean_object* _init_l_Lean_Parser_Syntax_cat___elambda__1___closed__4() { +_start: +{ +uint8_t x_1; lean_object* x_2; lean_object* x_3; uint8_t x_4; lean_object* x_5; +x_1 = 0; +x_2 = l_Lean_Parser_Syntax_cat___elambda__1___closed__1; +x_3 = l_Lean_Parser_Syntax_cat___elambda__1___closed__3; +x_4 = 1; +x_5 = l_Lean_Parser_mkAntiquot(x_1, x_2, x_3, x_4); +return x_5; +} +} +lean_object* l_Lean_Parser_Syntax_cat___elambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_4 = l_Lean_Parser_Level_ident___elambda__1___closed__4; +x_5 = lean_ctor_get(x_4, 1); +lean_inc(x_5); +x_6 = l_Lean_Parser_Syntax_cat___elambda__1___closed__4; +x_7 = lean_ctor_get(x_6, 1); +lean_inc(x_7); +x_8 = lean_ctor_get(x_3, 0); +lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +x_10 = lean_ctor_get(x_3, 1); +lean_inc(x_10); +lean_inc(x_2); +lean_inc(x_1); +x_11 = lean_apply_3(x_7, x_1, x_2, x_3); +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_5); +lean_dec(x_2); +lean_dec(x_1); +return x_11; +} +else +{ +lean_object* x_13; lean_object* x_14; uint8_t x_15; +x_13 = lean_ctor_get(x_12, 0); +lean_inc(x_13); +lean_dec(x_12); +x_14 = lean_ctor_get(x_11, 1); +lean_inc(x_14); +x_15 = lean_nat_dec_eq(x_14, x_10); +lean_dec(x_14); +if (x_15 == 0) +{ +lean_dec(x_13); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_5); +lean_dec(x_2); +lean_dec(x_1); +return x_11; +} +else +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +lean_inc(x_10); +x_16 = l_Lean_Parser_ParserState_restore(x_11, x_9, x_10); +lean_dec(x_9); +x_17 = lean_ctor_get(x_16, 0); +lean_inc(x_17); +x_18 = lean_array_get_size(x_17); +lean_dec(x_17); +x_19 = lean_apply_3(x_5, x_1, x_2, x_16); +x_20 = l_Lean_Parser_Syntax_cat___elambda__1___closed__2; +x_21 = l_Lean_Parser_ParserState_mkNode(x_19, x_20, x_18); +x_22 = l_Lean_Parser_mergeOrElseErrors(x_21, x_13, x_10); +lean_dec(x_10); +return x_22; +} +} +} +} +lean_object* _init_l_Lean_Parser_Syntax_cat___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Parser_Level_ident___elambda__1___closed__4; +x_2 = lean_ctor_get(x_1, 0); +lean_inc(x_2); +x_3 = l_Lean_Parser_Syntax_cat___elambda__1___closed__2; +x_4 = l_Lean_Parser_nodeInfo(x_3, x_2); +return x_4; +} +} +lean_object* _init_l_Lean_Parser_Syntax_cat___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Parser_Syntax_cat___elambda__1___closed__4; +x_2 = lean_ctor_get(x_1, 0); +lean_inc(x_2); +x_3 = l_Lean_Parser_Syntax_cat___closed__1; +x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); +return x_4; +} +} +lean_object* _init_l_Lean_Parser_Syntax_cat___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Syntax_cat___elambda__1), 3, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Syntax_cat___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_cat___closed__2; +x_2 = l_Lean_Parser_Syntax_cat___closed__3; +x_3 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_cat() { +_start: +{ +lean_object* x_1; +x_1 = l_Lean_Parser_Syntax_cat___closed__4; +return x_1; +} +} +lean_object* l___regBuiltinParser_Lean_Parser_Syntax_cat(lean_object* x_1) { +_start: +{ +uint8_t x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_2 = 0; +x_3 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; +x_4 = l_Lean_Parser_Syntax_cat___elambda__1___closed__2; +x_5 = l_Lean_Parser_Syntax_cat; +x_6 = l_Lean_Parser_addBuiltinParser(x_2, x_3, x_4, x_5, x_1); +return x_6; +} +} +lean_object* _init_l_Lean_Parser_Syntax_atom___elambda__1___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string("atom"); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Syntax_atom___elambda__1___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_paren___elambda__1___closed__2; +x_2 = l_Lean_Parser_Syntax_atom___elambda__1___closed__1; +x_3 = lean_name_mk_string(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_atom___elambda__1___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Syntax_atom___elambda__1___closed__2; +x_2 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_2, 0, x_1); +return x_2; +} +} +lean_object* _init_l_Lean_Parser_Syntax_atom___elambda__1___closed__4() { +_start: +{ +uint8_t x_1; lean_object* x_2; lean_object* x_3; uint8_t x_4; lean_object* x_5; +x_1 = 0; +x_2 = l_Lean_Parser_Syntax_atom___elambda__1___closed__1; +x_3 = l_Lean_Parser_Syntax_atom___elambda__1___closed__3; +x_4 = 1; +x_5 = l_Lean_Parser_mkAntiquot(x_1, x_2, x_3, x_4); +return x_5; +} +} +lean_object* l_Lean_Parser_Syntax_atom___elambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +x_4 = l_Lean_Parser_Syntax_atom___elambda__1___closed__4; +x_5 = lean_ctor_get(x_4, 1); +lean_inc(x_5); +x_6 = lean_ctor_get(x_3, 0); +lean_inc(x_6); +x_7 = lean_array_get_size(x_6); +lean_dec(x_6); +x_8 = lean_ctor_get(x_3, 1); +lean_inc(x_8); +lean_inc(x_2); +x_9 = lean_apply_3(x_5, x_1, x_2, x_3); +x_10 = lean_ctor_get(x_9, 3); +lean_inc(x_10); +if (lean_obj_tag(x_10) == 0) +{ +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_2); +return x_9; +} +else +{ +lean_object* x_11; lean_object* x_12; uint8_t x_13; +x_11 = lean_ctor_get(x_10, 0); +lean_inc(x_11); +lean_dec(x_10); +x_12 = lean_ctor_get(x_9, 1); +lean_inc(x_12); +x_13 = lean_nat_dec_eq(x_12, x_8); +lean_dec(x_12); +if (x_13 == 0) +{ +lean_dec(x_11); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_2); +return x_9; +} +else +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +lean_inc(x_8); +x_14 = l_Lean_Parser_ParserState_restore(x_9, x_7, x_8); +lean_dec(x_7); +x_15 = lean_ctor_get(x_14, 0); +lean_inc(x_15); +x_16 = lean_array_get_size(x_15); +lean_dec(x_15); +x_17 = l_Lean_Parser_strLitFn___rarg(x_2, x_14); +x_18 = l_Lean_Parser_Syntax_atom___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_17, x_18, x_16); +x_20 = l_Lean_Parser_mergeOrElseErrors(x_19, x_11, x_8); +lean_dec(x_8); +return x_20; +} +} +} +} +lean_object* _init_l_Lean_Parser_Syntax_atom___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_atom___elambda__1___closed__2; +x_2 = l_Lean_Parser_strLit___closed__1; +x_3 = l_Lean_Parser_nodeInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_atom___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Parser_Syntax_atom___elambda__1___closed__4; +x_2 = lean_ctor_get(x_1, 0); +lean_inc(x_2); +x_3 = l_Lean_Parser_Syntax_atom___closed__1; +x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); +return x_4; +} +} +lean_object* _init_l_Lean_Parser_Syntax_atom___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Syntax_atom___elambda__1), 3, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Syntax_atom___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_atom___closed__2; +x_2 = l_Lean_Parser_Syntax_atom___closed__3; +x_3 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_atom() { +_start: +{ +lean_object* x_1; +x_1 = l_Lean_Parser_Syntax_atom___closed__4; +return x_1; +} +} +lean_object* l___regBuiltinParser_Lean_Parser_Syntax_atom(lean_object* x_1) { +_start: +{ +uint8_t x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_2 = 0; +x_3 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; +x_4 = l_Lean_Parser_Syntax_atom___elambda__1___closed__2; +x_5 = l_Lean_Parser_Syntax_atom; +x_6 = l_Lean_Parser_addBuiltinParser(x_2, x_3, x_4, x_5, x_1); +return x_6; +} +} +lean_object* _init_l_Lean_Parser_Syntax_num___elambda__1___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_paren___elambda__1___closed__2; +x_2 = l_Lean_Parser_Level_num___elambda__1___closed__1; +x_3 = lean_name_mk_string(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_num___elambda__1___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Syntax_num___elambda__1___closed__1; +x_2 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_2, 0, x_1); +return x_2; +} +} +lean_object* _init_l_Lean_Parser_Syntax_num___elambda__1___closed__3() { +_start: +{ +uint8_t x_1; lean_object* x_2; lean_object* x_3; uint8_t x_4; lean_object* x_5; +x_1 = 0; +x_2 = l_Lean_Parser_Level_num___elambda__1___closed__1; +x_3 = l_Lean_Parser_Syntax_num___elambda__1___closed__2; +x_4 = 1; +x_5 = l_Lean_Parser_mkAntiquot(x_1, x_2, x_3, x_4); +return x_5; +} +} +lean_object* _init_l_Lean_Parser_Syntax_num___elambda__1___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Level_num___elambda__1___closed__1; +x_2 = l_String_trim(x_1); +return x_2; +} +} +lean_object* _init_l_Lean_Parser_Syntax_num___elambda__1___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Char_HasRepr___closed__1; +x_2 = l_Lean_Parser_Syntax_num___elambda__1___closed__4; +x_3 = lean_string_append(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_num___elambda__1___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_num___elambda__1___closed__5; +x_2 = l_Char_HasRepr___closed__1; +x_3 = lean_string_append(x_1, x_2); +return x_3; +} +} +lean_object* l_Lean_Parser_Syntax_num___elambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +x_4 = l_Lean_Parser_Syntax_num___elambda__1___closed__3; +x_5 = lean_ctor_get(x_4, 1); +lean_inc(x_5); +x_6 = lean_ctor_get(x_3, 0); +lean_inc(x_6); +x_7 = lean_array_get_size(x_6); +lean_dec(x_6); +x_8 = lean_ctor_get(x_3, 1); +lean_inc(x_8); +lean_inc(x_2); +x_9 = lean_apply_3(x_5, x_1, x_2, x_3); +x_10 = lean_ctor_get(x_9, 3); +lean_inc(x_10); +if (lean_obj_tag(x_10) == 0) +{ +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_2); +return x_9; +} +else +{ +lean_object* x_11; lean_object* x_12; uint8_t x_13; +x_11 = lean_ctor_get(x_10, 0); +lean_inc(x_11); +lean_dec(x_10); +x_12 = lean_ctor_get(x_9, 1); +lean_inc(x_12); +x_13 = lean_nat_dec_eq(x_12, x_8); +lean_dec(x_12); +if (x_13 == 0) +{ +lean_dec(x_11); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_2); +return x_9; +} +else +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +lean_inc(x_8); +x_14 = l_Lean_Parser_ParserState_restore(x_9, x_7, x_8); +lean_dec(x_7); +x_15 = lean_ctor_get(x_14, 0); +lean_inc(x_15); +x_16 = lean_array_get_size(x_15); +lean_dec(x_15); +x_17 = l_Lean_Parser_Syntax_num___elambda__1___closed__4; +x_18 = l_Lean_Parser_Syntax_num___elambda__1___closed__6; +x_19 = l_Lean_Parser_nonReservedSymbolFnAux(x_17, x_18, x_2, x_14); +x_20 = l_Lean_Parser_Syntax_num___elambda__1___closed__1; +x_21 = l_Lean_Parser_ParserState_mkNode(x_19, x_20, x_16); +x_22 = l_Lean_Parser_mergeOrElseErrors(x_21, x_11, x_8); +lean_dec(x_8); +return x_22; +} +} +} +} +lean_object* _init_l_Lean_Parser_Syntax_num___closed__1() { +_start: +{ +lean_object* x_1; uint8_t x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_num___elambda__1___closed__4; +x_2 = 0; +x_3 = l_Lean_Parser_nonReservedSymbolInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_num___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_num___elambda__1___closed__1; +x_2 = l_Lean_Parser_Syntax_num___closed__1; +x_3 = l_Lean_Parser_nodeInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_num___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Parser_Syntax_num___elambda__1___closed__3; +x_2 = lean_ctor_get(x_1, 0); +lean_inc(x_2); +x_3 = l_Lean_Parser_Syntax_num___closed__2; +x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); +return x_4; +} +} +lean_object* _init_l_Lean_Parser_Syntax_num___closed__4() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Syntax_num___elambda__1), 3, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Syntax_num___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_num___closed__3; +x_2 = l_Lean_Parser_Syntax_num___closed__4; +x_3 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_num() { +_start: +{ +lean_object* x_1; +x_1 = l_Lean_Parser_Syntax_num___closed__5; +return x_1; +} +} +lean_object* l___regBuiltinParser_Lean_Parser_Syntax_num(lean_object* x_1) { +_start: +{ +uint8_t x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_2 = 0; +x_3 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; +x_4 = l_Lean_Parser_Syntax_num___elambda__1___closed__1; +x_5 = l_Lean_Parser_Syntax_num; +x_6 = l_Lean_Parser_addBuiltinParser(x_2, x_3, x_4, x_5, x_1); +return x_6; +} +} +lean_object* _init_l_Lean_Parser_Syntax_str___elambda__1___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_paren___elambda__1___closed__2; +x_2 = l_Lean_Parser_Term_str___elambda__1___closed__1; +x_3 = lean_name_mk_string(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_str___elambda__1___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Syntax_str___elambda__1___closed__1; +x_2 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_2, 0, x_1); +return x_2; +} +} +lean_object* _init_l_Lean_Parser_Syntax_str___elambda__1___closed__3() { +_start: +{ +uint8_t x_1; lean_object* x_2; lean_object* x_3; uint8_t x_4; lean_object* x_5; +x_1 = 0; +x_2 = l_Lean_Parser_Term_str___elambda__1___closed__1; +x_3 = l_Lean_Parser_Syntax_str___elambda__1___closed__2; +x_4 = 1; +x_5 = l_Lean_Parser_mkAntiquot(x_1, x_2, x_3, x_4); +return x_5; +} +} +lean_object* _init_l_Lean_Parser_Syntax_str___elambda__1___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Term_str___elambda__1___closed__1; +x_2 = l_String_trim(x_1); +return x_2; +} +} +lean_object* _init_l_Lean_Parser_Syntax_str___elambda__1___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Char_HasRepr___closed__1; +x_2 = l_Lean_Parser_Syntax_str___elambda__1___closed__4; +x_3 = lean_string_append(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_str___elambda__1___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_str___elambda__1___closed__5; +x_2 = l_Char_HasRepr___closed__1; +x_3 = lean_string_append(x_1, x_2); +return x_3; +} +} +lean_object* l_Lean_Parser_Syntax_str___elambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +x_4 = l_Lean_Parser_Syntax_str___elambda__1___closed__3; +x_5 = lean_ctor_get(x_4, 1); +lean_inc(x_5); +x_6 = lean_ctor_get(x_3, 0); +lean_inc(x_6); +x_7 = lean_array_get_size(x_6); +lean_dec(x_6); +x_8 = lean_ctor_get(x_3, 1); +lean_inc(x_8); +lean_inc(x_2); +x_9 = lean_apply_3(x_5, x_1, x_2, x_3); +x_10 = lean_ctor_get(x_9, 3); +lean_inc(x_10); +if (lean_obj_tag(x_10) == 0) +{ +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_2); +return x_9; +} +else +{ +lean_object* x_11; lean_object* x_12; uint8_t x_13; +x_11 = lean_ctor_get(x_10, 0); +lean_inc(x_11); +lean_dec(x_10); +x_12 = lean_ctor_get(x_9, 1); +lean_inc(x_12); +x_13 = lean_nat_dec_eq(x_12, x_8); +lean_dec(x_12); +if (x_13 == 0) +{ +lean_dec(x_11); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_2); +return x_9; +} +else +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +lean_inc(x_8); +x_14 = l_Lean_Parser_ParserState_restore(x_9, x_7, x_8); +lean_dec(x_7); +x_15 = lean_ctor_get(x_14, 0); +lean_inc(x_15); +x_16 = lean_array_get_size(x_15); +lean_dec(x_15); +x_17 = l_Lean_Parser_Syntax_str___elambda__1___closed__4; +x_18 = l_Lean_Parser_Syntax_str___elambda__1___closed__6; +x_19 = l_Lean_Parser_nonReservedSymbolFnAux(x_17, x_18, x_2, x_14); +x_20 = l_Lean_Parser_Syntax_str___elambda__1___closed__1; +x_21 = l_Lean_Parser_ParserState_mkNode(x_19, x_20, x_16); +x_22 = l_Lean_Parser_mergeOrElseErrors(x_21, x_11, x_8); +lean_dec(x_8); +return x_22; +} +} +} +} +lean_object* _init_l_Lean_Parser_Syntax_str___closed__1() { +_start: +{ +lean_object* x_1; uint8_t x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_str___elambda__1___closed__4; +x_2 = 0; +x_3 = l_Lean_Parser_nonReservedSymbolInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_str___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_str___elambda__1___closed__1; +x_2 = l_Lean_Parser_Syntax_str___closed__1; +x_3 = l_Lean_Parser_nodeInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_str___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Parser_Syntax_str___elambda__1___closed__3; +x_2 = lean_ctor_get(x_1, 0); +lean_inc(x_2); +x_3 = l_Lean_Parser_Syntax_str___closed__2; +x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); +return x_4; +} +} +lean_object* _init_l_Lean_Parser_Syntax_str___closed__4() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Syntax_str___elambda__1), 3, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Syntax_str___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_str___closed__3; +x_2 = l_Lean_Parser_Syntax_str___closed__4; +x_3 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_str() { +_start: +{ +lean_object* x_1; +x_1 = l_Lean_Parser_Syntax_str___closed__5; +return x_1; +} +} +lean_object* l___regBuiltinParser_Lean_Parser_Syntax_str(lean_object* x_1) { +_start: +{ +uint8_t x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_2 = 0; +x_3 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; +x_4 = l_Lean_Parser_Syntax_str___elambda__1___closed__1; +x_5 = l_Lean_Parser_Syntax_str; +x_6 = l_Lean_Parser_addBuiltinParser(x_2, x_3, x_4, x_5, x_1); +return x_6; +} +} +lean_object* _init_l_Lean_Parser_Syntax_try___elambda__1___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string("try"); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Syntax_try___elambda__1___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_paren___elambda__1___closed__2; +x_2 = l_Lean_Parser_Syntax_try___elambda__1___closed__1; +x_3 = lean_name_mk_string(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_try___elambda__1___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Syntax_try___elambda__1___closed__2; +x_2 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_2, 0, x_1); +return x_2; +} +} +lean_object* _init_l_Lean_Parser_Syntax_try___elambda__1___closed__4() { +_start: +{ +uint8_t x_1; lean_object* x_2; lean_object* x_3; uint8_t x_4; lean_object* x_5; +x_1 = 0; +x_2 = l_Lean_Parser_Syntax_try___elambda__1___closed__1; +x_3 = l_Lean_Parser_Syntax_try___elambda__1___closed__3; +x_4 = 1; +x_5 = l_Lean_Parser_mkAntiquot(x_1, x_2, x_3, x_4); +return x_5; +} +} +lean_object* _init_l_Lean_Parser_Syntax_try___elambda__1___closed__5() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string("try "); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Syntax_try___elambda__1___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Syntax_try___elambda__1___closed__5; +x_2 = l_String_trim(x_1); +return x_2; +} +} +lean_object* _init_l_Lean_Parser_Syntax_try___elambda__1___closed__7() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Char_HasRepr___closed__1; +x_2 = l_Lean_Parser_Syntax_try___elambda__1___closed__6; +x_3 = lean_string_append(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_try___elambda__1___closed__8() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_try___elambda__1___closed__7; +x_2 = l_Char_HasRepr___closed__1; +x_3 = lean_string_append(x_1, x_2); +return x_3; +} +} +lean_object* l_Lean_Parser_Syntax_try___elambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +x_4 = l_Lean_Parser_Syntax_try___elambda__1___closed__4; +x_5 = lean_ctor_get(x_4, 1); +lean_inc(x_5); +x_6 = lean_ctor_get(x_3, 0); +lean_inc(x_6); +x_7 = lean_array_get_size(x_6); +lean_dec(x_6); +x_8 = lean_ctor_get(x_3, 1); +lean_inc(x_8); +lean_inc(x_2); +x_9 = lean_apply_3(x_5, x_1, x_2, x_3); +x_10 = lean_ctor_get(x_9, 3); +lean_inc(x_10); +if (lean_obj_tag(x_10) == 0) +{ +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_2); +return x_9; +} +else +{ +lean_object* x_11; lean_object* x_12; uint8_t x_13; +x_11 = lean_ctor_get(x_10, 0); +lean_inc(x_11); +lean_dec(x_10); +x_12 = lean_ctor_get(x_9, 1); +lean_inc(x_12); +x_13 = lean_nat_dec_eq(x_12, x_8); +lean_dec(x_12); +if (x_13 == 0) +{ +lean_dec(x_11); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_2); +return x_9; +} +else +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +lean_inc(x_8); +x_14 = l_Lean_Parser_ParserState_restore(x_9, x_7, x_8); +lean_dec(x_7); +x_15 = lean_ctor_get(x_14, 0); +lean_inc(x_15); +x_16 = lean_array_get_size(x_15); +lean_dec(x_15); +x_17 = l_Lean_Parser_Syntax_try___elambda__1___closed__6; +x_18 = l_Lean_Parser_Syntax_try___elambda__1___closed__8; +lean_inc(x_2); +x_19 = l_Lean_Parser_nonReservedSymbolFnAux(x_17, x_18, x_2, x_14); +x_20 = lean_ctor_get(x_19, 3); +lean_inc(x_20); +if (lean_obj_tag(x_20) == 0) +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_21 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; +x_22 = lean_unsigned_to_nat(0u); +x_23 = l_Lean_Parser_categoryParserFn(x_21, x_22, x_2, x_19); +x_24 = l_Lean_Parser_Syntax_try___elambda__1___closed__2; +x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_16); +x_26 = l_Lean_Parser_mergeOrElseErrors(x_25, x_11, x_8); +lean_dec(x_8); +return x_26; +} +else +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; +lean_dec(x_20); +lean_dec(x_2); +x_27 = l_Lean_Parser_Syntax_try___elambda__1___closed__2; +x_28 = l_Lean_Parser_ParserState_mkNode(x_19, x_27, x_16); +x_29 = l_Lean_Parser_mergeOrElseErrors(x_28, x_11, x_8); +lean_dec(x_8); +return x_29; +} +} +} +} +} +lean_object* _init_l_Lean_Parser_Syntax_try___closed__1() { +_start: +{ +lean_object* x_1; uint8_t x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_try___elambda__1___closed__6; +x_2 = 0; +x_3 = l_Lean_Parser_nonReservedSymbolInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_try___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Parser_Syntax_paren___closed__1; +x_2 = lean_ctor_get(x_1, 0); +lean_inc(x_2); +x_3 = l_Lean_Parser_Syntax_try___closed__1; +x_4 = l_Lean_Parser_andthenInfo(x_3, x_2); +return x_4; +} +} +lean_object* _init_l_Lean_Parser_Syntax_try___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_try___elambda__1___closed__2; +x_2 = l_Lean_Parser_Syntax_try___closed__2; +x_3 = l_Lean_Parser_nodeInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_try___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Parser_Syntax_try___elambda__1___closed__4; +x_2 = lean_ctor_get(x_1, 0); +lean_inc(x_2); +x_3 = l_Lean_Parser_Syntax_try___closed__3; +x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); +return x_4; +} +} +lean_object* _init_l_Lean_Parser_Syntax_try___closed__5() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Syntax_try___elambda__1), 3, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Syntax_try___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_try___closed__4; +x_2 = l_Lean_Parser_Syntax_try___closed__5; +x_3 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_try() { +_start: +{ +lean_object* x_1; +x_1 = l_Lean_Parser_Syntax_try___closed__6; +return x_1; +} +} +lean_object* l___regBuiltinParser_Lean_Parser_Syntax_try(lean_object* x_1) { +_start: +{ +uint8_t x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_2 = 0; +x_3 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; +x_4 = l_Lean_Parser_Syntax_try___elambda__1___closed__2; +x_5 = l_Lean_Parser_Syntax_try; +x_6 = l_Lean_Parser_addBuiltinParser(x_2, x_3, x_4, x_5, x_1); +return x_6; +} +} +lean_object* _init_l_Lean_Parser_Syntax_lookahead___elambda__1___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string("lookahead"); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Syntax_lookahead___elambda__1___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_paren___elambda__1___closed__2; +x_2 = l_Lean_Parser_Syntax_lookahead___elambda__1___closed__1; +x_3 = lean_name_mk_string(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_lookahead___elambda__1___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Syntax_lookahead___elambda__1___closed__2; +x_2 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_2, 0, x_1); +return x_2; +} +} +lean_object* _init_l_Lean_Parser_Syntax_lookahead___elambda__1___closed__4() { +_start: +{ +uint8_t x_1; lean_object* x_2; lean_object* x_3; uint8_t x_4; lean_object* x_5; +x_1 = 0; +x_2 = l_Lean_Parser_Syntax_lookahead___elambda__1___closed__1; +x_3 = l_Lean_Parser_Syntax_lookahead___elambda__1___closed__3; +x_4 = 1; +x_5 = l_Lean_Parser_mkAntiquot(x_1, x_2, x_3, x_4); +return x_5; +} +} +lean_object* _init_l_Lean_Parser_Syntax_lookahead___elambda__1___closed__5() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string("lookahead "); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Syntax_lookahead___elambda__1___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Syntax_lookahead___elambda__1___closed__5; +x_2 = l_String_trim(x_1); +return x_2; +} +} +lean_object* _init_l_Lean_Parser_Syntax_lookahead___elambda__1___closed__7() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Char_HasRepr___closed__1; +x_2 = l_Lean_Parser_Syntax_lookahead___elambda__1___closed__6; +x_3 = lean_string_append(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_lookahead___elambda__1___closed__8() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_lookahead___elambda__1___closed__7; +x_2 = l_Char_HasRepr___closed__1; +x_3 = lean_string_append(x_1, x_2); +return x_3; +} +} +lean_object* l_Lean_Parser_Syntax_lookahead___elambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +x_4 = l_Lean_Parser_Syntax_lookahead___elambda__1___closed__4; +x_5 = lean_ctor_get(x_4, 1); +lean_inc(x_5); +x_6 = lean_ctor_get(x_3, 0); +lean_inc(x_6); +x_7 = lean_array_get_size(x_6); +lean_dec(x_6); +x_8 = lean_ctor_get(x_3, 1); +lean_inc(x_8); +lean_inc(x_2); +x_9 = lean_apply_3(x_5, x_1, x_2, x_3); +x_10 = lean_ctor_get(x_9, 3); +lean_inc(x_10); +if (lean_obj_tag(x_10) == 0) +{ +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_2); +return x_9; +} +else +{ +lean_object* x_11; lean_object* x_12; uint8_t x_13; +x_11 = lean_ctor_get(x_10, 0); +lean_inc(x_11); +lean_dec(x_10); +x_12 = lean_ctor_get(x_9, 1); +lean_inc(x_12); +x_13 = lean_nat_dec_eq(x_12, x_8); +lean_dec(x_12); +if (x_13 == 0) +{ +lean_dec(x_11); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_2); +return x_9; +} +else +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +lean_inc(x_8); +x_14 = l_Lean_Parser_ParserState_restore(x_9, x_7, x_8); +lean_dec(x_7); +x_15 = lean_ctor_get(x_14, 0); +lean_inc(x_15); +x_16 = lean_array_get_size(x_15); +lean_dec(x_15); +x_17 = l_Lean_Parser_Syntax_lookahead___elambda__1___closed__6; +x_18 = l_Lean_Parser_Syntax_lookahead___elambda__1___closed__8; +lean_inc(x_2); +x_19 = l_Lean_Parser_nonReservedSymbolFnAux(x_17, x_18, x_2, x_14); +x_20 = lean_ctor_get(x_19, 3); +lean_inc(x_20); +if (lean_obj_tag(x_20) == 0) +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_21 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; +x_22 = lean_unsigned_to_nat(0u); +x_23 = l_Lean_Parser_categoryParserFn(x_21, x_22, x_2, x_19); +x_24 = l_Lean_Parser_Syntax_lookahead___elambda__1___closed__2; +x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_16); +x_26 = l_Lean_Parser_mergeOrElseErrors(x_25, x_11, x_8); +lean_dec(x_8); +return x_26; +} +else +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; +lean_dec(x_20); +lean_dec(x_2); +x_27 = l_Lean_Parser_Syntax_lookahead___elambda__1___closed__2; +x_28 = l_Lean_Parser_ParserState_mkNode(x_19, x_27, x_16); +x_29 = l_Lean_Parser_mergeOrElseErrors(x_28, x_11, x_8); +lean_dec(x_8); +return x_29; +} +} +} +} +} +lean_object* _init_l_Lean_Parser_Syntax_lookahead___closed__1() { +_start: +{ +lean_object* x_1; uint8_t x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_lookahead___elambda__1___closed__6; +x_2 = 0; +x_3 = l_Lean_Parser_nonReservedSymbolInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_lookahead___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Parser_Syntax_paren___closed__1; +x_2 = lean_ctor_get(x_1, 0); +lean_inc(x_2); +x_3 = l_Lean_Parser_Syntax_lookahead___closed__1; +x_4 = l_Lean_Parser_andthenInfo(x_3, x_2); +return x_4; +} +} +lean_object* _init_l_Lean_Parser_Syntax_lookahead___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_lookahead___elambda__1___closed__2; +x_2 = l_Lean_Parser_Syntax_lookahead___closed__2; +x_3 = l_Lean_Parser_nodeInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_lookahead___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Parser_Syntax_lookahead___elambda__1___closed__4; +x_2 = lean_ctor_get(x_1, 0); +lean_inc(x_2); +x_3 = l_Lean_Parser_Syntax_lookahead___closed__3; +x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); +return x_4; +} +} +lean_object* _init_l_Lean_Parser_Syntax_lookahead___closed__5() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Syntax_lookahead___elambda__1), 3, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Syntax_lookahead___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_lookahead___closed__4; +x_2 = l_Lean_Parser_Syntax_lookahead___closed__5; +x_3 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_lookahead() { +_start: +{ +lean_object* x_1; +x_1 = l_Lean_Parser_Syntax_lookahead___closed__6; +return x_1; +} +} +lean_object* l___regBuiltinParser_Lean_Parser_Syntax_lookahead(lean_object* x_1) { +_start: +{ +uint8_t x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_2 = 0; +x_3 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; +x_4 = l_Lean_Parser_Syntax_lookahead___elambda__1___closed__2; +x_5 = l_Lean_Parser_Syntax_lookahead; +x_6 = l_Lean_Parser_addBuiltinParser(x_2, x_3, x_4, x_5, x_1); +return x_6; +} +} +lean_object* _init_l_Lean_Parser_Syntax_sepBy___elambda__1___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string("sepBy"); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Syntax_sepBy___elambda__1___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_paren___elambda__1___closed__2; +x_2 = l_Lean_Parser_Syntax_sepBy___elambda__1___closed__1; +x_3 = lean_name_mk_string(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_sepBy___elambda__1___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Syntax_sepBy___elambda__1___closed__2; +x_2 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_2, 0, x_1); +return x_2; +} +} +lean_object* _init_l_Lean_Parser_Syntax_sepBy___elambda__1___closed__4() { +_start: +{ +uint8_t x_1; lean_object* x_2; lean_object* x_3; uint8_t x_4; lean_object* x_5; +x_1 = 0; +x_2 = l_Lean_Parser_Syntax_sepBy___elambda__1___closed__1; +x_3 = l_Lean_Parser_Syntax_sepBy___elambda__1___closed__3; +x_4 = 1; +x_5 = l_Lean_Parser_mkAntiquot(x_1, x_2, x_3, x_4); +return x_5; +} +} +lean_object* _init_l_Lean_Parser_Syntax_sepBy___elambda__1___closed__5() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string("sepBy "); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Syntax_sepBy___elambda__1___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Syntax_sepBy___elambda__1___closed__5; +x_2 = l_String_trim(x_1); +return x_2; +} +} +lean_object* _init_l_Lean_Parser_Syntax_sepBy___elambda__1___closed__7() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Char_HasRepr___closed__1; +x_2 = l_Lean_Parser_Syntax_sepBy___elambda__1___closed__6; +x_3 = lean_string_append(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_sepBy___elambda__1___closed__8() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_sepBy___elambda__1___closed__7; +x_2 = l_Char_HasRepr___closed__1; +x_3 = lean_string_append(x_1, x_2); +return x_3; +} +} +lean_object* l_Lean_Parser_Syntax_sepBy___elambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +x_4 = l_Lean_Parser_Syntax_sepBy___elambda__1___closed__4; +x_5 = lean_ctor_get(x_4, 1); +lean_inc(x_5); +x_6 = lean_ctor_get(x_3, 0); +lean_inc(x_6); +x_7 = lean_array_get_size(x_6); +lean_dec(x_6); +x_8 = lean_ctor_get(x_3, 1); +lean_inc(x_8); +lean_inc(x_2); +x_9 = lean_apply_3(x_5, x_1, x_2, x_3); +x_10 = lean_ctor_get(x_9, 3); +lean_inc(x_10); +if (lean_obj_tag(x_10) == 0) +{ +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_2); +return x_9; +} +else +{ +lean_object* x_11; lean_object* x_12; uint8_t x_13; +x_11 = lean_ctor_get(x_10, 0); +lean_inc(x_11); +lean_dec(x_10); +x_12 = lean_ctor_get(x_9, 1); +lean_inc(x_12); +x_13 = lean_nat_dec_eq(x_12, x_8); +lean_dec(x_12); +if (x_13 == 0) +{ +lean_dec(x_11); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_2); +return x_9; +} +else +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +lean_inc(x_8); +x_14 = l_Lean_Parser_ParserState_restore(x_9, x_7, x_8); +lean_dec(x_7); +x_15 = lean_ctor_get(x_14, 0); +lean_inc(x_15); +x_16 = lean_array_get_size(x_15); +lean_dec(x_15); +x_17 = l_Lean_Parser_Syntax_sepBy___elambda__1___closed__6; +x_18 = l_Lean_Parser_Syntax_sepBy___elambda__1___closed__8; +lean_inc(x_2); +x_19 = l_Lean_Parser_nonReservedSymbolFnAux(x_17, x_18, x_2, x_14); +x_20 = lean_ctor_get(x_19, 3); +lean_inc(x_20); +if (lean_obj_tag(x_20) == 0) +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_21 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; +x_22 = lean_unsigned_to_nat(0u); +lean_inc(x_2); +x_23 = l_Lean_Parser_categoryParserFn(x_21, x_22, x_2, x_19); +x_24 = lean_ctor_get(x_23, 3); +lean_inc(x_24); +if (lean_obj_tag(x_24) == 0) +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_25 = l_Lean_Parser_categoryParserFn(x_21, x_22, x_2, x_23); +x_26 = l_Lean_Parser_Syntax_sepBy___elambda__1___closed__2; +x_27 = l_Lean_Parser_ParserState_mkNode(x_25, x_26, x_16); +x_28 = l_Lean_Parser_mergeOrElseErrors(x_27, x_11, x_8); +lean_dec(x_8); +return x_28; +} +else +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; +lean_dec(x_24); +lean_dec(x_2); +x_29 = l_Lean_Parser_Syntax_sepBy___elambda__1___closed__2; +x_30 = l_Lean_Parser_ParserState_mkNode(x_23, x_29, x_16); +x_31 = l_Lean_Parser_mergeOrElseErrors(x_30, x_11, x_8); +lean_dec(x_8); +return x_31; +} +} +else +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; +lean_dec(x_20); +lean_dec(x_2); +x_32 = l_Lean_Parser_Syntax_sepBy___elambda__1___closed__2; +x_33 = l_Lean_Parser_ParserState_mkNode(x_19, x_32, x_16); +x_34 = l_Lean_Parser_mergeOrElseErrors(x_33, x_11, x_8); +lean_dec(x_8); +return x_34; +} +} +} +} +} +lean_object* _init_l_Lean_Parser_Syntax_sepBy___closed__1() { +_start: +{ +lean_object* x_1; uint8_t x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_sepBy___elambda__1___closed__6; +x_2 = 0; +x_3 = l_Lean_Parser_nonReservedSymbolInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_sepBy___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_paren___closed__1; +x_2 = lean_ctor_get(x_1, 0); +lean_inc(x_2); +lean_inc(x_2); +x_3 = l_Lean_Parser_andthenInfo(x_2, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_sepBy___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_sepBy___closed__1; +x_2 = l_Lean_Parser_Syntax_sepBy___closed__2; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_sepBy___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_sepBy___elambda__1___closed__2; +x_2 = l_Lean_Parser_Syntax_sepBy___closed__3; +x_3 = l_Lean_Parser_nodeInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_sepBy___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Parser_Syntax_sepBy___elambda__1___closed__4; +x_2 = lean_ctor_get(x_1, 0); +lean_inc(x_2); +x_3 = l_Lean_Parser_Syntax_sepBy___closed__4; +x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); +return x_4; +} +} +lean_object* _init_l_Lean_Parser_Syntax_sepBy___closed__6() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Syntax_sepBy___elambda__1), 3, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Syntax_sepBy___closed__7() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_sepBy___closed__5; +x_2 = l_Lean_Parser_Syntax_sepBy___closed__6; +x_3 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_sepBy() { +_start: +{ +lean_object* x_1; +x_1 = l_Lean_Parser_Syntax_sepBy___closed__7; +return x_1; +} +} +lean_object* l___regBuiltinParser_Lean_Parser_Syntax_sepBy(lean_object* x_1) { +_start: +{ +uint8_t x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_2 = 0; +x_3 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; +x_4 = l_Lean_Parser_Syntax_sepBy___elambda__1___closed__2; +x_5 = l_Lean_Parser_Syntax_sepBy; +x_6 = l_Lean_Parser_addBuiltinParser(x_2, x_3, x_4, x_5, x_1); +return x_6; +} +} +lean_object* _init_l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string("sepBy1"); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_paren___elambda__1___closed__2; +x_2 = l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__1; +x_3 = lean_name_mk_string(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__2; +x_2 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_2, 0, x_1); +return x_2; +} +} +lean_object* _init_l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__4() { +_start: +{ +uint8_t x_1; lean_object* x_2; lean_object* x_3; uint8_t x_4; lean_object* x_5; +x_1 = 0; +x_2 = l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__1; +x_3 = l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__3; +x_4 = 1; +x_5 = l_Lean_Parser_mkAntiquot(x_1, x_2, x_3, x_4); +return x_5; +} +} +lean_object* _init_l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__5() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string("sepBy1 "); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__5; +x_2 = l_String_trim(x_1); +return x_2; +} +} +lean_object* _init_l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__7() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Char_HasRepr___closed__1; +x_2 = l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__6; +x_3 = lean_string_append(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__8() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__7; +x_2 = l_Char_HasRepr___closed__1; +x_3 = lean_string_append(x_1, x_2); +return x_3; +} +} +lean_object* l_Lean_Parser_Syntax_sepBy1___elambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +x_4 = l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__4; +x_5 = lean_ctor_get(x_4, 1); +lean_inc(x_5); +x_6 = lean_ctor_get(x_3, 0); +lean_inc(x_6); +x_7 = lean_array_get_size(x_6); +lean_dec(x_6); +x_8 = lean_ctor_get(x_3, 1); +lean_inc(x_8); +lean_inc(x_2); +x_9 = lean_apply_3(x_5, x_1, x_2, x_3); +x_10 = lean_ctor_get(x_9, 3); +lean_inc(x_10); +if (lean_obj_tag(x_10) == 0) +{ +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_2); +return x_9; +} +else +{ +lean_object* x_11; lean_object* x_12; uint8_t x_13; +x_11 = lean_ctor_get(x_10, 0); +lean_inc(x_11); +lean_dec(x_10); +x_12 = lean_ctor_get(x_9, 1); +lean_inc(x_12); +x_13 = lean_nat_dec_eq(x_12, x_8); +lean_dec(x_12); +if (x_13 == 0) +{ +lean_dec(x_11); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_2); +return x_9; +} +else +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +lean_inc(x_8); +x_14 = l_Lean_Parser_ParserState_restore(x_9, x_7, x_8); +lean_dec(x_7); +x_15 = lean_ctor_get(x_14, 0); +lean_inc(x_15); +x_16 = lean_array_get_size(x_15); +lean_dec(x_15); +x_17 = l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__6; +x_18 = l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__8; +lean_inc(x_2); +x_19 = l_Lean_Parser_nonReservedSymbolFnAux(x_17, x_18, x_2, x_14); +x_20 = lean_ctor_get(x_19, 3); +lean_inc(x_20); +if (lean_obj_tag(x_20) == 0) +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_21 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; +x_22 = lean_unsigned_to_nat(0u); +lean_inc(x_2); +x_23 = l_Lean_Parser_categoryParserFn(x_21, x_22, x_2, x_19); +x_24 = lean_ctor_get(x_23, 3); +lean_inc(x_24); +if (lean_obj_tag(x_24) == 0) +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_25 = l_Lean_Parser_categoryParserFn(x_21, x_22, x_2, x_23); +x_26 = l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__2; +x_27 = l_Lean_Parser_ParserState_mkNode(x_25, x_26, x_16); +x_28 = l_Lean_Parser_mergeOrElseErrors(x_27, x_11, x_8); +lean_dec(x_8); +return x_28; +} +else +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; +lean_dec(x_24); +lean_dec(x_2); +x_29 = l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__2; +x_30 = l_Lean_Parser_ParserState_mkNode(x_23, x_29, x_16); +x_31 = l_Lean_Parser_mergeOrElseErrors(x_30, x_11, x_8); +lean_dec(x_8); +return x_31; +} +} +else +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; +lean_dec(x_20); +lean_dec(x_2); +x_32 = l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__2; +x_33 = l_Lean_Parser_ParserState_mkNode(x_19, x_32, x_16); +x_34 = l_Lean_Parser_mergeOrElseErrors(x_33, x_11, x_8); +lean_dec(x_8); +return x_34; +} +} +} +} +} +lean_object* _init_l_Lean_Parser_Syntax_sepBy1___closed__1() { +_start: +{ +lean_object* x_1; uint8_t x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__6; +x_2 = 0; +x_3 = l_Lean_Parser_nonReservedSymbolInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_sepBy1___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_sepBy1___closed__1; +x_2 = l_Lean_Parser_Syntax_sepBy___closed__2; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_sepBy1___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__2; +x_2 = l_Lean_Parser_Syntax_sepBy1___closed__2; +x_3 = l_Lean_Parser_nodeInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_sepBy1___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__4; +x_2 = lean_ctor_get(x_1, 0); +lean_inc(x_2); +x_3 = l_Lean_Parser_Syntax_sepBy1___closed__3; +x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); +return x_4; +} +} +lean_object* _init_l_Lean_Parser_Syntax_sepBy1___closed__5() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Syntax_sepBy1___elambda__1), 3, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Syntax_sepBy1___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_sepBy1___closed__4; +x_2 = l_Lean_Parser_Syntax_sepBy1___closed__5; +x_3 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_sepBy1() { +_start: +{ +lean_object* x_1; +x_1 = l_Lean_Parser_Syntax_sepBy1___closed__6; +return x_1; +} +} +lean_object* l___regBuiltinParser_Lean_Parser_Syntax_sepBy1(lean_object* x_1) { +_start: +{ +uint8_t x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_2 = 0; +x_3 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; +x_4 = l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__2; +x_5 = l_Lean_Parser_Syntax_sepBy1; +x_6 = l_Lean_Parser_addBuiltinParser(x_2, x_3, x_4, x_5, x_1); +return x_6; +} +} +lean_object* _init_l_Lean_Parser_Syntax_many___elambda__1___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string("many"); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Syntax_many___elambda__1___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_paren___elambda__1___closed__2; +x_2 = l_Lean_Parser_Syntax_many___elambda__1___closed__1; +x_3 = lean_name_mk_string(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_many___elambda__1___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Char_HasRepr___closed__1; +x_2 = l_Lean_Parser_mkAntiquot___closed__6; +x_3 = lean_string_append(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_many___elambda__1___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_many___elambda__1___closed__3; +x_2 = l_Char_HasRepr___closed__1; +x_3 = lean_string_append(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_many___elambda__1___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Parser_Syntax_many___elambda__1___closed__4; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_2); +lean_ctor_set(x_3, 1, x_1); +return x_3; +} +} +lean_object* l_Lean_Parser_Syntax_many___elambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; +x_4 = lean_ctor_get(x_3, 0); +lean_inc(x_4); +x_5 = lean_array_get_size(x_4); +lean_dec(x_4); +lean_inc(x_3); +x_6 = l_Lean_Parser_ParserState_pushSyntax(x_3, x_1); +x_7 = lean_ctor_get(x_3, 3); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; +x_8 = lean_ctor_get(x_3, 1); +lean_inc(x_8); +lean_dec(x_3); +x_9 = l_Lean_Parser_tokenFn(x_2, x_6); +x_10 = lean_ctor_get(x_9, 3); +lean_inc(x_10); +if (lean_obj_tag(x_10) == 0) +{ +lean_object* x_11; lean_object* x_12; +x_11 = lean_ctor_get(x_9, 0); +lean_inc(x_11); +x_12 = l_Array_back___at___private_Init_Lean_Parser_Parser_6__updateCache___spec__1(x_11); +lean_dec(x_11); +if (lean_obj_tag(x_12) == 2) +{ +lean_object* x_13; lean_object* x_14; uint8_t x_15; +x_13 = lean_ctor_get(x_12, 1); +lean_inc(x_13); +lean_dec(x_12); +x_14 = l_Lean_Parser_mkAntiquot___closed__6; +x_15 = lean_string_dec_eq(x_13, x_14); +lean_dec(x_13); +if (x_15 == 0) +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_16 = l_Lean_Parser_Syntax_many___elambda__1___closed__5; +x_17 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_16, x_8); +x_18 = l_Lean_Parser_Syntax_many___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_17, x_18, x_5); +return x_19; +} +else +{ +lean_object* x_20; lean_object* x_21; +lean_dec(x_8); +x_20 = l_Lean_Parser_Syntax_many___elambda__1___closed__2; +x_21 = l_Lean_Parser_ParserState_mkNode(x_9, x_20, x_5); +return x_21; +} +} +else +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +lean_dec(x_12); +x_22 = l_Lean_Parser_Syntax_many___elambda__1___closed__5; +x_23 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_22, x_8); +x_24 = l_Lean_Parser_Syntax_many___elambda__1___closed__2; +x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_5); +return x_25; +} +} +else +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; +lean_dec(x_10); +x_26 = l_Lean_Parser_Syntax_many___elambda__1___closed__5; +x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_26, x_8); +x_28 = l_Lean_Parser_Syntax_many___elambda__1___closed__2; +x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_5); +return x_29; +} +} +else +{ +lean_object* x_30; lean_object* x_31; +lean_dec(x_7); +lean_dec(x_3); +lean_dec(x_2); +x_30 = l_Lean_Parser_Syntax_many___elambda__1___closed__2; +x_31 = l_Lean_Parser_ParserState_mkNode(x_6, x_30, x_5); +return x_31; +} +} +} +lean_object* _init_l_Lean_Parser_Syntax_many___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_mkAntiquot___closed__7; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_many___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_many___elambda__1___closed__2; +x_2 = l_Lean_Parser_Syntax_many___closed__1; +x_3 = l_Lean_Parser_nodeInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_many___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Syntax_many___elambda__1), 3, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Syntax_many___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_many___closed__2; +x_2 = l_Lean_Parser_Syntax_many___closed__3; +x_3 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_many() { +_start: +{ +lean_object* x_1; +x_1 = l_Lean_Parser_Syntax_many___closed__4; +return x_1; +} +} +lean_object* l___regBuiltinParser_Lean_Parser_Syntax_many(lean_object* x_1) { +_start: +{ +uint8_t x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_2 = 1; +x_3 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; +x_4 = l_Lean_Parser_Syntax_many___elambda__1___closed__2; +x_5 = l_Lean_Parser_Syntax_many; +x_6 = l_Lean_Parser_addBuiltinParser(x_2, x_3, x_4, x_5, x_1); +return x_6; +} +} +lean_object* _init_l_Lean_Parser_Syntax_many1___elambda__1___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string("many1"); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Syntax_many1___elambda__1___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_paren___elambda__1___closed__2; +x_2 = l_Lean_Parser_Syntax_many1___elambda__1___closed__1; +x_3 = lean_name_mk_string(x_1, x_2); +return x_3; +} +} +lean_object* l_Lean_Parser_Syntax_many1___elambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; +x_4 = lean_ctor_get(x_3, 0); +lean_inc(x_4); +x_5 = lean_array_get_size(x_4); +lean_dec(x_4); +lean_inc(x_3); +x_6 = l_Lean_Parser_ParserState_pushSyntax(x_3, x_1); +x_7 = lean_ctor_get(x_3, 3); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; +x_8 = lean_ctor_get(x_3, 1); +lean_inc(x_8); +lean_dec(x_3); +x_9 = l_Lean_Parser_tokenFn(x_2, x_6); +x_10 = lean_ctor_get(x_9, 3); +lean_inc(x_10); +if (lean_obj_tag(x_10) == 0) +{ +lean_object* x_11; lean_object* x_12; +x_11 = lean_ctor_get(x_9, 0); +lean_inc(x_11); +x_12 = l_Array_back___at___private_Init_Lean_Parser_Parser_6__updateCache___spec__1(x_11); +lean_dec(x_11); +if (lean_obj_tag(x_12) == 2) +{ +lean_object* x_13; lean_object* x_14; uint8_t x_15; +x_13 = lean_ctor_get(x_12, 1); +lean_inc(x_13); +lean_dec(x_12); +x_14 = l_Lean_Parser_Level_addLit___elambda__1___closed__3; +x_15 = lean_string_dec_eq(x_13, x_14); +lean_dec(x_13); +if (x_15 == 0) +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_16 = l_Lean_Parser_Level_addLit___elambda__1___closed__6; +x_17 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_16, x_8); +x_18 = l_Lean_Parser_Syntax_many1___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_17, x_18, x_5); +return x_19; +} +else +{ +lean_object* x_20; lean_object* x_21; +lean_dec(x_8); +x_20 = l_Lean_Parser_Syntax_many1___elambda__1___closed__2; +x_21 = l_Lean_Parser_ParserState_mkNode(x_9, x_20, x_5); +return x_21; +} +} +else +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +lean_dec(x_12); +x_22 = l_Lean_Parser_Level_addLit___elambda__1___closed__6; +x_23 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_22, x_8); +x_24 = l_Lean_Parser_Syntax_many1___elambda__1___closed__2; +x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_5); +return x_25; +} +} +else +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; +lean_dec(x_10); +x_26 = l_Lean_Parser_Level_addLit___elambda__1___closed__6; +x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_26, x_8); +x_28 = l_Lean_Parser_Syntax_many1___elambda__1___closed__2; +x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_5); +return x_29; +} +} +else +{ +lean_object* x_30; lean_object* x_31; +lean_dec(x_7); +lean_dec(x_3); +lean_dec(x_2); +x_30 = l_Lean_Parser_Syntax_many1___elambda__1___closed__2; +x_31 = l_Lean_Parser_ParserState_mkNode(x_6, x_30, x_5); +return x_31; +} +} +} +lean_object* _init_l_Lean_Parser_Syntax_many1___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Parser_Level_addLit___elambda__1___closed__3; +x_3 = l_Lean_Parser_symbolInfo(x_2, x_1); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_many1___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Syntax_many1___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_many1___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_many1___elambda__1___closed__2; +x_2 = l_Lean_Parser_Syntax_many1___closed__2; +x_3 = l_Lean_Parser_nodeInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_many1___closed__4() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Syntax_many1___elambda__1), 3, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Syntax_many1___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_many1___closed__3; +x_2 = l_Lean_Parser_Syntax_many1___closed__4; +x_3 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_many1() { +_start: +{ +lean_object* x_1; +x_1 = l_Lean_Parser_Syntax_many1___closed__5; +return x_1; +} +} +lean_object* l___regBuiltinParser_Lean_Parser_Syntax_many1(lean_object* x_1) { +_start: +{ +uint8_t x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_2 = 1; +x_3 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; +x_4 = l_Lean_Parser_Syntax_many1___elambda__1___closed__2; +x_5 = l_Lean_Parser_Syntax_many1; +x_6 = l_Lean_Parser_addBuiltinParser(x_2, x_3, x_4, x_5, x_1); +return x_6; +} +} +lean_object* _init_l_Lean_Parser_Syntax_optional___elambda__1___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string("optional"); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Syntax_optional___elambda__1___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_paren___elambda__1___closed__2; +x_2 = l_Lean_Parser_Syntax_optional___elambda__1___closed__1; +x_3 = lean_name_mk_string(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_optional___elambda__1___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_FirstTokens_toStr___closed__3; +x_2 = l_String_trim(x_1); +return x_2; +} +} +lean_object* _init_l_Lean_Parser_Syntax_optional___elambda__1___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Char_HasRepr___closed__1; +x_2 = l_Lean_Parser_Syntax_optional___elambda__1___closed__3; +x_3 = lean_string_append(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_optional___elambda__1___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_optional___elambda__1___closed__4; +x_2 = l_Char_HasRepr___closed__1; +x_3 = lean_string_append(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_optional___elambda__1___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Parser_Syntax_optional___elambda__1___closed__5; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_2); +lean_ctor_set(x_3, 1, x_1); +return x_3; +} +} +lean_object* l_Lean_Parser_Syntax_optional___elambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; +x_4 = lean_ctor_get(x_3, 0); +lean_inc(x_4); +x_5 = lean_array_get_size(x_4); +lean_dec(x_4); +lean_inc(x_3); +x_6 = l_Lean_Parser_ParserState_pushSyntax(x_3, x_1); +x_7 = lean_ctor_get(x_3, 3); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; +x_8 = lean_ctor_get(x_3, 1); +lean_inc(x_8); +lean_dec(x_3); +x_9 = l_Lean_Parser_tokenFn(x_2, x_6); +x_10 = lean_ctor_get(x_9, 3); +lean_inc(x_10); +if (lean_obj_tag(x_10) == 0) +{ +lean_object* x_11; lean_object* x_12; +x_11 = lean_ctor_get(x_9, 0); +lean_inc(x_11); +x_12 = l_Array_back___at___private_Init_Lean_Parser_Parser_6__updateCache___spec__1(x_11); +lean_dec(x_11); +if (lean_obj_tag(x_12) == 2) +{ +lean_object* x_13; lean_object* x_14; uint8_t x_15; +x_13 = lean_ctor_get(x_12, 1); +lean_inc(x_13); +lean_dec(x_12); +x_14 = l_Lean_Parser_Syntax_optional___elambda__1___closed__3; +x_15 = lean_string_dec_eq(x_13, x_14); +lean_dec(x_13); +if (x_15 == 0) +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_16 = l_Lean_Parser_Syntax_optional___elambda__1___closed__6; +x_17 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_16, x_8); +x_18 = l_Lean_Parser_Syntax_optional___elambda__1___closed__2; +x_19 = l_Lean_Parser_ParserState_mkNode(x_17, x_18, x_5); +return x_19; +} +else +{ +lean_object* x_20; lean_object* x_21; +lean_dec(x_8); +x_20 = l_Lean_Parser_Syntax_optional___elambda__1___closed__2; +x_21 = l_Lean_Parser_ParserState_mkNode(x_9, x_20, x_5); +return x_21; +} +} +else +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +lean_dec(x_12); +x_22 = l_Lean_Parser_Syntax_optional___elambda__1___closed__6; +x_23 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_22, x_8); +x_24 = l_Lean_Parser_Syntax_optional___elambda__1___closed__2; +x_25 = l_Lean_Parser_ParserState_mkNode(x_23, x_24, x_5); +return x_25; +} +} +else +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; +lean_dec(x_10); +x_26 = l_Lean_Parser_Syntax_optional___elambda__1___closed__6; +x_27 = l_Lean_Parser_ParserState_mkErrorsAt(x_9, x_26, x_8); +x_28 = l_Lean_Parser_Syntax_optional___elambda__1___closed__2; +x_29 = l_Lean_Parser_ParserState_mkNode(x_27, x_28, x_5); +return x_29; +} +} +else +{ +lean_object* x_30; lean_object* x_31; +lean_dec(x_7); +lean_dec(x_3); +lean_dec(x_2); +x_30 = l_Lean_Parser_Syntax_optional___elambda__1___closed__2; +x_31 = l_Lean_Parser_ParserState_mkNode(x_6, x_30, x_5); +return x_31; +} +} +} +lean_object* _init_l_Lean_Parser_Syntax_optional___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Parser_Syntax_optional___elambda__1___closed__3; +x_3 = l_Lean_Parser_symbolInfo(x_2, x_1); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_optional___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_epsilonInfo; +x_2 = l_Lean_Parser_Syntax_optional___closed__1; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_optional___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_optional___elambda__1___closed__2; +x_2 = l_Lean_Parser_Syntax_optional___closed__2; +x_3 = l_Lean_Parser_nodeInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_optional___closed__4() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Syntax_optional___elambda__1), 3, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Syntax_optional___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_optional___closed__3; +x_2 = l_Lean_Parser_Syntax_optional___closed__4; +x_3 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_optional() { +_start: +{ +lean_object* x_1; +x_1 = l_Lean_Parser_Syntax_optional___closed__5; +return x_1; +} +} +lean_object* l___regBuiltinParser_Lean_Parser_Syntax_optional(lean_object* x_1) { +_start: +{ +uint8_t x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_2 = 1; +x_3 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; +x_4 = l_Lean_Parser_Syntax_optional___elambda__1___closed__2; +x_5 = l_Lean_Parser_Syntax_optional; +x_6 = l_Lean_Parser_addBuiltinParser(x_2, x_3, x_4, x_5, x_1); +return x_6; +} +} +lean_object* _init_l_Lean_Parser_Syntax_orelse___elambda__1___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_paren___elambda__1___closed__2; +x_2 = l_Lean_Parser_Term_orelse___elambda__1___closed__1; +x_3 = lean_name_mk_string(x_1, x_2); +return x_3; +} +} +lean_object* l_Lean_Parser_Syntax_orelse___elambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +x_4 = l_Lean_Parser_Term_orelse___elambda__1___closed__4; +x_5 = lean_ctor_get(x_4, 1); +lean_inc(x_5); +x_6 = lean_ctor_get(x_3, 0); +lean_inc(x_6); +x_7 = lean_array_get_size(x_6); +lean_dec(x_6); +x_8 = lean_apply_3(x_5, x_1, x_2, x_3); +x_9 = l_Lean_Parser_Syntax_orelse___elambda__1___closed__1; +x_10 = l_Lean_Parser_ParserState_mkNode(x_8, x_9, x_7); +return x_10; +} +} +lean_object* _init_l_Lean_Parser_Syntax_orelse___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Parser_Term_orelse___elambda__1___closed__4; +x_2 = lean_ctor_get(x_1, 0); +lean_inc(x_2); +x_3 = l_Lean_Parser_Syntax_orelse___elambda__1___closed__1; +x_4 = l_Lean_Parser_nodeInfo(x_3, x_2); +return x_4; +} +} +lean_object* _init_l_Lean_Parser_Syntax_orelse___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Syntax_orelse___elambda__1), 3, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Syntax_orelse___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Syntax_orelse___closed__1; +x_2 = l_Lean_Parser_Syntax_orelse___closed__2; +x_3 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Syntax_orelse() { +_start: +{ +lean_object* x_1; +x_1 = l_Lean_Parser_Syntax_orelse___closed__3; +return x_1; +} +} +lean_object* l___regBuiltinParser_Lean_Parser_Syntax_orelse(lean_object* x_1) { +_start: +{ +uint8_t x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_2 = 1; +x_3 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; +x_4 = l_Lean_Parser_Syntax_orelse___elambda__1___closed__1; +x_5 = l_Lean_Parser_Syntax_orelse; +x_6 = l_Lean_Parser_addBuiltinParser(x_2, x_3, x_4, x_5, x_1); +return x_6; +} +} +lean_object* _init_l_Lean_Parser_Command_syntax___elambda__1___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___regBuiltinParser_Lean_Parser_Command_antiquot___closed__2; +x_2 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__3; +x_3 = lean_name_mk_string(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_syntax___elambda__1___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Command_syntax___elambda__1___closed__1; +x_2 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_2, 0, x_1); +return x_2; +} +} +lean_object* _init_l_Lean_Parser_Command_syntax___elambda__1___closed__3() { +_start: +{ +uint8_t x_1; lean_object* x_2; lean_object* x_3; uint8_t x_4; lean_object* x_5; +x_1 = 0; +x_2 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__3; +x_3 = l_Lean_Parser_Command_syntax___elambda__1___closed__2; +x_4 = 1; +x_5 = l_Lean_Parser_mkAntiquot(x_1, x_2, x_3, x_4); +return x_5; +} +} +lean_object* _init_l_Lean_Parser_Command_syntax___elambda__1___closed__4() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string("syntax "); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Command_syntax___elambda__1___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Command_syntax___elambda__1___closed__4; +x_2 = l_String_trim(x_1); +return x_2; +} +} +lean_object* _init_l_Lean_Parser_Command_syntax___elambda__1___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Char_HasRepr___closed__1; +x_2 = l_Lean_Parser_Command_syntax___elambda__1___closed__5; +x_3 = lean_string_append(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_syntax___elambda__1___closed__7() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Command_syntax___elambda__1___closed__6; +x_2 = l_Char_HasRepr___closed__1; +x_3 = lean_string_append(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_syntax___elambda__1___closed__8() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Parser_Command_syntax___elambda__1___closed__7; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_2); +lean_ctor_set(x_3, 1, x_1); +return x_3; +} +} +lean_object* l_Lean_Parser_Command_syntax___elambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_4 = l_Lean_Parser_Level_ident___elambda__1___closed__4; +x_5 = lean_ctor_get(x_4, 1); +lean_inc(x_5); +x_6 = l_Lean_Parser_Command_syntax___elambda__1___closed__3; +x_7 = lean_ctor_get(x_6, 1); +lean_inc(x_7); +x_8 = lean_ctor_get(x_3, 0); +lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +x_10 = lean_ctor_get(x_3, 1); +lean_inc(x_10); +lean_inc(x_2); +lean_inc(x_1); +x_11 = lean_apply_3(x_7, x_1, x_2, x_3); +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_5); +lean_dec(x_2); +lean_dec(x_1); +return x_11; +} +else +{ +lean_object* x_13; lean_object* x_14; uint8_t x_15; +x_13 = lean_ctor_get(x_12, 0); +lean_inc(x_13); +lean_dec(x_12); +x_14 = lean_ctor_get(x_11, 1); +lean_inc(x_14); +x_15 = lean_nat_dec_eq(x_14, x_10); +lean_dec(x_14); +if (x_15 == 0) +{ +lean_dec(x_13); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_5); +lean_dec(x_2); +lean_dec(x_1); +return x_11; +} +else +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_52; lean_object* x_70; lean_object* x_71; +lean_inc(x_10); +x_16 = l_Lean_Parser_ParserState_restore(x_11, x_9, x_10); +lean_dec(x_9); +x_17 = lean_ctor_get(x_16, 0); +lean_inc(x_17); +x_18 = lean_array_get_size(x_17); +lean_dec(x_17); +lean_inc(x_2); +x_70 = l_Lean_Parser_tokenFn(x_2, x_16); +x_71 = lean_ctor_get(x_70, 3); +lean_inc(x_71); +if (lean_obj_tag(x_71) == 0) +{ +lean_object* x_72; lean_object* x_73; +x_72 = lean_ctor_get(x_70, 0); +lean_inc(x_72); +x_73 = l_Array_back___at___private_Init_Lean_Parser_Parser_6__updateCache___spec__1(x_72); +lean_dec(x_72); +if (lean_obj_tag(x_73) == 2) +{ +lean_object* x_74; lean_object* x_75; uint8_t x_76; +x_74 = lean_ctor_get(x_73, 1); +lean_inc(x_74); +lean_dec(x_73); +x_75 = l_Lean_Parser_Command_syntax___elambda__1___closed__5; +x_76 = lean_string_dec_eq(x_74, x_75); +lean_dec(x_74); +if (x_76 == 0) +{ +lean_object* x_77; lean_object* x_78; +x_77 = l_Lean_Parser_Command_syntax___elambda__1___closed__8; +lean_inc(x_10); +x_78 = l_Lean_Parser_ParserState_mkErrorsAt(x_70, x_77, x_10); +x_52 = x_78; +goto block_69; +} +else +{ +x_52 = x_70; +goto block_69; +} +} +else +{ +lean_object* x_79; lean_object* x_80; +lean_dec(x_73); +x_79 = l_Lean_Parser_Command_syntax___elambda__1___closed__8; +lean_inc(x_10); +x_80 = l_Lean_Parser_ParserState_mkErrorsAt(x_70, x_79, x_10); +x_52 = x_80; +goto block_69; +} +} +else +{ +lean_object* x_81; lean_object* x_82; +lean_dec(x_71); +x_81 = l_Lean_Parser_Command_syntax___elambda__1___closed__8; +lean_inc(x_10); +x_82 = l_Lean_Parser_ParserState_mkErrorsAt(x_70, x_81, x_10); +x_52 = x_82; +goto block_69; +} +block_51: +{ +lean_object* x_20; +x_20 = lean_ctor_get(x_19, 3); +lean_inc(x_20); +if (lean_obj_tag(x_20) == 0) +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_21 = lean_ctor_get(x_19, 1); +lean_inc(x_21); +lean_inc(x_2); +x_22 = l_Lean_Parser_tokenFn(x_2, x_19); +x_23 = lean_ctor_get(x_22, 3); +lean_inc(x_23); +if (lean_obj_tag(x_23) == 0) +{ +lean_object* x_24; lean_object* x_25; +x_24 = lean_ctor_get(x_22, 0); +lean_inc(x_24); +x_25 = l_Array_back___at___private_Init_Lean_Parser_Parser_6__updateCache___spec__1(x_24); +lean_dec(x_24); +if (lean_obj_tag(x_25) == 2) +{ +lean_object* x_26; lean_object* x_27; uint8_t x_28; +x_26 = lean_ctor_get(x_25, 1); +lean_inc(x_26); +lean_dec(x_25); +x_27 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__6; +x_28 = lean_string_dec_eq(x_26, x_27); +lean_dec(x_26); +if (x_28 == 0) +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_dec(x_5); +lean_dec(x_2); +lean_dec(x_1); +x_29 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__9; +x_30 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_29, x_21); +x_31 = l_Lean_Parser_Command_syntax___elambda__1___closed__1; +x_32 = l_Lean_Parser_ParserState_mkNode(x_30, x_31, x_18); +x_33 = l_Lean_Parser_mergeOrElseErrors(x_32, x_13, x_10); +lean_dec(x_10); +return x_33; +} +else +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +lean_dec(x_21); +x_34 = lean_apply_3(x_5, x_1, x_2, x_22); +x_35 = l_Lean_Parser_Command_syntax___elambda__1___closed__1; +x_36 = l_Lean_Parser_ParserState_mkNode(x_34, x_35, x_18); +x_37 = l_Lean_Parser_mergeOrElseErrors(x_36, x_13, x_10); +lean_dec(x_10); +return x_37; +} +} +else +{ +lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; +lean_dec(x_25); +lean_dec(x_5); +lean_dec(x_2); +lean_dec(x_1); +x_38 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__9; +x_39 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_38, x_21); +x_40 = l_Lean_Parser_Command_syntax___elambda__1___closed__1; +x_41 = l_Lean_Parser_ParserState_mkNode(x_39, x_40, x_18); +x_42 = l_Lean_Parser_mergeOrElseErrors(x_41, x_13, x_10); +lean_dec(x_10); +return x_42; +} +} +else +{ +lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; +lean_dec(x_23); +lean_dec(x_5); +lean_dec(x_2); +lean_dec(x_1); +x_43 = l_Lean_Parser_Term_typeAscription___elambda__1___closed__9; +x_44 = l_Lean_Parser_ParserState_mkErrorsAt(x_22, x_43, x_21); +x_45 = l_Lean_Parser_Command_syntax___elambda__1___closed__1; +x_46 = l_Lean_Parser_ParserState_mkNode(x_44, x_45, x_18); +x_47 = l_Lean_Parser_mergeOrElseErrors(x_46, x_13, x_10); +lean_dec(x_10); +return x_47; +} +} +else +{ +lean_object* x_48; lean_object* x_49; lean_object* x_50; +lean_dec(x_20); +lean_dec(x_5); +lean_dec(x_2); +lean_dec(x_1); +x_48 = l_Lean_Parser_Command_syntax___elambda__1___closed__1; +x_49 = l_Lean_Parser_ParserState_mkNode(x_19, x_48, x_18); +x_50 = l_Lean_Parser_mergeOrElseErrors(x_49, x_13, x_10); +lean_dec(x_10); +return x_50; +} +} +block_69: +{ +lean_object* x_53; +x_53 = lean_ctor_get(x_52, 3); +lean_inc(x_53); +if (lean_obj_tag(x_53) == 0) +{ +lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_54 = lean_ctor_get(x_52, 0); +lean_inc(x_54); +x_55 = lean_array_get_size(x_54); +lean_dec(x_54); +x_56 = l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__4; +x_57 = lean_unsigned_to_nat(0u); +lean_inc(x_2); +x_58 = l_Lean_Parser_categoryParserFn(x_56, x_57, x_2, x_52); +x_59 = lean_ctor_get(x_58, 3); +lean_inc(x_59); +if (lean_obj_tag(x_59) == 0) +{ +uint8_t x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; +x_60 = 0; +lean_inc(x_2); +x_61 = l_Lean_Parser_manyAux___main___at_Lean_Parser_Syntax_paren___elambda__1___spec__1(x_60, x_1, x_2, x_58); +x_62 = l_Lean_nullKind; +x_63 = l_Lean_Parser_ParserState_mkNode(x_61, x_62, x_55); +x_19 = x_63; +goto block_51; +} +else +{ +lean_object* x_64; lean_object* x_65; +lean_dec(x_59); +x_64 = l_Lean_nullKind; +x_65 = l_Lean_Parser_ParserState_mkNode(x_58, x_64, x_55); +x_19 = x_65; +goto block_51; +} +} +else +{ +lean_object* x_66; lean_object* x_67; lean_object* x_68; +lean_dec(x_53); +lean_dec(x_5); +lean_dec(x_2); +lean_dec(x_1); +x_66 = l_Lean_Parser_Command_syntax___elambda__1___closed__1; +x_67 = l_Lean_Parser_ParserState_mkNode(x_52, x_66, x_18); +x_68 = l_Lean_Parser_mergeOrElseErrors(x_67, x_13, x_10); +lean_dec(x_10); +return x_68; +} +} +} +} +} +} +lean_object* _init_l_Lean_Parser_Command_syntax___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Parser_Command_syntax___elambda__1___closed__5; +x_3 = l_Lean_Parser_symbolInfo(x_2, x_1); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_syntax___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Parser_Level_ident___elambda__1___closed__4; +x_2 = lean_ctor_get(x_1, 0); +lean_inc(x_2); +x_3 = l_Lean_Parser_Term_typeAscription___closed__1; +x_4 = l_Lean_Parser_andthenInfo(x_3, x_2); +return x_4; +} +} +lean_object* _init_l_Lean_Parser_Command_syntax___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Parser_Syntax_paren___closed__1; +x_2 = lean_ctor_get(x_1, 0); +lean_inc(x_2); +x_3 = l_Lean_Parser_Command_syntax___closed__2; +x_4 = l_Lean_Parser_andthenInfo(x_2, x_3); +return x_4; +} +} +lean_object* _init_l_Lean_Parser_Command_syntax___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Command_syntax___closed__1; +x_2 = l_Lean_Parser_Command_syntax___closed__3; +x_3 = l_Lean_Parser_andthenInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_syntax___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Command_syntax___elambda__1___closed__1; +x_2 = l_Lean_Parser_Command_syntax___closed__4; +x_3 = l_Lean_Parser_nodeInfo(x_1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_syntax___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Parser_Command_syntax___elambda__1___closed__3; +x_2 = lean_ctor_get(x_1, 0); +lean_inc(x_2); +x_3 = l_Lean_Parser_Command_syntax___closed__5; +x_4 = l_Lean_Parser_orelseInfo(x_2, x_3); +return x_4; +} +} +lean_object* _init_l_Lean_Parser_Command_syntax___closed__7() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Command_syntax___elambda__1), 3, 0); +return x_1; +} +} +lean_object* _init_l_Lean_Parser_Command_syntax___closed__8() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Command_syntax___closed__6; +x_2 = l_Lean_Parser_Command_syntax___closed__7; +x_3 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +lean_object* _init_l_Lean_Parser_Command_syntax() { +_start: +{ +lean_object* x_1; +x_1 = l_Lean_Parser_Command_syntax___closed__8; +return x_1; +} +} +lean_object* l___regBuiltinParser_Lean_Parser_Command_syntax(lean_object* x_1) { +_start: +{ +uint8_t x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_2 = 0; +x_3 = l_Lean_Parser_regBuiltinCommandParserAttr___closed__4; +x_4 = l_Lean_Parser_Command_syntax___elambda__1___closed__1; +x_5 = l_Lean_Parser_Command_syntax; +x_6 = l_Lean_Parser_addBuiltinParser(x_2, x_3, x_4, x_5, x_1); +return x_6; +} +} +lean_object* initialize_Init_Lean_Parser_Command(lean_object*); static bool _G_initialized = false; lean_object* initialize_Init_Lean_Parser_Syntax(lean_object* w) { lean_object * res; if (_G_initialized) return lean_mk_io_result(lean_box(0)); _G_initialized = true; -res = initialize_Init_Lean_Parser_Parser(lean_io_mk_world()); +res = initialize_Init_Lean_Parser_Command(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__1 = _init_l_Lean_Parser_regBuiltinSyntaxParserAttr___closed__1(); @@ -148,6 +3772,384 @@ lean_mark_persistent(l_Lean_Parser_regSyntaxParserAttribute___closed__2); res = l_Lean_Parser_regSyntaxParserAttribute(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); +l_Lean_Parser_Syntax_paren___elambda__1___closed__1 = _init_l_Lean_Parser_Syntax_paren___elambda__1___closed__1(); +lean_mark_persistent(l_Lean_Parser_Syntax_paren___elambda__1___closed__1); +l_Lean_Parser_Syntax_paren___elambda__1___closed__2 = _init_l_Lean_Parser_Syntax_paren___elambda__1___closed__2(); +lean_mark_persistent(l_Lean_Parser_Syntax_paren___elambda__1___closed__2); +l_Lean_Parser_Syntax_paren___elambda__1___closed__3 = _init_l_Lean_Parser_Syntax_paren___elambda__1___closed__3(); +lean_mark_persistent(l_Lean_Parser_Syntax_paren___elambda__1___closed__3); +l_Lean_Parser_Syntax_paren___elambda__1___closed__4 = _init_l_Lean_Parser_Syntax_paren___elambda__1___closed__4(); +lean_mark_persistent(l_Lean_Parser_Syntax_paren___elambda__1___closed__4); +l_Lean_Parser_Syntax_paren___elambda__1___closed__5 = _init_l_Lean_Parser_Syntax_paren___elambda__1___closed__5(); +lean_mark_persistent(l_Lean_Parser_Syntax_paren___elambda__1___closed__5); +l_Lean_Parser_Syntax_paren___closed__1 = _init_l_Lean_Parser_Syntax_paren___closed__1(); +lean_mark_persistent(l_Lean_Parser_Syntax_paren___closed__1); +l_Lean_Parser_Syntax_paren___closed__2 = _init_l_Lean_Parser_Syntax_paren___closed__2(); +lean_mark_persistent(l_Lean_Parser_Syntax_paren___closed__2); +l_Lean_Parser_Syntax_paren___closed__3 = _init_l_Lean_Parser_Syntax_paren___closed__3(); +lean_mark_persistent(l_Lean_Parser_Syntax_paren___closed__3); +l_Lean_Parser_Syntax_paren___closed__4 = _init_l_Lean_Parser_Syntax_paren___closed__4(); +lean_mark_persistent(l_Lean_Parser_Syntax_paren___closed__4); +l_Lean_Parser_Syntax_paren___closed__5 = _init_l_Lean_Parser_Syntax_paren___closed__5(); +lean_mark_persistent(l_Lean_Parser_Syntax_paren___closed__5); +l_Lean_Parser_Syntax_paren___closed__6 = _init_l_Lean_Parser_Syntax_paren___closed__6(); +lean_mark_persistent(l_Lean_Parser_Syntax_paren___closed__6); +l_Lean_Parser_Syntax_paren___closed__7 = _init_l_Lean_Parser_Syntax_paren___closed__7(); +lean_mark_persistent(l_Lean_Parser_Syntax_paren___closed__7); +l_Lean_Parser_Syntax_paren = _init_l_Lean_Parser_Syntax_paren(); +lean_mark_persistent(l_Lean_Parser_Syntax_paren); +res = l___regBuiltinParser_Lean_Parser_Syntax_paren(lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +l_Lean_Parser_Syntax_cat___elambda__1___closed__1 = _init_l_Lean_Parser_Syntax_cat___elambda__1___closed__1(); +lean_mark_persistent(l_Lean_Parser_Syntax_cat___elambda__1___closed__1); +l_Lean_Parser_Syntax_cat___elambda__1___closed__2 = _init_l_Lean_Parser_Syntax_cat___elambda__1___closed__2(); +lean_mark_persistent(l_Lean_Parser_Syntax_cat___elambda__1___closed__2); +l_Lean_Parser_Syntax_cat___elambda__1___closed__3 = _init_l_Lean_Parser_Syntax_cat___elambda__1___closed__3(); +lean_mark_persistent(l_Lean_Parser_Syntax_cat___elambda__1___closed__3); +l_Lean_Parser_Syntax_cat___elambda__1___closed__4 = _init_l_Lean_Parser_Syntax_cat___elambda__1___closed__4(); +lean_mark_persistent(l_Lean_Parser_Syntax_cat___elambda__1___closed__4); +l_Lean_Parser_Syntax_cat___closed__1 = _init_l_Lean_Parser_Syntax_cat___closed__1(); +lean_mark_persistent(l_Lean_Parser_Syntax_cat___closed__1); +l_Lean_Parser_Syntax_cat___closed__2 = _init_l_Lean_Parser_Syntax_cat___closed__2(); +lean_mark_persistent(l_Lean_Parser_Syntax_cat___closed__2); +l_Lean_Parser_Syntax_cat___closed__3 = _init_l_Lean_Parser_Syntax_cat___closed__3(); +lean_mark_persistent(l_Lean_Parser_Syntax_cat___closed__3); +l_Lean_Parser_Syntax_cat___closed__4 = _init_l_Lean_Parser_Syntax_cat___closed__4(); +lean_mark_persistent(l_Lean_Parser_Syntax_cat___closed__4); +l_Lean_Parser_Syntax_cat = _init_l_Lean_Parser_Syntax_cat(); +lean_mark_persistent(l_Lean_Parser_Syntax_cat); +res = l___regBuiltinParser_Lean_Parser_Syntax_cat(lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +l_Lean_Parser_Syntax_atom___elambda__1___closed__1 = _init_l_Lean_Parser_Syntax_atom___elambda__1___closed__1(); +lean_mark_persistent(l_Lean_Parser_Syntax_atom___elambda__1___closed__1); +l_Lean_Parser_Syntax_atom___elambda__1___closed__2 = _init_l_Lean_Parser_Syntax_atom___elambda__1___closed__2(); +lean_mark_persistent(l_Lean_Parser_Syntax_atom___elambda__1___closed__2); +l_Lean_Parser_Syntax_atom___elambda__1___closed__3 = _init_l_Lean_Parser_Syntax_atom___elambda__1___closed__3(); +lean_mark_persistent(l_Lean_Parser_Syntax_atom___elambda__1___closed__3); +l_Lean_Parser_Syntax_atom___elambda__1___closed__4 = _init_l_Lean_Parser_Syntax_atom___elambda__1___closed__4(); +lean_mark_persistent(l_Lean_Parser_Syntax_atom___elambda__1___closed__4); +l_Lean_Parser_Syntax_atom___closed__1 = _init_l_Lean_Parser_Syntax_atom___closed__1(); +lean_mark_persistent(l_Lean_Parser_Syntax_atom___closed__1); +l_Lean_Parser_Syntax_atom___closed__2 = _init_l_Lean_Parser_Syntax_atom___closed__2(); +lean_mark_persistent(l_Lean_Parser_Syntax_atom___closed__2); +l_Lean_Parser_Syntax_atom___closed__3 = _init_l_Lean_Parser_Syntax_atom___closed__3(); +lean_mark_persistent(l_Lean_Parser_Syntax_atom___closed__3); +l_Lean_Parser_Syntax_atom___closed__4 = _init_l_Lean_Parser_Syntax_atom___closed__4(); +lean_mark_persistent(l_Lean_Parser_Syntax_atom___closed__4); +l_Lean_Parser_Syntax_atom = _init_l_Lean_Parser_Syntax_atom(); +lean_mark_persistent(l_Lean_Parser_Syntax_atom); +res = l___regBuiltinParser_Lean_Parser_Syntax_atom(lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +l_Lean_Parser_Syntax_num___elambda__1___closed__1 = _init_l_Lean_Parser_Syntax_num___elambda__1___closed__1(); +lean_mark_persistent(l_Lean_Parser_Syntax_num___elambda__1___closed__1); +l_Lean_Parser_Syntax_num___elambda__1___closed__2 = _init_l_Lean_Parser_Syntax_num___elambda__1___closed__2(); +lean_mark_persistent(l_Lean_Parser_Syntax_num___elambda__1___closed__2); +l_Lean_Parser_Syntax_num___elambda__1___closed__3 = _init_l_Lean_Parser_Syntax_num___elambda__1___closed__3(); +lean_mark_persistent(l_Lean_Parser_Syntax_num___elambda__1___closed__3); +l_Lean_Parser_Syntax_num___elambda__1___closed__4 = _init_l_Lean_Parser_Syntax_num___elambda__1___closed__4(); +lean_mark_persistent(l_Lean_Parser_Syntax_num___elambda__1___closed__4); +l_Lean_Parser_Syntax_num___elambda__1___closed__5 = _init_l_Lean_Parser_Syntax_num___elambda__1___closed__5(); +lean_mark_persistent(l_Lean_Parser_Syntax_num___elambda__1___closed__5); +l_Lean_Parser_Syntax_num___elambda__1___closed__6 = _init_l_Lean_Parser_Syntax_num___elambda__1___closed__6(); +lean_mark_persistent(l_Lean_Parser_Syntax_num___elambda__1___closed__6); +l_Lean_Parser_Syntax_num___closed__1 = _init_l_Lean_Parser_Syntax_num___closed__1(); +lean_mark_persistent(l_Lean_Parser_Syntax_num___closed__1); +l_Lean_Parser_Syntax_num___closed__2 = _init_l_Lean_Parser_Syntax_num___closed__2(); +lean_mark_persistent(l_Lean_Parser_Syntax_num___closed__2); +l_Lean_Parser_Syntax_num___closed__3 = _init_l_Lean_Parser_Syntax_num___closed__3(); +lean_mark_persistent(l_Lean_Parser_Syntax_num___closed__3); +l_Lean_Parser_Syntax_num___closed__4 = _init_l_Lean_Parser_Syntax_num___closed__4(); +lean_mark_persistent(l_Lean_Parser_Syntax_num___closed__4); +l_Lean_Parser_Syntax_num___closed__5 = _init_l_Lean_Parser_Syntax_num___closed__5(); +lean_mark_persistent(l_Lean_Parser_Syntax_num___closed__5); +l_Lean_Parser_Syntax_num = _init_l_Lean_Parser_Syntax_num(); +lean_mark_persistent(l_Lean_Parser_Syntax_num); +res = l___regBuiltinParser_Lean_Parser_Syntax_num(lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +l_Lean_Parser_Syntax_str___elambda__1___closed__1 = _init_l_Lean_Parser_Syntax_str___elambda__1___closed__1(); +lean_mark_persistent(l_Lean_Parser_Syntax_str___elambda__1___closed__1); +l_Lean_Parser_Syntax_str___elambda__1___closed__2 = _init_l_Lean_Parser_Syntax_str___elambda__1___closed__2(); +lean_mark_persistent(l_Lean_Parser_Syntax_str___elambda__1___closed__2); +l_Lean_Parser_Syntax_str___elambda__1___closed__3 = _init_l_Lean_Parser_Syntax_str___elambda__1___closed__3(); +lean_mark_persistent(l_Lean_Parser_Syntax_str___elambda__1___closed__3); +l_Lean_Parser_Syntax_str___elambda__1___closed__4 = _init_l_Lean_Parser_Syntax_str___elambda__1___closed__4(); +lean_mark_persistent(l_Lean_Parser_Syntax_str___elambda__1___closed__4); +l_Lean_Parser_Syntax_str___elambda__1___closed__5 = _init_l_Lean_Parser_Syntax_str___elambda__1___closed__5(); +lean_mark_persistent(l_Lean_Parser_Syntax_str___elambda__1___closed__5); +l_Lean_Parser_Syntax_str___elambda__1___closed__6 = _init_l_Lean_Parser_Syntax_str___elambda__1___closed__6(); +lean_mark_persistent(l_Lean_Parser_Syntax_str___elambda__1___closed__6); +l_Lean_Parser_Syntax_str___closed__1 = _init_l_Lean_Parser_Syntax_str___closed__1(); +lean_mark_persistent(l_Lean_Parser_Syntax_str___closed__1); +l_Lean_Parser_Syntax_str___closed__2 = _init_l_Lean_Parser_Syntax_str___closed__2(); +lean_mark_persistent(l_Lean_Parser_Syntax_str___closed__2); +l_Lean_Parser_Syntax_str___closed__3 = _init_l_Lean_Parser_Syntax_str___closed__3(); +lean_mark_persistent(l_Lean_Parser_Syntax_str___closed__3); +l_Lean_Parser_Syntax_str___closed__4 = _init_l_Lean_Parser_Syntax_str___closed__4(); +lean_mark_persistent(l_Lean_Parser_Syntax_str___closed__4); +l_Lean_Parser_Syntax_str___closed__5 = _init_l_Lean_Parser_Syntax_str___closed__5(); +lean_mark_persistent(l_Lean_Parser_Syntax_str___closed__5); +l_Lean_Parser_Syntax_str = _init_l_Lean_Parser_Syntax_str(); +lean_mark_persistent(l_Lean_Parser_Syntax_str); +res = l___regBuiltinParser_Lean_Parser_Syntax_str(lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +l_Lean_Parser_Syntax_try___elambda__1___closed__1 = _init_l_Lean_Parser_Syntax_try___elambda__1___closed__1(); +lean_mark_persistent(l_Lean_Parser_Syntax_try___elambda__1___closed__1); +l_Lean_Parser_Syntax_try___elambda__1___closed__2 = _init_l_Lean_Parser_Syntax_try___elambda__1___closed__2(); +lean_mark_persistent(l_Lean_Parser_Syntax_try___elambda__1___closed__2); +l_Lean_Parser_Syntax_try___elambda__1___closed__3 = _init_l_Lean_Parser_Syntax_try___elambda__1___closed__3(); +lean_mark_persistent(l_Lean_Parser_Syntax_try___elambda__1___closed__3); +l_Lean_Parser_Syntax_try___elambda__1___closed__4 = _init_l_Lean_Parser_Syntax_try___elambda__1___closed__4(); +lean_mark_persistent(l_Lean_Parser_Syntax_try___elambda__1___closed__4); +l_Lean_Parser_Syntax_try___elambda__1___closed__5 = _init_l_Lean_Parser_Syntax_try___elambda__1___closed__5(); +lean_mark_persistent(l_Lean_Parser_Syntax_try___elambda__1___closed__5); +l_Lean_Parser_Syntax_try___elambda__1___closed__6 = _init_l_Lean_Parser_Syntax_try___elambda__1___closed__6(); +lean_mark_persistent(l_Lean_Parser_Syntax_try___elambda__1___closed__6); +l_Lean_Parser_Syntax_try___elambda__1___closed__7 = _init_l_Lean_Parser_Syntax_try___elambda__1___closed__7(); +lean_mark_persistent(l_Lean_Parser_Syntax_try___elambda__1___closed__7); +l_Lean_Parser_Syntax_try___elambda__1___closed__8 = _init_l_Lean_Parser_Syntax_try___elambda__1___closed__8(); +lean_mark_persistent(l_Lean_Parser_Syntax_try___elambda__1___closed__8); +l_Lean_Parser_Syntax_try___closed__1 = _init_l_Lean_Parser_Syntax_try___closed__1(); +lean_mark_persistent(l_Lean_Parser_Syntax_try___closed__1); +l_Lean_Parser_Syntax_try___closed__2 = _init_l_Lean_Parser_Syntax_try___closed__2(); +lean_mark_persistent(l_Lean_Parser_Syntax_try___closed__2); +l_Lean_Parser_Syntax_try___closed__3 = _init_l_Lean_Parser_Syntax_try___closed__3(); +lean_mark_persistent(l_Lean_Parser_Syntax_try___closed__3); +l_Lean_Parser_Syntax_try___closed__4 = _init_l_Lean_Parser_Syntax_try___closed__4(); +lean_mark_persistent(l_Lean_Parser_Syntax_try___closed__4); +l_Lean_Parser_Syntax_try___closed__5 = _init_l_Lean_Parser_Syntax_try___closed__5(); +lean_mark_persistent(l_Lean_Parser_Syntax_try___closed__5); +l_Lean_Parser_Syntax_try___closed__6 = _init_l_Lean_Parser_Syntax_try___closed__6(); +lean_mark_persistent(l_Lean_Parser_Syntax_try___closed__6); +l_Lean_Parser_Syntax_try = _init_l_Lean_Parser_Syntax_try(); +lean_mark_persistent(l_Lean_Parser_Syntax_try); +res = l___regBuiltinParser_Lean_Parser_Syntax_try(lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +l_Lean_Parser_Syntax_lookahead___elambda__1___closed__1 = _init_l_Lean_Parser_Syntax_lookahead___elambda__1___closed__1(); +lean_mark_persistent(l_Lean_Parser_Syntax_lookahead___elambda__1___closed__1); +l_Lean_Parser_Syntax_lookahead___elambda__1___closed__2 = _init_l_Lean_Parser_Syntax_lookahead___elambda__1___closed__2(); +lean_mark_persistent(l_Lean_Parser_Syntax_lookahead___elambda__1___closed__2); +l_Lean_Parser_Syntax_lookahead___elambda__1___closed__3 = _init_l_Lean_Parser_Syntax_lookahead___elambda__1___closed__3(); +lean_mark_persistent(l_Lean_Parser_Syntax_lookahead___elambda__1___closed__3); +l_Lean_Parser_Syntax_lookahead___elambda__1___closed__4 = _init_l_Lean_Parser_Syntax_lookahead___elambda__1___closed__4(); +lean_mark_persistent(l_Lean_Parser_Syntax_lookahead___elambda__1___closed__4); +l_Lean_Parser_Syntax_lookahead___elambda__1___closed__5 = _init_l_Lean_Parser_Syntax_lookahead___elambda__1___closed__5(); +lean_mark_persistent(l_Lean_Parser_Syntax_lookahead___elambda__1___closed__5); +l_Lean_Parser_Syntax_lookahead___elambda__1___closed__6 = _init_l_Lean_Parser_Syntax_lookahead___elambda__1___closed__6(); +lean_mark_persistent(l_Lean_Parser_Syntax_lookahead___elambda__1___closed__6); +l_Lean_Parser_Syntax_lookahead___elambda__1___closed__7 = _init_l_Lean_Parser_Syntax_lookahead___elambda__1___closed__7(); +lean_mark_persistent(l_Lean_Parser_Syntax_lookahead___elambda__1___closed__7); +l_Lean_Parser_Syntax_lookahead___elambda__1___closed__8 = _init_l_Lean_Parser_Syntax_lookahead___elambda__1___closed__8(); +lean_mark_persistent(l_Lean_Parser_Syntax_lookahead___elambda__1___closed__8); +l_Lean_Parser_Syntax_lookahead___closed__1 = _init_l_Lean_Parser_Syntax_lookahead___closed__1(); +lean_mark_persistent(l_Lean_Parser_Syntax_lookahead___closed__1); +l_Lean_Parser_Syntax_lookahead___closed__2 = _init_l_Lean_Parser_Syntax_lookahead___closed__2(); +lean_mark_persistent(l_Lean_Parser_Syntax_lookahead___closed__2); +l_Lean_Parser_Syntax_lookahead___closed__3 = _init_l_Lean_Parser_Syntax_lookahead___closed__3(); +lean_mark_persistent(l_Lean_Parser_Syntax_lookahead___closed__3); +l_Lean_Parser_Syntax_lookahead___closed__4 = _init_l_Lean_Parser_Syntax_lookahead___closed__4(); +lean_mark_persistent(l_Lean_Parser_Syntax_lookahead___closed__4); +l_Lean_Parser_Syntax_lookahead___closed__5 = _init_l_Lean_Parser_Syntax_lookahead___closed__5(); +lean_mark_persistent(l_Lean_Parser_Syntax_lookahead___closed__5); +l_Lean_Parser_Syntax_lookahead___closed__6 = _init_l_Lean_Parser_Syntax_lookahead___closed__6(); +lean_mark_persistent(l_Lean_Parser_Syntax_lookahead___closed__6); +l_Lean_Parser_Syntax_lookahead = _init_l_Lean_Parser_Syntax_lookahead(); +lean_mark_persistent(l_Lean_Parser_Syntax_lookahead); +res = l___regBuiltinParser_Lean_Parser_Syntax_lookahead(lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +l_Lean_Parser_Syntax_sepBy___elambda__1___closed__1 = _init_l_Lean_Parser_Syntax_sepBy___elambda__1___closed__1(); +lean_mark_persistent(l_Lean_Parser_Syntax_sepBy___elambda__1___closed__1); +l_Lean_Parser_Syntax_sepBy___elambda__1___closed__2 = _init_l_Lean_Parser_Syntax_sepBy___elambda__1___closed__2(); +lean_mark_persistent(l_Lean_Parser_Syntax_sepBy___elambda__1___closed__2); +l_Lean_Parser_Syntax_sepBy___elambda__1___closed__3 = _init_l_Lean_Parser_Syntax_sepBy___elambda__1___closed__3(); +lean_mark_persistent(l_Lean_Parser_Syntax_sepBy___elambda__1___closed__3); +l_Lean_Parser_Syntax_sepBy___elambda__1___closed__4 = _init_l_Lean_Parser_Syntax_sepBy___elambda__1___closed__4(); +lean_mark_persistent(l_Lean_Parser_Syntax_sepBy___elambda__1___closed__4); +l_Lean_Parser_Syntax_sepBy___elambda__1___closed__5 = _init_l_Lean_Parser_Syntax_sepBy___elambda__1___closed__5(); +lean_mark_persistent(l_Lean_Parser_Syntax_sepBy___elambda__1___closed__5); +l_Lean_Parser_Syntax_sepBy___elambda__1___closed__6 = _init_l_Lean_Parser_Syntax_sepBy___elambda__1___closed__6(); +lean_mark_persistent(l_Lean_Parser_Syntax_sepBy___elambda__1___closed__6); +l_Lean_Parser_Syntax_sepBy___elambda__1___closed__7 = _init_l_Lean_Parser_Syntax_sepBy___elambda__1___closed__7(); +lean_mark_persistent(l_Lean_Parser_Syntax_sepBy___elambda__1___closed__7); +l_Lean_Parser_Syntax_sepBy___elambda__1___closed__8 = _init_l_Lean_Parser_Syntax_sepBy___elambda__1___closed__8(); +lean_mark_persistent(l_Lean_Parser_Syntax_sepBy___elambda__1___closed__8); +l_Lean_Parser_Syntax_sepBy___closed__1 = _init_l_Lean_Parser_Syntax_sepBy___closed__1(); +lean_mark_persistent(l_Lean_Parser_Syntax_sepBy___closed__1); +l_Lean_Parser_Syntax_sepBy___closed__2 = _init_l_Lean_Parser_Syntax_sepBy___closed__2(); +lean_mark_persistent(l_Lean_Parser_Syntax_sepBy___closed__2); +l_Lean_Parser_Syntax_sepBy___closed__3 = _init_l_Lean_Parser_Syntax_sepBy___closed__3(); +lean_mark_persistent(l_Lean_Parser_Syntax_sepBy___closed__3); +l_Lean_Parser_Syntax_sepBy___closed__4 = _init_l_Lean_Parser_Syntax_sepBy___closed__4(); +lean_mark_persistent(l_Lean_Parser_Syntax_sepBy___closed__4); +l_Lean_Parser_Syntax_sepBy___closed__5 = _init_l_Lean_Parser_Syntax_sepBy___closed__5(); +lean_mark_persistent(l_Lean_Parser_Syntax_sepBy___closed__5); +l_Lean_Parser_Syntax_sepBy___closed__6 = _init_l_Lean_Parser_Syntax_sepBy___closed__6(); +lean_mark_persistent(l_Lean_Parser_Syntax_sepBy___closed__6); +l_Lean_Parser_Syntax_sepBy___closed__7 = _init_l_Lean_Parser_Syntax_sepBy___closed__7(); +lean_mark_persistent(l_Lean_Parser_Syntax_sepBy___closed__7); +l_Lean_Parser_Syntax_sepBy = _init_l_Lean_Parser_Syntax_sepBy(); +lean_mark_persistent(l_Lean_Parser_Syntax_sepBy); +res = l___regBuiltinParser_Lean_Parser_Syntax_sepBy(lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__1 = _init_l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__1(); +lean_mark_persistent(l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__1); +l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__2 = _init_l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__2(); +lean_mark_persistent(l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__2); +l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__3 = _init_l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__3(); +lean_mark_persistent(l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__3); +l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__4 = _init_l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__4(); +lean_mark_persistent(l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__4); +l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__5 = _init_l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__5(); +lean_mark_persistent(l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__5); +l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__6 = _init_l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__6(); +lean_mark_persistent(l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__6); +l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__7 = _init_l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__7(); +lean_mark_persistent(l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__7); +l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__8 = _init_l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__8(); +lean_mark_persistent(l_Lean_Parser_Syntax_sepBy1___elambda__1___closed__8); +l_Lean_Parser_Syntax_sepBy1___closed__1 = _init_l_Lean_Parser_Syntax_sepBy1___closed__1(); +lean_mark_persistent(l_Lean_Parser_Syntax_sepBy1___closed__1); +l_Lean_Parser_Syntax_sepBy1___closed__2 = _init_l_Lean_Parser_Syntax_sepBy1___closed__2(); +lean_mark_persistent(l_Lean_Parser_Syntax_sepBy1___closed__2); +l_Lean_Parser_Syntax_sepBy1___closed__3 = _init_l_Lean_Parser_Syntax_sepBy1___closed__3(); +lean_mark_persistent(l_Lean_Parser_Syntax_sepBy1___closed__3); +l_Lean_Parser_Syntax_sepBy1___closed__4 = _init_l_Lean_Parser_Syntax_sepBy1___closed__4(); +lean_mark_persistent(l_Lean_Parser_Syntax_sepBy1___closed__4); +l_Lean_Parser_Syntax_sepBy1___closed__5 = _init_l_Lean_Parser_Syntax_sepBy1___closed__5(); +lean_mark_persistent(l_Lean_Parser_Syntax_sepBy1___closed__5); +l_Lean_Parser_Syntax_sepBy1___closed__6 = _init_l_Lean_Parser_Syntax_sepBy1___closed__6(); +lean_mark_persistent(l_Lean_Parser_Syntax_sepBy1___closed__6); +l_Lean_Parser_Syntax_sepBy1 = _init_l_Lean_Parser_Syntax_sepBy1(); +lean_mark_persistent(l_Lean_Parser_Syntax_sepBy1); +res = l___regBuiltinParser_Lean_Parser_Syntax_sepBy1(lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +l_Lean_Parser_Syntax_many___elambda__1___closed__1 = _init_l_Lean_Parser_Syntax_many___elambda__1___closed__1(); +lean_mark_persistent(l_Lean_Parser_Syntax_many___elambda__1___closed__1); +l_Lean_Parser_Syntax_many___elambda__1___closed__2 = _init_l_Lean_Parser_Syntax_many___elambda__1___closed__2(); +lean_mark_persistent(l_Lean_Parser_Syntax_many___elambda__1___closed__2); +l_Lean_Parser_Syntax_many___elambda__1___closed__3 = _init_l_Lean_Parser_Syntax_many___elambda__1___closed__3(); +lean_mark_persistent(l_Lean_Parser_Syntax_many___elambda__1___closed__3); +l_Lean_Parser_Syntax_many___elambda__1___closed__4 = _init_l_Lean_Parser_Syntax_many___elambda__1___closed__4(); +lean_mark_persistent(l_Lean_Parser_Syntax_many___elambda__1___closed__4); +l_Lean_Parser_Syntax_many___elambda__1___closed__5 = _init_l_Lean_Parser_Syntax_many___elambda__1___closed__5(); +lean_mark_persistent(l_Lean_Parser_Syntax_many___elambda__1___closed__5); +l_Lean_Parser_Syntax_many___closed__1 = _init_l_Lean_Parser_Syntax_many___closed__1(); +lean_mark_persistent(l_Lean_Parser_Syntax_many___closed__1); +l_Lean_Parser_Syntax_many___closed__2 = _init_l_Lean_Parser_Syntax_many___closed__2(); +lean_mark_persistent(l_Lean_Parser_Syntax_many___closed__2); +l_Lean_Parser_Syntax_many___closed__3 = _init_l_Lean_Parser_Syntax_many___closed__3(); +lean_mark_persistent(l_Lean_Parser_Syntax_many___closed__3); +l_Lean_Parser_Syntax_many___closed__4 = _init_l_Lean_Parser_Syntax_many___closed__4(); +lean_mark_persistent(l_Lean_Parser_Syntax_many___closed__4); +l_Lean_Parser_Syntax_many = _init_l_Lean_Parser_Syntax_many(); +lean_mark_persistent(l_Lean_Parser_Syntax_many); +res = l___regBuiltinParser_Lean_Parser_Syntax_many(lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +l_Lean_Parser_Syntax_many1___elambda__1___closed__1 = _init_l_Lean_Parser_Syntax_many1___elambda__1___closed__1(); +lean_mark_persistent(l_Lean_Parser_Syntax_many1___elambda__1___closed__1); +l_Lean_Parser_Syntax_many1___elambda__1___closed__2 = _init_l_Lean_Parser_Syntax_many1___elambda__1___closed__2(); +lean_mark_persistent(l_Lean_Parser_Syntax_many1___elambda__1___closed__2); +l_Lean_Parser_Syntax_many1___closed__1 = _init_l_Lean_Parser_Syntax_many1___closed__1(); +lean_mark_persistent(l_Lean_Parser_Syntax_many1___closed__1); +l_Lean_Parser_Syntax_many1___closed__2 = _init_l_Lean_Parser_Syntax_many1___closed__2(); +lean_mark_persistent(l_Lean_Parser_Syntax_many1___closed__2); +l_Lean_Parser_Syntax_many1___closed__3 = _init_l_Lean_Parser_Syntax_many1___closed__3(); +lean_mark_persistent(l_Lean_Parser_Syntax_many1___closed__3); +l_Lean_Parser_Syntax_many1___closed__4 = _init_l_Lean_Parser_Syntax_many1___closed__4(); +lean_mark_persistent(l_Lean_Parser_Syntax_many1___closed__4); +l_Lean_Parser_Syntax_many1___closed__5 = _init_l_Lean_Parser_Syntax_many1___closed__5(); +lean_mark_persistent(l_Lean_Parser_Syntax_many1___closed__5); +l_Lean_Parser_Syntax_many1 = _init_l_Lean_Parser_Syntax_many1(); +lean_mark_persistent(l_Lean_Parser_Syntax_many1); +res = l___regBuiltinParser_Lean_Parser_Syntax_many1(lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +l_Lean_Parser_Syntax_optional___elambda__1___closed__1 = _init_l_Lean_Parser_Syntax_optional___elambda__1___closed__1(); +lean_mark_persistent(l_Lean_Parser_Syntax_optional___elambda__1___closed__1); +l_Lean_Parser_Syntax_optional___elambda__1___closed__2 = _init_l_Lean_Parser_Syntax_optional___elambda__1___closed__2(); +lean_mark_persistent(l_Lean_Parser_Syntax_optional___elambda__1___closed__2); +l_Lean_Parser_Syntax_optional___elambda__1___closed__3 = _init_l_Lean_Parser_Syntax_optional___elambda__1___closed__3(); +lean_mark_persistent(l_Lean_Parser_Syntax_optional___elambda__1___closed__3); +l_Lean_Parser_Syntax_optional___elambda__1___closed__4 = _init_l_Lean_Parser_Syntax_optional___elambda__1___closed__4(); +lean_mark_persistent(l_Lean_Parser_Syntax_optional___elambda__1___closed__4); +l_Lean_Parser_Syntax_optional___elambda__1___closed__5 = _init_l_Lean_Parser_Syntax_optional___elambda__1___closed__5(); +lean_mark_persistent(l_Lean_Parser_Syntax_optional___elambda__1___closed__5); +l_Lean_Parser_Syntax_optional___elambda__1___closed__6 = _init_l_Lean_Parser_Syntax_optional___elambda__1___closed__6(); +lean_mark_persistent(l_Lean_Parser_Syntax_optional___elambda__1___closed__6); +l_Lean_Parser_Syntax_optional___closed__1 = _init_l_Lean_Parser_Syntax_optional___closed__1(); +lean_mark_persistent(l_Lean_Parser_Syntax_optional___closed__1); +l_Lean_Parser_Syntax_optional___closed__2 = _init_l_Lean_Parser_Syntax_optional___closed__2(); +lean_mark_persistent(l_Lean_Parser_Syntax_optional___closed__2); +l_Lean_Parser_Syntax_optional___closed__3 = _init_l_Lean_Parser_Syntax_optional___closed__3(); +lean_mark_persistent(l_Lean_Parser_Syntax_optional___closed__3); +l_Lean_Parser_Syntax_optional___closed__4 = _init_l_Lean_Parser_Syntax_optional___closed__4(); +lean_mark_persistent(l_Lean_Parser_Syntax_optional___closed__4); +l_Lean_Parser_Syntax_optional___closed__5 = _init_l_Lean_Parser_Syntax_optional___closed__5(); +lean_mark_persistent(l_Lean_Parser_Syntax_optional___closed__5); +l_Lean_Parser_Syntax_optional = _init_l_Lean_Parser_Syntax_optional(); +lean_mark_persistent(l_Lean_Parser_Syntax_optional); +res = l___regBuiltinParser_Lean_Parser_Syntax_optional(lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +l_Lean_Parser_Syntax_orelse___elambda__1___closed__1 = _init_l_Lean_Parser_Syntax_orelse___elambda__1___closed__1(); +lean_mark_persistent(l_Lean_Parser_Syntax_orelse___elambda__1___closed__1); +l_Lean_Parser_Syntax_orelse___closed__1 = _init_l_Lean_Parser_Syntax_orelse___closed__1(); +lean_mark_persistent(l_Lean_Parser_Syntax_orelse___closed__1); +l_Lean_Parser_Syntax_orelse___closed__2 = _init_l_Lean_Parser_Syntax_orelse___closed__2(); +lean_mark_persistent(l_Lean_Parser_Syntax_orelse___closed__2); +l_Lean_Parser_Syntax_orelse___closed__3 = _init_l_Lean_Parser_Syntax_orelse___closed__3(); +lean_mark_persistent(l_Lean_Parser_Syntax_orelse___closed__3); +l_Lean_Parser_Syntax_orelse = _init_l_Lean_Parser_Syntax_orelse(); +lean_mark_persistent(l_Lean_Parser_Syntax_orelse); +res = l___regBuiltinParser_Lean_Parser_Syntax_orelse(lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +l_Lean_Parser_Command_syntax___elambda__1___closed__1 = _init_l_Lean_Parser_Command_syntax___elambda__1___closed__1(); +lean_mark_persistent(l_Lean_Parser_Command_syntax___elambda__1___closed__1); +l_Lean_Parser_Command_syntax___elambda__1___closed__2 = _init_l_Lean_Parser_Command_syntax___elambda__1___closed__2(); +lean_mark_persistent(l_Lean_Parser_Command_syntax___elambda__1___closed__2); +l_Lean_Parser_Command_syntax___elambda__1___closed__3 = _init_l_Lean_Parser_Command_syntax___elambda__1___closed__3(); +lean_mark_persistent(l_Lean_Parser_Command_syntax___elambda__1___closed__3); +l_Lean_Parser_Command_syntax___elambda__1___closed__4 = _init_l_Lean_Parser_Command_syntax___elambda__1___closed__4(); +lean_mark_persistent(l_Lean_Parser_Command_syntax___elambda__1___closed__4); +l_Lean_Parser_Command_syntax___elambda__1___closed__5 = _init_l_Lean_Parser_Command_syntax___elambda__1___closed__5(); +lean_mark_persistent(l_Lean_Parser_Command_syntax___elambda__1___closed__5); +l_Lean_Parser_Command_syntax___elambda__1___closed__6 = _init_l_Lean_Parser_Command_syntax___elambda__1___closed__6(); +lean_mark_persistent(l_Lean_Parser_Command_syntax___elambda__1___closed__6); +l_Lean_Parser_Command_syntax___elambda__1___closed__7 = _init_l_Lean_Parser_Command_syntax___elambda__1___closed__7(); +lean_mark_persistent(l_Lean_Parser_Command_syntax___elambda__1___closed__7); +l_Lean_Parser_Command_syntax___elambda__1___closed__8 = _init_l_Lean_Parser_Command_syntax___elambda__1___closed__8(); +lean_mark_persistent(l_Lean_Parser_Command_syntax___elambda__1___closed__8); +l_Lean_Parser_Command_syntax___closed__1 = _init_l_Lean_Parser_Command_syntax___closed__1(); +lean_mark_persistent(l_Lean_Parser_Command_syntax___closed__1); +l_Lean_Parser_Command_syntax___closed__2 = _init_l_Lean_Parser_Command_syntax___closed__2(); +lean_mark_persistent(l_Lean_Parser_Command_syntax___closed__2); +l_Lean_Parser_Command_syntax___closed__3 = _init_l_Lean_Parser_Command_syntax___closed__3(); +lean_mark_persistent(l_Lean_Parser_Command_syntax___closed__3); +l_Lean_Parser_Command_syntax___closed__4 = _init_l_Lean_Parser_Command_syntax___closed__4(); +lean_mark_persistent(l_Lean_Parser_Command_syntax___closed__4); +l_Lean_Parser_Command_syntax___closed__5 = _init_l_Lean_Parser_Command_syntax___closed__5(); +lean_mark_persistent(l_Lean_Parser_Command_syntax___closed__5); +l_Lean_Parser_Command_syntax___closed__6 = _init_l_Lean_Parser_Command_syntax___closed__6(); +lean_mark_persistent(l_Lean_Parser_Command_syntax___closed__6); +l_Lean_Parser_Command_syntax___closed__7 = _init_l_Lean_Parser_Command_syntax___closed__7(); +lean_mark_persistent(l_Lean_Parser_Command_syntax___closed__7); +l_Lean_Parser_Command_syntax___closed__8 = _init_l_Lean_Parser_Command_syntax___closed__8(); +lean_mark_persistent(l_Lean_Parser_Command_syntax___closed__8); +l_Lean_Parser_Command_syntax = _init_l_Lean_Parser_Command_syntax(); +lean_mark_persistent(l_Lean_Parser_Command_syntax); +res = l___regBuiltinParser_Lean_Parser_Command_syntax(lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); return lean_mk_io_result(lean_box(0)); } #ifdef __cplusplus diff --git a/stage0/stdlib/Init/Lean/Parser/Tactic.c b/stage0/stdlib/Init/Lean/Parser/Tactic.c index a9e8f7224f..e6eb14326d 100644 --- a/stage0/stdlib/Init/Lean/Parser/Tactic.c +++ b/stage0/stdlib/Init/Lean/Parser/Tactic.c @@ -94,6 +94,7 @@ lean_object* l_Lean_Parser_tacticSeq___closed__1; lean_object* l_Lean_Parser_Tactic_apply___closed__3; lean_object* l_Lean_Parser_Tactic_nestedTacticBlockCurly___elambda__1___closed__2; lean_object* l_Lean_Parser_noFirstTokenInfo(lean_object*); +lean_object* l_Lean_Parser_nonReservedSymbolInfo(lean_object*, uint8_t); lean_object* l___regBuiltinParser_Lean_Parser_Tactic_intros(lean_object*); lean_object* l_Lean_Parser_Tactic_nestedTacticBlock___elambda__1___closed__12; lean_object* l_Lean_Parser_Tactic_nestedTacticBlockCurly___closed__6; @@ -142,7 +143,6 @@ lean_object* l_Lean_Parser_tacticSeq(uint8_t); lean_object* l_Lean_Parser_Tactic_intros___closed__4; lean_object* l_Lean_Parser_sepBy1Info(lean_object*, lean_object*); lean_object* l_Lean_Parser_Tactic_apply___elambda__1___closed__5; -lean_object* l_Lean_Parser_tacticSymbolInfo(lean_object*); extern lean_object* l_Lean_Parser_regBuiltinTermParserAttr___closed__4; lean_object* l_Lean_Parser_Tactic_intro___elambda__1___closed__9; lean_object* l_Lean_Parser_Tactic_nestedTacticBlock___closed__2; @@ -616,10 +616,11 @@ return x_48; lean_object* _init_l_Lean_Parser_Tactic_intro___closed__1() { _start: { -lean_object* x_1; lean_object* x_2; +lean_object* x_1; uint8_t x_2; lean_object* x_3; x_1 = l_Lean_Parser_Tactic_intro___elambda__1___closed__8; -x_2 = l_Lean_Parser_tacticSymbolInfo(x_1); -return x_2; +x_2 = 0; +x_3 = l_Lean_Parser_nonReservedSymbolInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Tactic_intro___closed__2() { @@ -885,10 +886,11 @@ return x_34; lean_object* _init_l_Lean_Parser_Tactic_intros___closed__1() { _start: { -lean_object* x_1; lean_object* x_2; +lean_object* x_1; uint8_t x_2; lean_object* x_3; x_1 = l_Lean_Parser_Tactic_intros___elambda__1___closed__6; -x_2 = l_Lean_Parser_tacticSymbolInfo(x_1); -return x_2; +x_2 = 0; +x_3 = l_Lean_Parser_nonReservedSymbolInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Tactic_intros___closed__2() { @@ -1110,10 +1112,11 @@ return x_22; lean_object* _init_l_Lean_Parser_Tactic_assumption___closed__1() { _start: { -lean_object* x_1; lean_object* x_2; +lean_object* x_1; uint8_t x_2; lean_object* x_3; x_1 = l_Lean_Parser_Tactic_assumption___elambda__1___closed__5; -x_2 = l_Lean_Parser_tacticSymbolInfo(x_1); -return x_2; +x_2 = 0; +x_3 = l_Lean_Parser_nonReservedSymbolInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Tactic_assumption___closed__2() { @@ -1343,10 +1346,11 @@ return x_29; lean_object* _init_l_Lean_Parser_Tactic_apply___closed__1() { _start: { -lean_object* x_1; lean_object* x_2; +lean_object* x_1; uint8_t x_2; lean_object* x_3; x_1 = l_Lean_Parser_Tactic_apply___elambda__1___closed__6; -x_2 = l_Lean_Parser_tacticSymbolInfo(x_1); -return x_2; +x_2 = 0; +x_3 = l_Lean_Parser_nonReservedSymbolInfo(x_1, x_2); +return x_3; } } lean_object* _init_l_Lean_Parser_Tactic_apply___closed__2() { diff --git a/stage0/stdlib/Init/Lean/Parser/Term.c b/stage0/stdlib/Init/Lean/Parser/Term.c index ef9ff05183..55eb2b9f2a 100644 --- a/stage0/stdlib/Init/Lean/Parser/Term.c +++ b/stage0/stdlib/Init/Lean/Parser/Term.c @@ -45,7 +45,6 @@ lean_object* l_Lean_Parser_Term_if___elambda__1___closed__5; lean_object* l_Lean_Parser_Term_subst; lean_object* l_Lean_Parser_Term_quotedName___closed__4; lean_object* l_Lean_Parser_Term_andthen___elambda__1___closed__2; -lean_object* l_Lean_Parser_unicodeInfixL___boxed(lean_object*, lean_object*, lean_object*); lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_doSeq___elambda__1___spec__2(uint8_t, uint8_t, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); lean_object* l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_where___elambda__1___spec__2___closed__3; lean_object* l_Lean_Parser_Term_app___elambda__1___closed__1; @@ -161,7 +160,6 @@ lean_object* l_Lean_Parser_Term_char___closed__3; lean_object* l_Lean_Parser_Term_listLit___closed__3; lean_object* l_Lean_Parser_Term_match___closed__7; lean_object* l___regBuiltinParser_Lean_Parser_Term_pow(lean_object*); -lean_object* l_Lean_Parser_unicodeInfixR___elambda__1(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_eq___elambda__1___closed__2; lean_object* l_Lean_Parser_Term_listLit___elambda__1___closed__3; lean_object* l_Lean_Parser_Term_explicitUniv___elambda__1___closed__16; @@ -343,7 +341,6 @@ lean_object* l_Lean_Parser_Term_doLet___elambda__1___closed__3; lean_object* l_Lean_Parser_Term_doPat___closed__4; lean_object* l_Lean_Parser_Term_doId___closed__2; lean_object* l_Lean_Parser_Term_nomatch___elambda__1___closed__4; -lean_object* l_Lean_Parser_infixR___elambda__1(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match___elambda__1___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_arrayLit___elambda__1___closed__5; lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_match__syntax___elambda__1___spec__1___closed__1; @@ -584,11 +581,9 @@ lean_object* l_Lean_Parser_Term_tupleTail___elambda__1___closed__4; lean_object* l_Lean_Parser_Term_hole___closed__4; lean_object* l_Lean_Parser_Term_cons___elambda__1___closed__3; lean_object* l_Lean_Parser_Term_fun___closed__6; -lean_object* l_Lean_Parser_infixR___boxed(lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_num___closed__2; lean_object* l_Lean_Parser_Term_typeAscription___elambda__1___closed__5; lean_object* l_Lean_Parser_Term_binderDefault; -lean_object* l_Lean_Parser_unicodeSymbolFn___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_namedPattern___elambda__1___closed__5; lean_object* l_Lean_Parser_Term_fun___elambda__1___closed__9; lean_object* l_Lean_Parser_Term_uminus___elambda__1___closed__1; @@ -799,7 +794,6 @@ lean_object* l_Lean_Parser_Term_orM___closed__1; lean_object* l_Lean_Parser_Term_sub___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_letIdDecl___elambda__1(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_equiv___elambda__1___closed__1; -lean_object* l_Lean_Parser_infixL___boxed(lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_not___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_doElem___closed__4; lean_object* l_Lean_Parser_Term_seqLeft___elambda__1(lean_object*, lean_object*, lean_object*); @@ -1423,7 +1417,6 @@ lean_object* l_Lean_Parser_Term_doPat___elambda__1___closed__3; lean_object* l_Lean_Parser_Term_binderType___closed__2; lean_object* l_Lean_Parser_Term_borrowed___closed__5; lean_object* l_Lean_Parser_Term_explicitUniv___closed__8; -lean_object* l_Lean_Parser_unicodeInfixR___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_equiv___closed__1; lean_object* l_Lean_Parser_Term_prop___elambda__1___closed__3; lean_object* l_Lean_Parser_Term_not___closed__7; @@ -1739,7 +1732,6 @@ lean_object* l_Lean_Parser_Term_if___elambda__1___closed__12; lean_object* l_Lean_Parser_sepByFn___at_Lean_Parser_Term_structInst___elambda__1___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_fcomp___closed__2; lean_object* l_Lean_Parser_Term_where___closed__3; -lean_object* l_Lean_Parser_unicodeInfixL___elambda__1(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_map___elambda__1___closed__2; lean_object* l_Lean_Parser_Term_sort___elambda__1___closed__9; lean_object* l___regBuiltinParser_Lean_Parser_Term_gt(lean_object*); @@ -1824,7 +1816,6 @@ lean_object* l___regBuiltinParser_Lean_Parser_Term_or(lean_object*); lean_object* l_Lean_Parser_Term_iff___elambda__1___closed__3; lean_object* l_Lean_Parser_Term_antiquot___closed__1; lean_object* l_Lean_Parser_Term_doPat___closed__5; -lean_object* l_Lean_Parser_categoryParser___elambda__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_forall___elambda__1___closed__4; lean_object* l_Lean_Parser_numLitFn___rarg(lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_binderDefault___closed__3; @@ -1915,7 +1906,6 @@ lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_forall___elambda uint8_t lean_string_dec_eq(lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_suffices___closed__3; lean_object* l_Lean_Parser_Term_arrayRef___elambda__1___closed__3; -lean_object* l_Lean_Parser_infixL___elambda__1(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_manyAux___main___at_Lean_Parser_Term_letEqns___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_Term_arrayLit___elambda__1___closed__1; lean_object* l_Lean_Parser_Term_prop___elambda__1___closed__8; @@ -1928,304 +1918,6 @@ lean_object* l_Lean_Parser_Term_proj___elambda__1___closed__3; lean_object* l_Lean_Parser_Term_letIdDecl___closed__6; lean_object* l_Lean_Parser_Term_app___closed__4; extern lean_object* l_Lean_Parser_mkAntiquot___closed__1; -lean_object* l_Lean_Parser_unicodeInfixR___elambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { -_start: -{ -lean_object* x_5; lean_object* x_6; -lean_inc(x_2); -lean_inc(x_4); -x_5 = l_Lean_Parser_ParserState_pushSyntax(x_4, x_2); -x_6 = lean_ctor_get(x_4, 3); -lean_inc(x_6); -lean_dec(x_4); -if (lean_obj_tag(x_6) == 0) -{ -lean_object* x_7; -x_7 = lean_apply_3(x_1, x_2, x_3, x_5); -return x_7; -} -else -{ -lean_dec(x_6); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -return x_5; -} -} -} -lean_object* l_Lean_Parser_unicodeInfixR(lean_object* x_1, lean_object* x_2, lean_object* x_3) { -_start: -{ -lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; uint8_t x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; -lean_inc(x_3); -x_4 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_4, 0, x_3); -x_5 = l_String_trim(x_1); -x_6 = l_String_trim(x_2); -lean_inc(x_6); -lean_inc(x_5); -x_7 = l_Lean_Parser_unicodeSymbolInfo(x_5, x_6, x_4); -x_8 = lean_alloc_closure((void*)(l_Lean_Parser_unicodeSymbolFn___rarg___boxed), 5, 2); -lean_closure_set(x_8, 0, x_5); -lean_closure_set(x_8, 1, x_6); -x_9 = lean_unsigned_to_nat(1u); -x_10 = lean_nat_sub(x_3, x_9); -lean_dec(x_3); -x_11 = 1; -x_12 = l_Lean_Parser_regBuiltinTermParserAttr___closed__4; -lean_inc(x_10); -x_13 = l_Lean_Parser_categoryParser(x_11, x_12, x_10); -x_14 = lean_ctor_get(x_13, 0); -lean_inc(x_14); -lean_dec(x_13); -x_15 = l_Lean_Parser_andthenInfo(x_7, x_14); -x_16 = lean_alloc_closure((void*)(l_Lean_Parser_categoryParser___elambda__1___rarg___boxed), 5, 2); -lean_closure_set(x_16, 0, x_12); -lean_closure_set(x_16, 1, x_10); -x_17 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn___rarg), 5, 2); -lean_closure_set(x_17, 0, x_8); -lean_closure_set(x_17, 1, x_16); -x_18 = l_Lean_Parser_epsilonInfo; -x_19 = l_Lean_Parser_andthenInfo(x_18, x_15); -x_20 = lean_alloc_closure((void*)(l_Lean_Parser_unicodeInfixR___elambda__1), 4, 1); -lean_closure_set(x_20, 0, x_17); -x_21 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_21, 0, x_19); -lean_ctor_set(x_21, 1, x_20); -return x_21; -} -} -lean_object* l_Lean_Parser_unicodeInfixR___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { -_start: -{ -lean_object* x_4; -x_4 = l_Lean_Parser_unicodeInfixR(x_1, x_2, x_3); -lean_dec(x_2); -lean_dec(x_1); -return x_4; -} -} -lean_object* l_Lean_Parser_infixR___elambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { -_start: -{ -lean_object* x_5; lean_object* x_6; -lean_inc(x_2); -lean_inc(x_4); -x_5 = l_Lean_Parser_ParserState_pushSyntax(x_4, x_2); -x_6 = lean_ctor_get(x_4, 3); -lean_inc(x_6); -lean_dec(x_4); -if (lean_obj_tag(x_6) == 0) -{ -lean_object* x_7; -x_7 = lean_apply_3(x_1, x_2, x_3, x_5); -return x_7; -} -else -{ -lean_dec(x_6); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -return x_5; -} -} -} -lean_object* l_Lean_Parser_infixR(lean_object* x_1, lean_object* x_2) { -_start: -{ -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; uint8_t x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -lean_inc(x_2); -x_3 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_3, 0, x_2); -x_4 = l_String_trim(x_1); -lean_inc(x_4); -x_5 = l_Lean_Parser_symbolInfo(x_4, x_3); -x_6 = lean_alloc_closure((void*)(l_Lean_Parser_symbolFn___rarg___boxed), 4, 1); -lean_closure_set(x_6, 0, x_4); -x_7 = lean_unsigned_to_nat(1u); -x_8 = lean_nat_sub(x_2, x_7); -lean_dec(x_2); -x_9 = 1; -x_10 = l_Lean_Parser_regBuiltinTermParserAttr___closed__4; -lean_inc(x_8); -x_11 = l_Lean_Parser_categoryParser(x_9, x_10, x_8); -x_12 = lean_ctor_get(x_11, 0); -lean_inc(x_12); -lean_dec(x_11); -x_13 = l_Lean_Parser_andthenInfo(x_5, x_12); -x_14 = lean_alloc_closure((void*)(l_Lean_Parser_categoryParser___elambda__1___rarg___boxed), 5, 2); -lean_closure_set(x_14, 0, x_10); -lean_closure_set(x_14, 1, x_8); -x_15 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn___rarg), 5, 2); -lean_closure_set(x_15, 0, x_6); -lean_closure_set(x_15, 1, x_14); -x_16 = l_Lean_Parser_epsilonInfo; -x_17 = l_Lean_Parser_andthenInfo(x_16, x_13); -x_18 = lean_alloc_closure((void*)(l_Lean_Parser_infixR___elambda__1), 4, 1); -lean_closure_set(x_18, 0, x_15); -x_19 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_19, 0, x_17); -lean_ctor_set(x_19, 1, x_18); -return x_19; -} -} -lean_object* l_Lean_Parser_infixR___boxed(lean_object* x_1, lean_object* x_2) { -_start: -{ -lean_object* x_3; -x_3 = l_Lean_Parser_infixR(x_1, x_2); -lean_dec(x_1); -return x_3; -} -} -lean_object* l_Lean_Parser_unicodeInfixL___elambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { -_start: -{ -lean_object* x_5; lean_object* x_6; -lean_inc(x_2); -lean_inc(x_4); -x_5 = l_Lean_Parser_ParserState_pushSyntax(x_4, x_2); -x_6 = lean_ctor_get(x_4, 3); -lean_inc(x_6); -lean_dec(x_4); -if (lean_obj_tag(x_6) == 0) -{ -lean_object* x_7; -x_7 = lean_apply_3(x_1, x_2, x_3, x_5); -return x_7; -} -else -{ -lean_dec(x_6); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -return x_5; -} -} -} -lean_object* l_Lean_Parser_unicodeInfixL(lean_object* x_1, lean_object* x_2, lean_object* x_3) { -_start: -{ -lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; uint8_t x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -lean_inc(x_3); -x_4 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_4, 0, x_3); -x_5 = l_String_trim(x_1); -x_6 = l_String_trim(x_2); -lean_inc(x_6); -lean_inc(x_5); -x_7 = l_Lean_Parser_unicodeSymbolInfo(x_5, x_6, x_4); -x_8 = lean_alloc_closure((void*)(l_Lean_Parser_unicodeSymbolFn___rarg___boxed), 5, 2); -lean_closure_set(x_8, 0, x_5); -lean_closure_set(x_8, 1, x_6); -x_9 = 1; -x_10 = l_Lean_Parser_regBuiltinTermParserAttr___closed__4; -lean_inc(x_3); -x_11 = l_Lean_Parser_categoryParser(x_9, x_10, x_3); -x_12 = lean_ctor_get(x_11, 0); -lean_inc(x_12); -lean_dec(x_11); -x_13 = l_Lean_Parser_andthenInfo(x_7, x_12); -x_14 = lean_alloc_closure((void*)(l_Lean_Parser_categoryParser___elambda__1___rarg___boxed), 5, 2); -lean_closure_set(x_14, 0, x_10); -lean_closure_set(x_14, 1, x_3); -x_15 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn___rarg), 5, 2); -lean_closure_set(x_15, 0, x_8); -lean_closure_set(x_15, 1, x_14); -x_16 = l_Lean_Parser_epsilonInfo; -x_17 = l_Lean_Parser_andthenInfo(x_16, x_13); -x_18 = lean_alloc_closure((void*)(l_Lean_Parser_unicodeInfixL___elambda__1), 4, 1); -lean_closure_set(x_18, 0, x_15); -x_19 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_19, 0, x_17); -lean_ctor_set(x_19, 1, x_18); -return x_19; -} -} -lean_object* l_Lean_Parser_unicodeInfixL___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { -_start: -{ -lean_object* x_4; -x_4 = l_Lean_Parser_unicodeInfixL(x_1, x_2, x_3); -lean_dec(x_2); -lean_dec(x_1); -return x_4; -} -} -lean_object* l_Lean_Parser_infixL___elambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { -_start: -{ -lean_object* x_5; lean_object* x_6; -lean_inc(x_2); -lean_inc(x_4); -x_5 = l_Lean_Parser_ParserState_pushSyntax(x_4, x_2); -x_6 = lean_ctor_get(x_4, 3); -lean_inc(x_6); -lean_dec(x_4); -if (lean_obj_tag(x_6) == 0) -{ -lean_object* x_7; -x_7 = lean_apply_3(x_1, x_2, x_3, x_5); -return x_7; -} -else -{ -lean_dec(x_6); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -return x_5; -} -} -} -lean_object* l_Lean_Parser_infixL(lean_object* x_1, lean_object* x_2) { -_start: -{ -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; uint8_t x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; -lean_inc(x_2); -x_3 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_3, 0, x_2); -x_4 = l_String_trim(x_1); -lean_inc(x_4); -x_5 = l_Lean_Parser_symbolInfo(x_4, x_3); -x_6 = lean_alloc_closure((void*)(l_Lean_Parser_symbolFn___rarg___boxed), 4, 1); -lean_closure_set(x_6, 0, x_4); -x_7 = 1; -x_8 = l_Lean_Parser_regBuiltinTermParserAttr___closed__4; -lean_inc(x_2); -x_9 = l_Lean_Parser_categoryParser(x_7, x_8, x_2); -x_10 = lean_ctor_get(x_9, 0); -lean_inc(x_10); -lean_dec(x_9); -x_11 = l_Lean_Parser_andthenInfo(x_5, x_10); -x_12 = lean_alloc_closure((void*)(l_Lean_Parser_categoryParser___elambda__1___rarg___boxed), 5, 2); -lean_closure_set(x_12, 0, x_8); -lean_closure_set(x_12, 1, x_2); -x_13 = lean_alloc_closure((void*)(l_Lean_Parser_andthenFn___rarg), 5, 2); -lean_closure_set(x_13, 0, x_6); -lean_closure_set(x_13, 1, x_12); -x_14 = l_Lean_Parser_epsilonInfo; -x_15 = l_Lean_Parser_andthenInfo(x_14, x_11); -x_16 = lean_alloc_closure((void*)(l_Lean_Parser_infixL___elambda__1), 4, 1); -lean_closure_set(x_16, 0, x_13); -x_17 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_17, 0, x_15); -lean_ctor_set(x_17, 1, x_16); -return x_17; -} -} -lean_object* l_Lean_Parser_infixL___boxed(lean_object* x_1, lean_object* x_2) { -_start: -{ -lean_object* x_3; -x_3 = l_Lean_Parser_infixL(x_1, x_2); -lean_dec(x_1); -return x_3; -} -} lean_object* _init_l___private_Init_Lean_Parser_Parser_2__sepByFnAux___main___at_Lean_Parser_Term_explicitUniv___elambda__1___spec__2___closed__1() { _start: { diff --git a/stage0/stdlib/Init/LeanExt.c b/stage0/stdlib/Init/LeanExt.c index e295f9849e..638fad6b3c 100644 --- a/stage0/stdlib/Init/LeanExt.c +++ b/stage0/stdlib/Init/LeanExt.c @@ -23,7 +23,6 @@ extern lean_object* l_String_splitAux___main___closed__1; lean_object* l_Lean_ParserDescr_try(uint8_t, lean_object*); lean_object* l_Lean_ParserDescr_unicodeSymbol(uint8_t, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_ParserDescrCore_inhabited(uint8_t); -lean_object* l_Lean_ParserDescr_tacticSymbol(lean_object*); lean_object* l_Lean_ParserDescr_many1(uint8_t, lean_object*); lean_object* l_Lean_ParserDescr_many___boxed(lean_object*, lean_object*); lean_object* l_Lean_ParserDescr_many1___boxed(lean_object*, lean_object*); @@ -35,6 +34,7 @@ lean_object* l_Lean_ParserDescr_symbol___boxed(lean_object*, lean_object*, lean_ lean_object* l_Lean_ParserDescr_node(uint8_t, lean_object*, lean_object*); lean_object* l_Lean_ParserDescr_try___boxed(lean_object*, lean_object*); lean_object* l_Lean_ParserDescr_node___boxed(lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_ParserDescr_nonReservedSymbol___boxed(lean_object*, lean_object*); lean_object* l_Lean_ParserDescrCore_inhabited___boxed(lean_object*); lean_object* l_Lean_ParserDescr_sepBy1(uint8_t, lean_object*, lean_object*); lean_object* l_Lean_ParserDescr_unicodeSymbol___boxed(lean_object*, lean_object*, lean_object*, lean_object*); @@ -42,6 +42,7 @@ lean_object* l_Lean_ParserDescr_orelse___boxed(lean_object*, lean_object*, lean_ lean_object* l_Lean_ParserDescr_sepBy___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_ParserDescr_symbol(uint8_t, lean_object*, lean_object*); lean_object* l_Lean_ParserDescr_optional___boxed(lean_object*, lean_object*); +lean_object* l_Lean_ParserDescr_nonReservedSymbol(lean_object*, uint8_t); lean_object* l_Lean_ParserDescr_sepBy1___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_ParserDescrCore_inhabited(uint8_t x_1) { _start: @@ -292,13 +293,24 @@ x_5 = l_Lean_ParserDescr_symbol(x_4, x_2, x_3); return x_5; } } -lean_object* l_Lean_ParserDescr_tacticSymbol(lean_object* x_1) { +lean_object* l_Lean_ParserDescr_nonReservedSymbol(lean_object* x_1, uint8_t x_2) { _start: { -lean_object* x_2; -x_2 = lean_alloc_ctor(12, 1, 0); -lean_ctor_set(x_2, 0, x_1); -return x_2; +lean_object* x_3; +x_3 = lean_alloc_ctor(12, 1, 1); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set_uint8(x_3, sizeof(void*)*1, x_2); +return x_3; +} +} +lean_object* l_Lean_ParserDescr_nonReservedSymbol___boxed(lean_object* x_1, lean_object* x_2) { +_start: +{ +uint8_t x_3; lean_object* x_4; +x_3 = lean_unbox(x_2); +lean_dec(x_2); +x_4 = l_Lean_ParserDescr_nonReservedSymbol(x_1, x_3); +return x_4; } } lean_object* l_Lean_ParserDescr_unicodeSymbol(uint8_t x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) {