use crate::ast::*;
use crate::diagnostics::FileId;
#[allow(unused_extern_crates)]
extern crate lalrpop_util as __lalrpop_util;
#[allow(unused_imports)]
use self::__lalrpop_util::state_machine as __state_machine;
extern crate alloc;
extern crate core;
mod __parse__Program {
#![allow(
non_snake_case,
non_camel_case_types,
unused_mut,
unused_variables,
unused_imports,
unused_parens
)]
use crate::ast::*;
use crate::diagnostics::FileId;
#[allow(unused_extern_crates)]
extern crate lalrpop_util as __lalrpop_util;
#[allow(unused_imports)]
use self::__lalrpop_util::state_machine as __state_machine;
extern crate alloc;
extern crate core;
use self::__lalrpop_util::lexer::Token;
#[allow(dead_code)]
pub(crate) enum __Symbol<'input> {
Variant0(&'input str),
Variant1(Spanned<Type>),
Variant2(core::option::Option<Spanned<Type>>),
Variant3(Spanned<Vec<Stmt<'input>>>),
Variant4(core::option::Option<Spanned<Vec<Stmt<'input>>>>),
Variant5(Arg<'input>),
Variant6(alloc::vec::Vec<Arg<'input>>),
Variant7(Expr<'input>),
Variant8(alloc::vec::Vec<Expr<'input>>),
Variant9(Stmt<'input>),
Variant10(alloc::vec::Vec<Stmt<'input>>),
Variant11(usize),
Variant12(BinOp),
Variant13(core::option::Option<Arg<'input>>),
Variant14(Vec<Arg<'input>>),
Variant15(Box<Expr<'input>>),
Variant16(RawExpr<'input>),
Variant17(Vec<Stmt<'input>>),
Variant18(bool),
Variant19(Vec<Expr<'input>>),
Variant20(core::option::Option<Expr<'input>>),
Variant21(Function<'input>),
Variant22(Item<'input>),
Variant23(alloc::vec::Vec<Item<'input>>),
Variant24(Literal<'input>),
Variant25(Spanned<&'input str>),
Variant26(Spanned<RawExpr<'input>>),
Variant27(Program<'input>),
Variant28(Spanned<BinOp>),
Variant29(Spanned<Vec<Arg<'input>>>),
Variant30(Spanned<Function<'input>>),
Variant31(Spanned<Literal<'input>>),
Variant32(Spanned<UnaryOp>),
Variant33(core::option::Option<Stmt<'input>>),
Variant34(Type),
Variant35(UnaryOp),
}
const __ACTION: &[i16] = &[
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -46, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 59, 0, 0, 0, 0, 0, 0, 60,
0, 0, 0, 61, 0, 0, 0, 0, 0, 0, 0, 0, 0, 99, 0, 0, 19, 0, 0, 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 101, 0, 20, 21,
0, 0, 22, 23, 24, 0, 102, 25, 8, 0, -108, 103, 104, 105, 50, 0, 0, 0, 0, -48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 99, 0, 0, 19, 0, 0, 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 101, 0, 20, 21,
0, 0, 22, 23, 24, 0, 102, 25, 8, 0, -110, 103, 104, 105, 50, 99, 0, 0, 19, 0, 0, 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 101, 0, 20, 21,
0, 0, 0, 0, 0, 0, 102, 25, 8, 0, 0, 103, 104, 105, 50, 0, -26, -26, 0, -26, 0, 117, -26, 118, 0, 0, 0, 0, -26, -26, -26, 0, -26, -26, -26, 0, -26,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -26, -26, -26, 0, 0, 0, 0, 0, -53, -53, 0, -53, 0, 0, -53, 0, 0, 0, 0, 0, -53, 124, 125, 0, -53, 126, 127, 0, -53, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -53, -53, -53, 0, 0, 0, 0, 0, 131, -59, 0, -59, 0, 0, -59, 0, 0, 0, 0, 0, -59, 0, 0, 0, 132, 0, 0, 0, -59, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -59, -59, -59, 0, 0, 0, 0, 0, 0, 134, 0, -27, 0, 0, -27, 0, 0, 0, 0, 0, -27, 0, 0, 0, 0, 0, 0, 0, -27, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, -27, -27, -27, 0, 0, 0, 0, 0, 0, 0, 0, -91, 0, 0, -91, 0, 0, 0, 0, 0, -91, 0, 0, 0, 0, 0, 0, 0, -91, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, -91, 136, -91, 0, 0, 0, 0, 0, -88, -88, 0, -88, 140, -88, -88, -88, 0, 0, 141, 0, -88, -88, -88, 0, -88, -88, -88, 0,
-88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -88, -88, -88, 0, 0, 0, 0,
99, 0, 0, 19, 0, 0, 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 101, 0, 20, 21,
0, 0, 0, 0, 0, 0, 102, 25, 8, 0, 0, 103, 104, 105, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 99, 0, 0, 19, 0, 0, 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 101, 0, 20, 21,
0, 0, 0, 0, 0, 0, 102, 25, 8, 0, 0, 103, 104, 105, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 99, 0, 0, 19, 0, 0, 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 101, 0, 20, 21,
0, 0, 0, 0, 0, 0, 102, 25, 8, 0, 0, 103, 104, 105, 50, 99, 0, 0, 19, 0, 0, 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 101, 0, 20, 21,
0, 0, 0, 0, 0, 0, 102, 25, 8, 0, 0, 103, 104, 105, 50, 99, 0, 0, 19, 0, 0, 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 101, 0, 20, 21,
0, 0, 0, 0, 0, 0, 102, 25, 8, 0, 0, 103, 104, 105, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 59, 0, 0, 0, 0, 0, 0, 60,
0, 0, 0, 61, 0, 0, 0, 0, 0, 0, 0, 0, 0, 99, 0, 0, 19, -50, 0, 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 101, 0, 20,
21, 0, 0, 0, 0, 0, 0, 102, 25, 8, 0, 0, 103, 104, 105, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 99, 0, 0, 19, 0, 0, 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 101, 0, 20, 21,
0, 0, 0, 0, 0, 0, 102, 25, 8, 0, 0, 103, 104, 105, 50, 99, 0, 0, 19, 0, 0, 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 101, 0, 20, 21,
0, 0, 0, 0, 0, 0, 102, 25, 8, 0, 0, 103, 104, 105, 50, 99, 0, 0, 19, 0, 0, 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 101, 0, 20, 21,
0, 0, 0, 0, 0, 0, 102, 25, 8, 0, 0, 103, 104, 105, 50, 99, 0, 0, 19, 0, 0, 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 101, 0, 20, 21,
0, 0, 0, 0, 0, 0, 102, 25, 8, 0, 0, 103, 104, 105, 50, 99, 0, 0, 19, 0, 0, 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 101, 0, 20, 21,
0, 0, 0, 0, 0, 0, 102, 25, 8, 0, 0, 103, 104, 105, 50, 99, 0, 0, 19, 0, 0, 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 101, 0, 20, 21,
0, 0, 0, 0, 0, 0, 102, 25, 8, 0, 0, 103, 104, 105, 50, 99, 0, 0, 19, 0, 0, 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 101, 0, 20, 21,
0, 0, 0, 0, 0, 0, 102, 25, 8, 0, 0, 103, 104, 105, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 99, 0, 0, 19, -52, 0, 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 101, 0, 20,
21, 0, 0, 0, 0, 0, 0, 102, 25, 8, 0, 0, 103, 104, 105, 50, 99, 0, 0, 19, 0, 0, 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 101, 0, 20, 21,
0, 0, 0, 0, 0, 0, 102, 25, 8, 0, 0, 103, 104, 105, 50, 99, 0, 0, 19, 0, 0, 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 101, 0, 20, 21,
0, 0, 0, 0, 0, 0, 102, 25, 8, 0, 0, 103, 104, 105, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -116, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -75, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -72, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -76, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -122, -122, -122, -122, -122, -122, -122, -122, 0, -122, -122, -122, -122, -122, -122,
-122, -122, -122, -122, -122, -122, 0, 0, 0, 0, 0, 0, -122, 0, 0, 0, 0, 0, 0, 0, -122,
-122, -122, 0, 0, 0, 0, 0, -89, -89, -89, -89, -89, -89, -89, -89, 0, -89, -89, -89, -89, -89, -89, -89, -89, -89,
-89, -89, -89, 0, 0, 0, 0, 0, 0, -89, 0, 0, 0, 0, 0, 0, 0, -89, -89, -89, 0, 0, 0, 0,
0, -100, -100, -100, -100, -100, -100, -100, -100, 0, -100, -100, -100, -100, -100, -100,
-100, -100, -100, -100, -100, -100, 0, 0, 0, 0, 0, 0, -100, 0, 0, 0, 0, 0, 0, 0, -100,
-100, -100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -112, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, -112, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -68, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -113, -113, -113, -113, -113, -113, -113, -113, 0, -113, -113, 0, -113, -113, -113, 0,
-113, -113, -113, -113, -113, 0, -113, 0, -113, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -113, -113,
-113, 0, 0, 0, 0, 0, -41, -41, -41, -41, -41, -41, -41, -41, 0, -41, -41, 0, -41, -41, -41, 0, -41, -41, -41,
-41, -41, 0, -41, 0, -41, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -41, -41, -41, 0, 0, 0, 0,
0, 0, 0, 0, -45, 0, 0, 107, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 108, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -129, 0, 0, -129, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, -129, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -153, 0, 0, -153, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, -153, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -152, 0, 0, -152, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, -152, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -154, 0, 0, -154, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, -154, 0, 0, 0, 0, 0, 0, 0, -142, -142, 0, -142, 0, 0, -142, 0, 0, 0, 0, 0, -142, -142, -142, 0, -142, -142, -142,
0, -142, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -142, -142, -142, 0, 0, 0, 0,
0, 0, 0, 0, -148, 0, 0, -148, 0, 0, 0, 0, 0, -148, 0, 0, 0, 0, 0, 0, 0, -148, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, -148, -148, -148, 0, 0, 0, 0, 0, -94, -94, -94, -94, -94, -94, -94, -94, 0, -94, -94, 0, -94, -94, -94, 0, -94, -94, -94,
-94, -94, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -94, -94, -94, 0, 0, 0, 0,
0, -38, -38, -38, -38, -38, -38, -38, -38, 0, -38, -38, 0, -38, -38, -38, 0, -38, -38, -38,
-38, -38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -38, -38, -38, 0, 0, 0, 0,
0, -82, -82, -82, -82, -82, -82, -82, -82, 0, -82, -82, 0, -82, -82, -82, 0, -82, -82, -82,
-82, -82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -82, -82, -82, 0, 0, 0, 0,
0, -144, -144, 0, -144, 0, 0, -144, 0, 0, 0, 0, 0, -144, 0, 0, 0, -144, 0, 0, 0, -144, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -144, -144, -144, 0, 0, 0, 0, 0, 0, -146, 0, -146, 0, 0, -146, 0, 0, 0, 0, 0, -146, 0, 0, 0, 0, 0, 0, 0, -146, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -146, -146, -146, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -132, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, -132, 0, 0, 0, 0, 0, -80, -80, -80, -80, -80, -80, -80, -80, 0, -80, -80, 0, -80, -80, -80, 0, -80, -80, -80,
-80, -80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -80, -80, -80, 0, 0, 0, 0,
0, -81, -81, -81, -81, -81, -81, -81, -81, 0, -81, -81, 0, -81, -81, -81, 0, -81, -81, -81,
-81, -81, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -81, -81, -81, 0, 0, 0, 0,
0, -117, -117, -117, -117, -117, -117, -117, -117, 0, -117, -117, 0, -117, -117, -117, 0,
-117, -117, -117, -117, -117, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -117, -117, -117,
0, 0, 0, 0, 0, -140, -140, 0, -140, 0, -140, -140, -140, 0, 0, 0, 0, -140, -140, -140, 0, -140, -140,
-140, 0, -140, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -140, -140, -140, 0, 0, 0, 0,
0, -37, -37, -37, -37, -37, -37, -37, -37, 0, -37, -37, 0, -37, -37, -37, 0, -37, -37, -37,
-37, -37, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -37, -37, -37, 0, 0, 0, 0,
0, 0, 0, 0, -63, 0, 0, -63, 0, 0, 0, 0, 0, -63, 0, 0, 0, 0, 0, 0, 0, -63, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, -63, 0, -63, 0, 0, 0, 0, 0, 0, 0, 27, 0, 0, 0, 0, 0, 0, 28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 29, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -156, -156, -121, -156, -156, -156, -156, -156, 0, -121, -156, 0, -156, -156, -156, 0,
-156, -156, -156, -121, -156, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -156, -156, -156,
0, 0, 0, 0, 0, -123, -123, 0, -123, 0, -123, -123, -123, 0, 0, 0, 0, -123, -123, -123, 0, -123, -123,
-123, 0, -123, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -123, -123, -123, 0, 0, 0, 0,
0, -124, -124, 0, -124, 0, 0, -124, 0, 0, 0, 0, 0, -124, -124, -124, 0, -124, -124, -124, 0,
-124, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -124, -124, -124, 0, 0, 0, 0,
0, -125, -125, 0, -125, 0, 0, -125, 0, 0, 0, 0, 0, -125, 0, 0, 0, -125, 0, 0, 0, -125, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -125, -125, -125, 0, 0, 0, 0, 0, 0, -126, 0, -126, 0, 0, -126, 0, 0, 0, 0, 0, -126, 0, 0, 0, 0, 0, 0, 0, -126, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -126, -126, -126, 0, 0, 0, 0, 0, 0, 0, 0, -127, 0, 0, -127, 0, 0, 0, 0, 0, -127, 0, 0, 0, 0, 0, 0, 0, -127, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -127, -127, -127, 0, 0, 0, 0, 0, -128, -128, 0, -128, -128, -128, -128, -128, 0, 0, -128, 0, -128, -128, -128, 0, -128,
-128, -128, 0, -128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -128, -128, -128, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 111, 0, 0, 0, 0, 0, -40, -40, -40, -40, -40, -40, -40, -40, 0, -40, -40, 0, -40, -40, -40, 0, -40, -40, -40,
-40, -40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -40, -40, -40, 0, 0, 0, 0,
0, 0, 0, -93, 0, 0, 0, 0, 0, 0, -93, 0, 0, 0, 0, 0, 0, 0, 0, 0, -93, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -139, -139, 0, -139, 0, -139, -139, -139, 0, 0, 0, 0, -139, -139, -139, 0, -139, -139,
-139, 0, -139, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -139, -139, -139, 0, 0, 0, 0,
0, -141, -141, 0, -141, 0, 0, -141, 0, 0, 0, 0, 0, -141, -141, -141, 0, -141, -141, -141, 0,
-141, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -141, -141, -141, 0, 0, 0, 0,
0, -143, -143, 0, -143, 0, 0, -143, 0, 0, 0, 0, 0, -143, 0, 0, 0, -143, 0, 0, 0, -143, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -143, -143, -143, 0, 0, 0, 0, 0, 0, -145, 0, -145, 0, 0, -145, 0, 0, 0, 0, 0, -145, 0, 0, 0, 0, 0, 0, 0, -145, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -145, -145, -145, 0, 0, 0, 0, 0, 0, 0, 0, -147, 0, 0, -147, 0, 0, 0, 0, 0, -147, 0, 0, 0, 0, 0, 0, 0, -147, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -147, -147, -147, 0, 0, 0, 0, 0, -149, -149, 0, -149, -149, -149, -149, -149, 0, 0, -149, 0, -149, -149, -149, 0, -149,
-149, -149, 0, -149, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -149, -149, -149, 0, 0, 0,
0, 0, -155, -155, 0, -155, -155, -155, -155, -155, 0, 0, -155, 0, -155, -155, -155, 0, -155,
-155, -155, 0, -155, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -155, -155, -155, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 113, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, -107, 0, 0, 0, 0, 0, -79, -79, -79, -79, -79, -79, -79, -79, 0, -79, -79, 0, -79, -79, -79, 0, -79, -79, -79,
-79, -79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -79, -79, -79, 0, 0, 0, 0,
0, -150, -150, 0, -150, -150, -150, -150, -150, 0, 0, -150, 0, -150, -150, -150, 0, -150,
-150, -150, 0, -150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -150, -150, -150, 0, 0, 0,
0, 0, -130, -130, 0, -130, -130, -130, -130, -130, 0, 0, -130, 0, -130, -130, -130, 0, -130,
-130, -130, 0, -130, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -130, -130, -130, 0, 0, 0,
0, -131, 0, 0, -131, 0, 0, 0, 0, -131, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -131, 0,
-131, -131, 0, 0, 0, 0, 0, 0, -131, -131, -131, 0, 0, -131, -131, -131, -131,
-158, 0, 0, -158, 0, 0, 0, 0, -158, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -158, 0,
-158, -158, 0, 0, 0, 0, 0, 0, -158, -158, -158, 0, 0, -158, -158, -158, -158,
-159, 0, 0, -159, 0, 0, 0, 0, -159, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -159, 0,
-159, -159, 0, 0, 0, 0, 0, 0, -159, -159, -159, 0, 0, -159, -159, -159, -159,
0, -44, -44, -44, -44, -44, -44, -44, -44, 0, -44, -44, 0, -44, -44, -44, 0, -44, -44, -44,
-44, -44, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -44, -44, -44, 0, 0, 0, 0,
0, -43, -43, -43, -43, -43, -43, -43, -43, 0, -43, -43, 0, -43, -43, -43, 0, -43, -43, -43,
-43, -43, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -43, -43, -43, 0, 0, 0, 0,
0, -138, -138, -138, -138, -138, -138, -138, -138, 0, -138, -138, 0, -138, -138, -138, 0,
-138, -138, -138, -138, -138, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -138, -138, -138,
0, 0, 0, 0, 0, -66, -66, -66, -66, -66, -66, -66, -66, 0, -66, -66, 0, -66, -66, -66, 0, -66, -66, -66,
-66, -66, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -66, -66, -66, 0, 0, 0, 0,
0, -71, -71, -71, -71, -71, -71, -71, -71, 0, -71, -71, 0, -71, -71, -71, 0, -71, -71, -71,
-71, -71, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -71, -71, -71, 0, 0, 0, 0,
0, 0, 0, 0, -47, 0, 0, 148, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -10, 0, 0, 0, 0, 0, 0, 0, 0, 0, -31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, -31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -67, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, -109, 0, 0, 0, 0, 0, -42, -42, -42, -42, -42, -42, -42, -42, 0, -42, -42, 0, -42, -42, -42, 0, -42, -42, -42,
-42, -42, 0, -42, 0, -42, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -42, -42, -42, 0, 0, 0, 0,
0, -157, -157, 0, -157, -157, -157, -157, -157, 0, 0, -157, 0, -157, -157, -157, 0, -157,
-157, -157, 0, -157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -157, -157, -157, 0, 0, 0,
0, -20, 0, 0, -20, 0, 0, 0, 0, -20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -20, 0, -20,
-20, 0, 0, -20, -20, -20, 0, -20, -20, -20, 0, -20, -20, -20, -20, -20,
-111, 0, 0, -111, 0, 0, 0, 0, -111, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -111, 0,
-111, -111, 0, 0, 0, 0, 0, 0, -111, -111, -111, 0, 0, -111, -111, -111, -111,
-25, 0, 0, -25, 0, 0, 0, 0, -25, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -25, 0, -25,
-25, 0, 0, 0, 0, 0, 0, -25, -25, -25, 0, 0, -25, -25, -25, -25, -24, 0, 0, -24, 0, 0, 0, 0, -24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -24, 0, -24,
-24, 0, 0, 0, 0, 0, 0, -24, -24, -24, 0, 0, -24, -24, -24, -24, -92, 0, 0, -92, 0, 0, 0, 0, -92, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -92, 0, -92,
-92, 0, 0, 0, 0, 0, 0, -92, -92, -92, 0, 0, -92, -92, -92, -92, -85, 0, 0, -85, 0, 0, 0, 0, -85, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -85, 0, -85,
-85, 0, 0, 0, 0, 0, 0, -85, -85, -85, 0, 0, -85, -85, -85, -85, -114, 0, 0, -114, 0, 0, 0, 0, -114, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -114, 0,
-114, -114, 0, 0, 0, 0, 0, 0, -114, -114, -114, 0, 0, -114, -114, -114, -114,
-55, 0, 0, -55, 0, 0, 0, 0, -55, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -55, 0, -55,
-55, 0, 0, 0, 0, 0, 0, -55, -55, -55, 0, 0, -55, -55, -55, -55, -57, 0, 0, -57, 0, 0, 0, 0, -57, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -57, 0, -57,
-57, 0, 0, 0, 0, 0, 0, -57, -57, -57, 0, 0, -57, -57, -57, -57, -54, 0, 0, -54, 0, 0, 0, 0, -54, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -54, 0, -54,
-54, 0, 0, 0, 0, 0, 0, -54, -54, -54, 0, 0, -54, -54, -54, -54, -56, 0, 0, -56, 0, 0, 0, 0, -56, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -56, 0, -56,
-56, 0, 0, 0, 0, 0, 0, -56, -56, -56, 0, 0, -56, -56, -56, -56, -77, 0, 0, -77, 0, 0, 0, 0, -77, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -77, 0, -77,
-77, 0, 0, 0, 0, 0, 0, -77, -77, -77, 0, 0, -77, -77, -77, -77, -78, 0, 0, -78, 0, 0, 0, 0, -78, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -78, 0, -78,
-78, 0, 0, 0, 0, 0, 0, -78, -78, -78, 0, 0, -78, -78, -78, -78, -69, 0, 0, -69, 0, 0, 0, 0, -69, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -69, 0, -69,
-69, 0, 0, 0, 0, 0, 0, -69, -69, -69, 0, 0, -69, -69, -69, -69, -70, 0, 0, -70, 0, 0, 0, 0, -70, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -70, 0, -70,
-70, 0, 0, 0, 0, 0, 0, -70, -70, -70, 0, 0, -70, -70, -70, -70, -115, 0, 0, -115, 0, 0, 0, 0, -115, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -115, 0,
-115, -115, 0, 0, 0, 0, 0, 0, -115, -115, -115, 0, 0, -115, -115, -115, -115,
-60, 0, 0, -60, 0, 0, 0, 0, -60, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -60, 0, -60,
-60, 0, 0, 0, 0, 0, 0, -60, -60, -60, 0, 0, -60, -60, -60, -60, -61, 0, 0, -61, 0, 0, 0, 0, -61, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -61, 0, -61,
-61, 0, 0, 0, 0, 0, 0, -61, -61, -61, 0, 0, -61, -61, -61, -61, -90, 0, 0, -90, 0, 0, 0, 0, -90, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -90, 0, -90,
-90, 0, 0, 0, 0, 0, 0, -90, -90, -90, 0, 0, -90, -90, -90, -90, -62, 0, 0, -62, 0, 0, 0, 0, -62, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -62, 0, -62,
-62, 0, 0, 0, 0, 0, 0, -62, -62, -62, 0, 0, -62, -62, -62, -62, -118, 0, 0, -118, 0, 0, 0, 0, -118, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -118, 0,
-118, -118, 0, 0, 0, 0, 0, 0, -118, -118, -118, 0, 0, -118, -118, -118, -118,
-83, 0, 0, -83, 0, 0, 0, 0, -83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -83, 0, -83,
-83, 0, 0, 0, 0, 0, 0, -83, -83, -83, 0, 0, -83, -83, -83, -83, -119, 0, 0, -119, 0, 0, 0, 0, -119, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -119, 0,
-119, -119, 0, 0, 0, 0, 0, 0, -119, -119, -119, 0, 0, -119, -119, -119, -119,
-84, 0, 0, -84, 0, 0, 0, 0, -84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -84, 0, -84,
-84, 0, 0, 0, 0, 0, 0, -84, -84, -84, 0, 0, -84, -84, -84, -84, -87, 0, 0, -87, 0, 0, 0, 0, -87, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -87, 0, -87,
-87, 0, 0, 0, 0, 0, 0, -87, -87, -87, 0, 0, -87, -87, -87, -87, -120, 0, 0, -120, 0, 0, 0, 0, -120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -120, 0,
-120, -120, 0, 0, 0, 0, 0, 0, -120, -120, -120, 0, 0, -120, -120, -120, -120,
-86, 0, 0, -86, 0, 0, 0, 0, -86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -86, 0, -86,
-86, 0, 0, 0, 0, 0, 0, -86, -86, -86, 0, 0, -86, -86, -86, -86, -151, 0, 0, -151, 0, 0, 0, 0, -151, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -151, 0,
-151, -151, 0, 0, 0, 0, 0, 0, -151, -151, -151, 0, 0, -151, -151, -151, -151,
-58, 0, 0, -58, 0, 0, 0, 0, -58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -58, 0, -58,
-58, 0, 0, 0, 0, 0, 0, -58, -58, -58, 0, 0, -58, -58, -58, -58, 0, 0, 0, 0, 161, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, -32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -134, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, -134, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -135, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, -135, 0, 0, 0, 0, 0, 0, 0, 0, -11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -11, 0, 0, 0, 0, -28, 0, 0, -28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -21, 0, 0, -21, 0, 0, 0, 0, -21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -21, 0, -21,
-21, 0, 0, -21, -21, -21, 0, -21, -21, -21, 0, -21, -21, -21, -21, -21,
0, 0, 0, 0, 165, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -49, 0, 0, 166, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -97, -97, -97, -97, -97, -97, -97, -97, 0, -97, -97, 0, -97, -97, -97, 0, -97, -97, -97,
-97, -97, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -97, -97, -97, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 167, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -101, -101, 0, -101, 0, -101, -101, -101, 0, 0, 0, 0, -101, -101, -101, 0, -101, -101,
-101, 0, -101, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -101, -101, -101, 0, 0, 0, 0,
0, -102, -102, 0, -102, 0, 0, -102, 0, 0, 0, 0, 0, -102, -102, -102, 0, -102, -102, -102, 0,
-102, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -102, -102, -102, 0, 0, 0, 0,
0, -103, -103, 0, -103, 0, 0, -103, 0, 0, 0, 0, 0, -103, 0, 0, 0, -103, 0, 0, 0, -103, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -103, -103, -103, 0, 0, 0, 0, 0, 0, -104, 0, -104, 0, 0, -104, 0, 0, 0, 0, 0, -104, 0, 0, 0, 0, 0, 0, 0, -104, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -104, -104, -104, 0, 0, 0, 0, 0, 0, 0, 0, -105, 0, 0, -105, 0, 0, 0, 0, 0, -105, 0, 0, 0, 0, 0, 0, 0, -105, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -105, -105, -105, 0, 0, 0, 0, 0, -106, -106, 0, -106, -106, -106, -106, -106, 0, 0, -106, 0, -106, -106, -106, 0, -106,
-106, -106, 0, -106, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -106, -106, -106, 0, 0, 0,
0, 0, -39, -39, -39, -39, -39, -39, -39, -39, 0, -39, -39, 0, -39, -39, -39, 0, -39, -39, -39,
-39, -39, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -39, -39, -39, 0, 0, 0, 0,
0, -34, -34, -34, -34, -34, -34, -34, -34, 0, -34, -34, 0, -34, -34, -34, 0, -34, -34, -34,
-34, -34, 0, 42, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -34, -34, -34, 0, 0, 0, 0,
0, -36, -36, -36, -36, -36, -36, -36, -36, 0, -36, -36, 0, -36, -36, -36, 0, -36, -36, -36,
-36, -36, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -36, -36, -36, 0, 0, 0, 0,
0, 0, 0, 0, -51, 0, 0, 169, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -96, -96, -96, -96, -96, -96, -96, -96, 0, -96, -96, 0, -96, -96, -96, 0, -96, -96, -96,
-96, -96, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -96, -96, -96, 0, 0, 0, 0,
-15, 0, 0, -15, -15, 0, 0, 0, -15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -15, 0, -15,
-15, 0, 0, 0, 0, 0, 0, -15, -15, -15, 0, 0, -15, -15, -15, -15, 0, -95, -95, -95, -95, -95, -95, -95, -95, 0, -95, -95, 0, -95, -95, -95, 0, -95, -95, -95,
-95, -95, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -95, -95, -95, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -133, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, -133, 0, 0, 0, 0, -16, 0, 0, -16, -16, 0, 0, 0, -16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -16, 0,
-16, -16, 0, 0, 0, 0, 0, 0, -16, -16, -16, 0, 0, -16, -16, -16, -16, 0, -35, -35, -35, -35, -35, -35, -35, -35, 0, -35, -35, 0, -35, -35, -35, 0, -35, -35, -35,
-35, -35, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -35, -35, -35, 0, 0, 0, 0,
0, -33, -33, -33, -33, -33, -33, -33, -33, 0, -33, -33, 0, -33, -33, -33, 0, -33, -33, -33,
-33, -33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -33, -33, -33, 0, 0, 0, 0,
];
fn __action(state: i16, integer: usize) -> i16 {
__ACTION[(state as usize) * 43 + integer]
}
const __EOF_ACTION: &[i16] = &[
-98, -99, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -116, -75, -160, -72, -76, 0, 0, 0, 0, -68, -113, -41, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -67, 0, -42, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
];
fn __goto(state: i16, nt: usize) -> i16 {
match nt {
6 => 8,
9 => 37,
12 => 10,
15 => 113,
16 => match state {
30 => 155,
_ => 61,
},
17 => match state {
33 => 158,
_ => 62,
},
18 => match state {
8 => 105,
_ => 54,
},
20 => 50,
21 => match state {
24 => 36,
38 => 40,
_ => 35,
},
22 => 63,
23 => match state {
4 => 51,
9 => 108,
35 => 161,
36 => 162,
40 => 169,
41 => 170,
_ => 64,
},
24 => 52,
25 => 65,
26 => 55,
27 => 150,
28 => match state {
31 => 156,
_ => 66,
},
29 => 118,
30 => 136,
31 => match state {
32 => 157,
_ => 67,
},
32 => 127,
33 => 128,
34 => match state {
7 | 10 => 68,
18 => 141,
22 => 145,
23 => 146,
26 => 151,
28 => 153,
37 => 163,
39 => 167,
_ => 143,
},
36 => 69,
37 => 42,
38 => 119,
39 => 120,
40 => 70,
41 => match state {
1 => 46,
_ => 43,
},
43 => 1,
44 => 121,
45 => 122,
46 => 71,
47 => 132,
48 => 134,
49 => 114,
50 => 137,
51 => match state {
29 => 154,
_ => 72,
},
52 => match state {
2 => 3,
5 | 8 => 56,
19 => 142,
21 => 144,
27 => 152,
_ => 73,
},
53 => 129,
54 => 74,
55 => 115,
56 => 75,
57 => 76,
58 => 44,
59 => 47,
60 => 77,
61 => 78,
62 => 79,
63 => 80,
64 => 81,
65 => 82,
66 => 83,
67 => 29,
68 => 4,
69 => 53,
70 => 30,
71 => 31,
72 => 45,
73 => 84,
74 => 32,
75 => 33,
76 => 34,
77 => 85,
78 => 48,
79 => 86,
80 => 87,
81 => 88,
82 => 89,
83 => 90,
84 => 91,
85 => match state {
25 => 148,
_ => 9,
},
86 => 92,
87 => 11,
88 => match state {
10 => 109,
_ => 93,
},
90 => 94,
91 => 12,
92 => 13,
93 => 14,
94 => 15,
95 => 16,
96 => 17,
97 => 138,
98 => 57,
99 => match state {
11 => 111,
34 => 159,
_ => 95,
},
100 => 96,
101 => 97,
_ => 0,
}
}
fn __expected_tokens(__state: i16) -> alloc::vec::Vec<alloc::string::String> {
const __TERMINAL: &[&str] = &[
r###""!""###,
r###""!=""###,
r###""&&""###,
r###""(""###,
r###"")""###,
r###""*""###,
r###""+""###,
r###"",""###,
r###""-""###,
r###""->""###,
r###"".""###,
r###""/""###,
r###"":""###,
r###"";""###,
r###""<""###,
r###""<=""###,
r###""=""###,
r###""==""###,
r###"">""###,
r###"">=""###,
r###""[""###,
r###""]""###,
r###""bool""###,
r###""else""###,
r###""false""###,
r###""fn""###,
r###""for""###,
r###""if""###,
r###""in""###,
r###""int""###,
r###""let""###,
r###""print""###,
r###""return""###,
r###""string""###,
r###""true""###,
r###""while""###,
r###""{""###,
r###""||""###,
r###""}""###,
r###"r#"\"(\\\\.|[^\"\\\\])*\""#"###,
r###"r#"[+-]?[0-9]+[.][0-9]*"#"###,
r###"r#"[0-9]+"#"###,
r###"r#"[a-zA-Z][a-zA-Z0-9_]*"#"###,
];
__TERMINAL
.iter()
.enumerate()
.filter_map(|(index, terminal)| {
let next_state = __action(__state, index);
if next_state == 0 {
None
} else {
Some(alloc::string::ToString::to_string(terminal))
}
})
.collect()
}
pub(crate) struct __StateMachine<'input> {
file_id: FileId,
input: &'input str,
__phantom: core::marker::PhantomData<(&'input ())>,
}
impl<'input> __state_machine::ParserDefinition for __StateMachine<'input> {
type Location = usize;
type Error = &'static str;
type Token = Token<'input>;
type TokenIndex = usize;
type Symbol = __Symbol<'input>;
type Success = Program<'input>;
type StateIndex = i16;
type Action = i16;
type ReduceIndex = i16;
type NonterminalIndex = usize;
#[inline]
fn start_location(&self) -> Self::Location {
Default::default()
}
#[inline]
fn start_state(&self) -> Self::StateIndex {
0
}
#[inline]
fn token_to_index(&self, token: &Self::Token) -> Option<usize> {
__token_to_integer(token, core::marker::PhantomData::<(&())>)
}
#[inline]
fn action(&self, state: i16, integer: usize) -> i16 {
__action(state, integer)
}
#[inline]
fn error_action(&self, state: i16) -> i16 {
__action(state, 43 - 1)
}
#[inline]
fn eof_action(&self, state: i16) -> i16 {
__EOF_ACTION[state as usize]
}
#[inline]
fn goto(&self, state: i16, nt: usize) -> i16 {
__goto(state, nt)
}
fn token_to_symbol(&self, token_index: usize, token: Self::Token) -> Self::Symbol {
__token_to_symbol(token_index, token, core::marker::PhantomData::<(&())>)
}
fn expected_tokens(&self, state: i16) -> alloc::vec::Vec<alloc::string::String> {
__expected_tokens(state)
}
#[inline]
fn uses_error_recovery(&self) -> bool {
false
}
#[inline]
fn error_recovery_symbol(
&self,
recovery: __state_machine::ErrorRecovery<Self>,
) -> Self::Symbol {
panic!("error recovery not enabled for this grammar")
}
fn reduce(
&mut self,
action: i16,
start_location: Option<&Self::Location>,
states: &mut alloc::vec::Vec<i16>,
symbols: &mut alloc::vec::Vec<__state_machine::SymbolTriple<Self>>,
) -> Option<__state_machine::ParseResult<Self>> {
__reduce(
self.file_id,
self.input,
action,
start_location,
states,
symbols,
core::marker::PhantomData::<(&())>,
)
}
fn simulate_reduce(&self, action: i16) -> __state_machine::SimulatedReduce<Self> {
panic!("error recovery not enabled for this grammar")
}
}
fn __token_to_integer<'input>(
__token: &Token<'input>,
_: core::marker::PhantomData<(&'input ())>,
) -> Option<usize> {
match *__token {
Token(4, _) if true => Some(0),
Token(5, _) if true => Some(1),
Token(6, _) if true => Some(2),
Token(7, _) if true => Some(3),
Token(8, _) if true => Some(4),
Token(9, _) if true => Some(5),
Token(10, _) if true => Some(6),
Token(11, _) if true => Some(7),
Token(12, _) if true => Some(8),
Token(13, _) if true => Some(9),
Token(14, _) if true => Some(10),
Token(15, _) if true => Some(11),
Token(16, _) if true => Some(12),
Token(17, _) if true => Some(13),
Token(18, _) if true => Some(14),
Token(19, _) if true => Some(15),
Token(20, _) if true => Some(16),
Token(21, _) if true => Some(17),
Token(22, _) if true => Some(18),
Token(23, _) if true => Some(19),
Token(24, _) if true => Some(20),
Token(25, _) if true => Some(21),
Token(26, _) if true => Some(22),
Token(27, _) if true => Some(23),
Token(28, _) if true => Some(24),
Token(29, _) if true => Some(25),
Token(30, _) if true => Some(26),
Token(31, _) if true => Some(27),
Token(32, _) if true => Some(28),
Token(33, _) if true => Some(29),
Token(34, _) if true => Some(30),
Token(35, _) if true => Some(31),
Token(36, _) if true => Some(32),
Token(37, _) if true => Some(33),
Token(38, _) if true => Some(34),
Token(39, _) if true => Some(35),
Token(40, _) if true => Some(36),
Token(41, _) if true => Some(37),
Token(42, _) if true => Some(38),
Token(0, _) if true => Some(39),
Token(1, _) if true => Some(40),
Token(2, _) if true => Some(41),
Token(3, _) if true => Some(42),
_ => None,
}
}
fn __token_to_symbol<'input>(
__token_index: usize,
__token: Token<'input>,
_: core::marker::PhantomData<(&'input ())>,
) -> __Symbol<'input> {
match __token_index {
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18
| 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34
| 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 => match __token {
Token(4, __tok0)
| Token(5, __tok0)
| Token(6, __tok0)
| Token(7, __tok0)
| Token(8, __tok0)
| Token(9, __tok0)
| Token(10, __tok0)
| Token(11, __tok0)
| Token(12, __tok0)
| Token(13, __tok0)
| Token(14, __tok0)
| Token(15, __tok0)
| Token(16, __tok0)
| Token(17, __tok0)
| Token(18, __tok0)
| Token(19, __tok0)
| Token(20, __tok0)
| Token(21, __tok0)
| Token(22, __tok0)
| Token(23, __tok0)
| Token(24, __tok0)
| Token(25, __tok0)
| Token(26, __tok0)
| Token(27, __tok0)
| Token(28, __tok0)
| Token(29, __tok0)
| Token(30, __tok0)
| Token(31, __tok0)
| Token(32, __tok0)
| Token(33, __tok0)
| Token(34, __tok0)
| Token(35, __tok0)
| Token(36, __tok0)
| Token(37, __tok0)
| Token(38, __tok0)
| Token(39, __tok0)
| Token(40, __tok0)
| Token(41, __tok0)
| Token(42, __tok0)
| Token(0, __tok0)
| Token(1, __tok0)
| Token(2, __tok0)
| Token(3, __tok0)
if true =>
{
__Symbol::Variant0(__tok0)
}
_ => unreachable!(),
},
_ => unreachable!(),
}
}
pub struct ProgramParser {
builder: __lalrpop_util::lexer::MatcherBuilder,
_priv: (),
}
impl ProgramParser {
pub fn new() -> ProgramParser {
let __builder = super::__intern_token::new_builder();
ProgramParser {
builder: __builder,
_priv: (),
}
}
#[allow(dead_code)]
pub fn parse<'input>(
&self,
file_id: FileId,
input: &'input str,
) -> Result<Program<'input>, __lalrpop_util::ParseError<usize, Token<'input>, &'static str>>
{
let mut __tokens = self.builder.matcher(input);
__state_machine::Parser::drive(
__StateMachine {
file_id,
input,
__phantom: core::marker::PhantomData::<(&())>,
},
__tokens,
)
}
}
pub(crate) fn __reduce<'input>(
file_id: FileId,
input: &'input str,
__action: i16,
__lookahead_start: Option<&usize>,
__states: &mut alloc::vec::Vec<i16>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> Option<
Result<Program<'input>, __lalrpop_util::ParseError<usize, Token<'input>, &'static str>>,
> {
let (__pop_states, __nonterminal) = match __action {
0 => __reduce0(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
1 => __reduce1(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
2 => __reduce2(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
3 => __reduce3(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
4 => __reduce4(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
5 => __reduce5(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
6 => __reduce6(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
7 => __reduce7(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
8 => __reduce8(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
9 => __reduce9(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
10 => __reduce10(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
11 => __reduce11(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
12 => __reduce12(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
13 => __reduce13(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
14 => __reduce14(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
15 => __reduce15(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
16 => __reduce16(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
17 => __reduce17(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
18 => __reduce18(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
19 => __reduce19(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
20 => __reduce20(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
21 => __reduce21(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
22 => __reduce22(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
23 => __reduce23(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
24 => __reduce24(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
25 => __reduce25(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
26 => __reduce26(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
27 => __reduce27(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
28 => __reduce28(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
29 => __reduce29(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
30 => __reduce30(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
31 => __reduce31(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
32 => __reduce32(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
33 => __reduce33(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
34 => __reduce34(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
35 => __reduce35(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
36 => __reduce36(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
37 => __reduce37(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
38 => __reduce38(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
39 => __reduce39(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
40 => __reduce40(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
41 => __reduce41(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
42 => __reduce42(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
43 => __reduce43(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
44 => __reduce44(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
45 => __reduce45(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
46 => __reduce46(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
47 => __reduce47(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
48 => __reduce48(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
49 => __reduce49(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
50 => __reduce50(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
51 => __reduce51(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
52 => __reduce52(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
53 => __reduce53(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
54 => __reduce54(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
55 => __reduce55(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
56 => __reduce56(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
57 => __reduce57(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
58 => __reduce58(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
59 => __reduce59(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
60 => __reduce60(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
61 => __reduce61(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
62 => __reduce62(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
63 => __reduce63(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
64 => __reduce64(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
65 => __reduce65(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
66 => __reduce66(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
67 => __reduce67(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
68 => __reduce68(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
69 => __reduce69(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
70 => __reduce70(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
71 => __reduce71(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
72 => __reduce72(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
73 => __reduce73(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
74 => __reduce74(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
75 => __reduce75(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
76 => __reduce76(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
77 => __reduce77(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
78 => __reduce78(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
79 => __reduce79(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
80 => __reduce80(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
81 => __reduce81(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
82 => __reduce82(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
83 => __reduce83(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
84 => __reduce84(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
85 => __reduce85(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
86 => __reduce86(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
87 => __reduce87(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
88 => __reduce88(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
89 => __reduce89(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
90 => __reduce90(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
91 => __reduce91(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
92 => __reduce92(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
93 => __reduce93(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
94 => __reduce94(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
95 => __reduce95(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
96 => __reduce96(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
97 => __reduce97(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
98 => __reduce98(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
99 => __reduce99(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
100 => __reduce100(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
101 => __reduce101(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
102 => __reduce102(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
103 => __reduce103(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
104 => __reduce104(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
105 => __reduce105(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
106 => __reduce106(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
107 => __reduce107(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
108 => __reduce108(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
109 => __reduce109(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
110 => __reduce110(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
111 => __reduce111(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
112 => __reduce112(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
113 => __reduce113(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
114 => __reduce114(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
115 => __reduce115(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
116 => __reduce116(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
117 => __reduce117(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
118 => __reduce118(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
119 => __reduce119(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
120 => __reduce120(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
121 => __reduce121(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
122 => __reduce122(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
123 => __reduce123(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
124 => __reduce124(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
125 => __reduce125(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
126 => __reduce126(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
127 => __reduce127(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
128 => __reduce128(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
129 => __reduce129(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
130 => __reduce130(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
131 => __reduce131(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
132 => __reduce132(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
133 => __reduce133(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
134 => __reduce134(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
135 => __reduce135(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
136 => __reduce136(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
137 => __reduce137(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
138 => __reduce138(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
139 => __reduce139(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
140 => __reduce140(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
141 => __reduce141(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
142 => __reduce142(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
143 => __reduce143(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
144 => __reduce144(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
145 => __reduce145(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
146 => __reduce146(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
147 => __reduce147(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
148 => __reduce148(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
149 => __reduce149(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
150 => __reduce150(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
151 => __reduce151(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
152 => __reduce152(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
153 => __reduce153(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
154 => __reduce154(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
155 => __reduce155(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
156 => __reduce156(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
157 => __reduce157(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
158 => __reduce158(
file_id,
input,
__lookahead_start,
__symbols,
core::marker::PhantomData::<(&())>,
),
159 => {
let __sym0 = __pop_Variant27(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action0(file_id, input, __sym0);
return Some(Ok(__nt));
}
_ => panic!("invalid action code {}", __action),
};
let __states_len = __states.len();
__states.truncate(__states_len - __pop_states);
let __state = *__states.last().unwrap();
let __next_state = __goto(__state, __nonterminal);
__states.push(__next_state);
None
}
#[inline(never)]
fn __symbol_type_mismatch() -> ! {
panic!("symbol type mismatch")
}
fn __pop_Variant5<'input>(
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
) -> (usize, Arg<'input>, usize) {
match __symbols.pop() {
Some((__l, __Symbol::Variant5(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch(),
}
}
fn __pop_Variant12<'input>(
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
) -> (usize, BinOp, usize) {
match __symbols.pop() {
Some((__l, __Symbol::Variant12(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch(),
}
}
fn __pop_Variant15<'input>(
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
) -> (usize, Box<Expr<'input>>, usize) {
match __symbols.pop() {
Some((__l, __Symbol::Variant15(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch(),
}
}
fn __pop_Variant7<'input>(
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
) -> (usize, Expr<'input>, usize) {
match __symbols.pop() {
Some((__l, __Symbol::Variant7(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch(),
}
}
fn __pop_Variant21<'input>(
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
) -> (usize, Function<'input>, usize) {
match __symbols.pop() {
Some((__l, __Symbol::Variant21(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch(),
}
}
fn __pop_Variant22<'input>(
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
) -> (usize, Item<'input>, usize) {
match __symbols.pop() {
Some((__l, __Symbol::Variant22(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch(),
}
}
fn __pop_Variant24<'input>(
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
) -> (usize, Literal<'input>, usize) {
match __symbols.pop() {
Some((__l, __Symbol::Variant24(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch(),
}
}
fn __pop_Variant27<'input>(
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
) -> (usize, Program<'input>, usize) {
match __symbols.pop() {
Some((__l, __Symbol::Variant27(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch(),
}
}
fn __pop_Variant16<'input>(
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
) -> (usize, RawExpr<'input>, usize) {
match __symbols.pop() {
Some((__l, __Symbol::Variant16(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch(),
}
}
fn __pop_Variant28<'input>(
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
) -> (usize, Spanned<BinOp>, usize) {
match __symbols.pop() {
Some((__l, __Symbol::Variant28(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch(),
}
}
fn __pop_Variant30<'input>(
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
) -> (usize, Spanned<Function<'input>>, usize) {
match __symbols.pop() {
Some((__l, __Symbol::Variant30(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch(),
}
}
fn __pop_Variant31<'input>(
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
) -> (usize, Spanned<Literal<'input>>, usize) {
match __symbols.pop() {
Some((__l, __Symbol::Variant31(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch(),
}
}
fn __pop_Variant26<'input>(
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
) -> (usize, Spanned<RawExpr<'input>>, usize) {
match __symbols.pop() {
Some((__l, __Symbol::Variant26(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch(),
}
}
fn __pop_Variant1<'input>(
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
) -> (usize, Spanned<Type>, usize) {
match __symbols.pop() {
Some((__l, __Symbol::Variant1(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch(),
}
}
fn __pop_Variant32<'input>(
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
) -> (usize, Spanned<UnaryOp>, usize) {
match __symbols.pop() {
Some((__l, __Symbol::Variant32(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch(),
}
}
fn __pop_Variant29<'input>(
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
) -> (usize, Spanned<Vec<Arg<'input>>>, usize) {
match __symbols.pop() {
Some((__l, __Symbol::Variant29(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch(),
}
}
fn __pop_Variant3<'input>(
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
) -> (usize, Spanned<Vec<Stmt<'input>>>, usize) {
match __symbols.pop() {
Some((__l, __Symbol::Variant3(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch(),
}
}
fn __pop_Variant25<'input>(
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
) -> (usize, Spanned<&'input str>, usize) {
match __symbols.pop() {
Some((__l, __Symbol::Variant25(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch(),
}
}
fn __pop_Variant9<'input>(
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
) -> (usize, Stmt<'input>, usize) {
match __symbols.pop() {
Some((__l, __Symbol::Variant9(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch(),
}
}
fn __pop_Variant34<'input>(
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
) -> (usize, Type, usize) {
match __symbols.pop() {
Some((__l, __Symbol::Variant34(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch(),
}
}
fn __pop_Variant35<'input>(
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
) -> (usize, UnaryOp, usize) {
match __symbols.pop() {
Some((__l, __Symbol::Variant35(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch(),
}
}
fn __pop_Variant14<'input>(
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
) -> (usize, Vec<Arg<'input>>, usize) {
match __symbols.pop() {
Some((__l, __Symbol::Variant14(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch(),
}
}
fn __pop_Variant19<'input>(
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
) -> (usize, Vec<Expr<'input>>, usize) {
match __symbols.pop() {
Some((__l, __Symbol::Variant19(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch(),
}
}
fn __pop_Variant17<'input>(
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
) -> (usize, Vec<Stmt<'input>>, usize) {
match __symbols.pop() {
Some((__l, __Symbol::Variant17(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch(),
}
}
fn __pop_Variant6<'input>(
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
) -> (usize, alloc::vec::Vec<Arg<'input>>, usize) {
match __symbols.pop() {
Some((__l, __Symbol::Variant6(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch(),
}
}
fn __pop_Variant8<'input>(
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
) -> (usize, alloc::vec::Vec<Expr<'input>>, usize) {
match __symbols.pop() {
Some((__l, __Symbol::Variant8(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch(),
}
}
fn __pop_Variant23<'input>(
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
) -> (usize, alloc::vec::Vec<Item<'input>>, usize) {
match __symbols.pop() {
Some((__l, __Symbol::Variant23(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch(),
}
}
fn __pop_Variant10<'input>(
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
) -> (usize, alloc::vec::Vec<Stmt<'input>>, usize) {
match __symbols.pop() {
Some((__l, __Symbol::Variant10(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch(),
}
}
fn __pop_Variant18<'input>(
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
) -> (usize, bool, usize) {
match __symbols.pop() {
Some((__l, __Symbol::Variant18(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch(),
}
}
fn __pop_Variant13<'input>(
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
) -> (usize, core::option::Option<Arg<'input>>, usize) {
match __symbols.pop() {
Some((__l, __Symbol::Variant13(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch(),
}
}
fn __pop_Variant20<'input>(
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
) -> (usize, core::option::Option<Expr<'input>>, usize) {
match __symbols.pop() {
Some((__l, __Symbol::Variant20(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch(),
}
}
fn __pop_Variant2<'input>(
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
) -> (usize, core::option::Option<Spanned<Type>>, usize) {
match __symbols.pop() {
Some((__l, __Symbol::Variant2(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch(),
}
}
fn __pop_Variant4<'input>(
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
) -> (
usize,
core::option::Option<Spanned<Vec<Stmt<'input>>>>,
usize,
) {
match __symbols.pop() {
Some((__l, __Symbol::Variant4(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch(),
}
}
fn __pop_Variant33<'input>(
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
) -> (usize, core::option::Option<Stmt<'input>>, usize) {
match __symbols.pop() {
Some((__l, __Symbol::Variant33(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch(),
}
}
fn __pop_Variant11<'input>(
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
) -> (usize, usize, usize) {
match __symbols.pop() {
Some((__l, __Symbol::Variant11(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch(),
}
}
fn __pop_Variant0<'input>(
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
) -> (usize, &'input str, usize) {
match __symbols.pop() {
Some((__l, __Symbol::Variant0(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch(),
}
}
pub(crate) fn __reduce0<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant1(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym1.2.clone();
let __nt = super::__action99(file_id, input, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant1(__nt), __end));
(2, 0)
}
pub(crate) fn __reduce1<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant1(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym1.2.clone();
let __nt = super::__action148(file_id, input, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant2(__nt), __end));
(2, 1)
}
pub(crate) fn __reduce2<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __start = __lookahead_start
.cloned()
.or_else(|| __symbols.last().map(|s| s.2.clone()))
.unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action98(file_id, input, &__start, &__end);
__symbols.push((__start, __Symbol::Variant2(__nt), __end));
(0, 1)
}
pub(crate) fn __reduce3<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant3(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym1.2.clone();
let __nt = super::__action76(file_id, input, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant3(__nt), __end));
(2, 2)
}
pub(crate) fn __reduce4<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant3(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym1.2.clone();
let __nt = super::__action151(file_id, input, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant4(__nt), __end));
(2, 3)
}
pub(crate) fn __reduce5<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __start = __lookahead_start
.cloned()
.or_else(|| __symbols.last().map(|s| s.2.clone()))
.unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action75(file_id, input, &__start, &__end);
__symbols.push((__start, __Symbol::Variant4(__nt), __end));
(0, 3)
}
pub(crate) fn __reduce6<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0.clone();
let __end = __sym1.2.clone();
let __nt = super::__action111(file_id, input, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(2, 4)
}
pub(crate) fn __reduce7<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __start = __lookahead_start
.cloned()
.or_else(|| __symbols.last().map(|s| s.2.clone()))
.unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action109(file_id, input, &__start, &__end);
__symbols.push((__start, __Symbol::Variant6(__nt), __end));
(0, 5)
}
pub(crate) fn __reduce8<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant6(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action110(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant6(__nt), __end));
(1, 5)
}
pub(crate) fn __reduce9<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0.clone();
let __end = __sym1.2.clone();
let __nt = super::__action154(file_id, input, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant6(__nt), __end));
(2, 6)
}
pub(crate) fn __reduce10<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant0(__symbols);
let __sym1 = __pop_Variant5(__symbols);
let __sym0 = __pop_Variant6(__symbols);
let __start = __sym0.0.clone();
let __end = __sym2.2.clone();
let __nt = super::__action155(file_id, input, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant6(__nt), __end));
(3, 6)
}
pub(crate) fn __reduce11<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant7(__symbols);
let __start = __sym0.0.clone();
let __end = __sym1.2.clone();
let __nt = super::__action133(file_id, input, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant7(__nt), __end));
(2, 7)
}
pub(crate) fn __reduce12<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __start = __lookahead_start
.cloned()
.or_else(|| __symbols.last().map(|s| s.2.clone()))
.unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action131(file_id, input, &__start, &__end);
__symbols.push((__start, __Symbol::Variant8(__nt), __end));
(0, 8)
}
pub(crate) fn __reduce13<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant8(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action132(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant8(__nt), __end));
(1, 8)
}
pub(crate) fn __reduce14<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant7(__symbols);
let __start = __sym0.0.clone();
let __end = __sym1.2.clone();
let __nt = super::__action158(file_id, input, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant8(__nt), __end));
(2, 9)
}
pub(crate) fn __reduce15<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant0(__symbols);
let __sym1 = __pop_Variant7(__symbols);
let __sym0 = __pop_Variant8(__symbols);
let __start = __sym0.0.clone();
let __end = __sym2.2.clone();
let __nt = super::__action159(file_id, input, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant8(__nt), __end));
(3, 9)
}
pub(crate) fn __reduce16<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant9(__symbols);
let __start = __sym0.0.clone();
let __end = __sym1.2.clone();
let __nt = super::__action116(file_id, input, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant9(__nt), __end));
(2, 10)
}
pub(crate) fn __reduce17<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __start = __lookahead_start
.cloned()
.or_else(|| __symbols.last().map(|s| s.2.clone()))
.unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action114(file_id, input, &__start, &__end);
__symbols.push((__start, __Symbol::Variant10(__nt), __end));
(0, 11)
}
pub(crate) fn __reduce18<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant10(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action115(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant10(__nt), __end));
(1, 11)
}
pub(crate) fn __reduce19<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant9(__symbols);
let __start = __sym0.0.clone();
let __end = __sym1.2.clone();
let __nt = super::__action162(file_id, input, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant10(__nt), __end));
(2, 12)
}
pub(crate) fn __reduce20<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant0(__symbols);
let __sym1 = __pop_Variant9(__symbols);
let __sym0 = __pop_Variant10(__symbols);
let __start = __sym0.0.clone();
let __end = __sym2.2.clone();
let __nt = super::__action163(file_id, input, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant10(__nt), __end));
(3, 12)
}
pub(crate) fn __reduce21<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __start = __lookahead_start
.cloned()
.or_else(|| __symbols.last().map(|s| s.2.clone()))
.unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action135(file_id, input, &__start, &__end);
__symbols.push((__start, __Symbol::Variant11(__nt), __end));
(0, 13)
}
pub(crate) fn __reduce22<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __start = __lookahead_start
.cloned()
.or_else(|| __symbols.last().map(|s| s.2.clone()))
.unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action134(file_id, input, &__start, &__end);
__symbols.push((__start, __Symbol::Variant11(__nt), __end));
(0, 14)
}
pub(crate) fn __reduce23<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant12(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action67(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant12(__nt), __end));
(1, 15)
}
pub(crate) fn __reduce24<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant12(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action68(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant12(__nt), __end));
(1, 15)
}
pub(crate) fn __reduce25<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant7(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action23(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant7(__nt), __end));
(1, 16)
}
pub(crate) fn __reduce26<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant7(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action20(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant7(__nt), __end));
(1, 17)
}
pub(crate) fn __reduce27<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant1(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant25(__symbols);
let __start = __sym0.0.clone();
let __end = __sym2.2.clone();
let __nt = super::__action5(file_id, input, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(3, 18)
}
pub(crate) fn __reduce28<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action107(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant13(__nt), __end));
(1, 19)
}
pub(crate) fn __reduce29<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __start = __lookahead_start
.cloned()
.or_else(|| __symbols.last().map(|s| s.2.clone()))
.unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action108(file_id, input, &__start, &__end);
__symbols.push((__start, __Symbol::Variant13(__nt), __end));
(0, 19)
}
pub(crate) fn __reduce30<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant0(__symbols);
let __sym1 = __pop_Variant14(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym2.2.clone();
let __nt = super::__action4(file_id, input, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant14(__nt), __end));
(3, 20)
}
pub(crate) fn __reduce31<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant7(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action18(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant15(__nt), __end));
(1, 21)
}
pub(crate) fn __reduce32<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
assert!(__symbols.len() >= 5);
let __sym4 = __pop_Variant3(__symbols);
let __sym3 = __pop_Variant0(__symbols);
let __sym2 = __pop_Variant3(__symbols);
let __sym1 = __pop_Variant15(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym4.2.clone();
let __nt = super::__action152(file_id, input, __sym0, __sym1, __sym2, __sym3, __sym4);
__symbols.push((__start, __Symbol::Variant16(__nt), __end));
(5, 22)
}
pub(crate) fn __reduce33<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant3(__symbols);
let __sym1 = __pop_Variant15(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym2.2.clone();
let __nt = super::__action153(file_id, input, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant16(__nt), __end));
(3, 22)
}
pub(crate) fn __reduce34<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
assert!(__symbols.len() >= 5);
let __sym4 = __pop_Variant3(__symbols);
let __sym3 = __pop_Variant15(__symbols);
let __sym2 = __pop_Variant0(__symbols);
let __sym1 = __pop_Variant25(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym4.2.clone();
let __nt = super::__action34(file_id, input, __sym0, __sym1, __sym2, __sym3, __sym4);
__symbols.push((__start, __Symbol::Variant16(__nt), __end));
(5, 22)
}
pub(crate) fn __reduce35<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant3(__symbols);
let __sym1 = __pop_Variant15(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym2.2.clone();
let __nt = super::__action35(file_id, input, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant16(__nt), __end));
(3, 22)
}
pub(crate) fn __reduce36<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant25(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action36(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant16(__nt), __end));
(1, 22)
}
pub(crate) fn __reduce37<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant3(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action37(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant16(__nt), __end));
(1, 22)
}
pub(crate) fn __reduce38<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant0(__symbols);
let __sym1 = __pop_Variant7(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym2.2.clone();
let __nt = super::__action38(file_id, input, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant16(__nt), __end));
(3, 22)
}
pub(crate) fn __reduce39<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant31(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action39(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant16(__nt), __end));
(1, 22)
}
pub(crate) fn __reduce40<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant3(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action11(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant3(__nt), __end));
(1, 23)
}
pub(crate) fn __reduce41<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant0(__symbols);
let __sym1 = __pop_Variant17(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym2.2.clone();
let __nt = super::__action12(file_id, input, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant17(__nt), __end));
(3, 24)
}
pub(crate) fn __reduce42<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action47(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant18(__nt), __end));
(1, 25)
}
pub(crate) fn __reduce43<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action48(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant18(__nt), __end));
(1, 25)
}
pub(crate) fn __reduce44<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action208(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant14(__nt), __end));
(1, 26)
}
pub(crate) fn __reduce45<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __start = __lookahead_start
.cloned()
.or_else(|| __symbols.last().map(|s| s.2.clone()))
.unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action209(file_id, input, &__start, &__end);
__symbols.push((__start, __Symbol::Variant14(__nt), __end));
(0, 26)
}
pub(crate) fn __reduce46<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant5(__symbols);
let __sym0 = __pop_Variant6(__symbols);
let __start = __sym0.0.clone();
let __end = __sym1.2.clone();
let __nt = super::__action210(file_id, input, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant14(__nt), __end));
(2, 26)
}
pub(crate) fn __reduce47<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant6(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action211(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant14(__nt), __end));
(1, 26)
}
pub(crate) fn __reduce48<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant7(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action212(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant19(__nt), __end));
(1, 27)
}
pub(crate) fn __reduce49<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __start = __lookahead_start
.cloned()
.or_else(|| __symbols.last().map(|s| s.2.clone()))
.unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action213(file_id, input, &__start, &__end);
__symbols.push((__start, __Symbol::Variant19(__nt), __end));
(0, 27)
}
pub(crate) fn __reduce50<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant7(__symbols);
let __sym0 = __pop_Variant8(__symbols);
let __start = __sym0.0.clone();
let __end = __sym1.2.clone();
let __nt = super::__action214(file_id, input, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant19(__nt), __end));
(2, 27)
}
pub(crate) fn __reduce51<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant8(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action215(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant19(__nt), __end));
(1, 27)
}
pub(crate) fn __reduce52<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant7(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action22(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant7(__nt), __end));
(1, 28)
}
pub(crate) fn __reduce53<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant12(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action63(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant12(__nt), __end));
(1, 29)
}
pub(crate) fn __reduce54<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant12(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action64(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant12(__nt), __end));
(1, 29)
}
pub(crate) fn __reduce55<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant12(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action65(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant12(__nt), __end));
(1, 29)
}
pub(crate) fn __reduce56<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant12(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action66(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant12(__nt), __end));
(1, 29)
}
pub(crate) fn __reduce57<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action60(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant12(__nt), __end));
(1, 30)
}
pub(crate) fn __reduce58<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant7(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action21(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant7(__nt), __end));
(1, 31)
}
pub(crate) fn __reduce59<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant12(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action61(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant12(__nt), __end));
(1, 32)
}
pub(crate) fn __reduce60<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant12(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action62(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant12(__nt), __end));
(1, 32)
}
pub(crate) fn __reduce61<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action51(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant12(__nt), __end));
(1, 33)
}
pub(crate) fn __reduce62<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant7(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action17(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant7(__nt), __end));
(1, 34)
}
pub(crate) fn __reduce63<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant7(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action129(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant20(__nt), __end));
(1, 35)
}
pub(crate) fn __reduce64<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __start = __lookahead_start
.cloned()
.or_else(|| __symbols.last().map(|s| s.2.clone()))
.unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action130(file_id, input, &__start, &__end);
__symbols.push((__start, __Symbol::Variant20(__nt), __end));
(0, 35)
}
pub(crate) fn __reduce65<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action45(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant0(__nt), __end));
(1, 36)
}
pub(crate) fn __reduce66<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
assert!(__symbols.len() >= 6);
let __sym5 = __pop_Variant3(__symbols);
let __sym4 = __pop_Variant1(__symbols);
let __sym3 = __pop_Variant0(__symbols);
let __sym2 = __pop_Variant29(__symbols);
let __sym1 = __pop_Variant25(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym5.2.clone();
let __nt = super::__action149(
file_id, input, __sym0, __sym1, __sym2, __sym3, __sym4, __sym5,
);
__symbols.push((__start, __Symbol::Variant21(__nt), __end));
(6, 37)
}
pub(crate) fn __reduce67<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
assert!(__symbols.len() >= 4);
let __sym3 = __pop_Variant3(__symbols);
let __sym2 = __pop_Variant29(__symbols);
let __sym1 = __pop_Variant25(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym3.2.clone();
let __nt = super::__action150(file_id, input, __sym0, __sym1, __sym2, __sym3);
__symbols.push((__start, __Symbol::Variant21(__nt), __end));
(4, 37)
}
pub(crate) fn __reduce68<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action54(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant12(__nt), __end));
(1, 38)
}
pub(crate) fn __reduce69<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action56(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant12(__nt), __end));
(1, 39)
}
pub(crate) fn __reduce70<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action46(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant0(__nt), __end));
(1, 40)
}
pub(crate) fn __reduce71<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant30(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action2(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant22(__nt), __end));
(1, 41)
}
pub(crate) fn __reduce72<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __start = __lookahead_start
.cloned()
.or_else(|| __symbols.last().map(|s| s.2.clone()))
.unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action103(file_id, input, &__start, &__end);
__symbols.push((__start, __Symbol::Variant23(__nt), __end));
(0, 42)
}
pub(crate) fn __reduce73<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant23(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action104(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant23(__nt), __end));
(1, 42)
}
pub(crate) fn __reduce74<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant22(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action105(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant23(__nt), __end));
(1, 43)
}
pub(crate) fn __reduce75<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant22(__symbols);
let __sym0 = __pop_Variant23(__symbols);
let __start = __sym0.0.clone();
let __end = __sym1.2.clone();
let __nt = super::__action106(file_id, input, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant23(__nt), __end));
(2, 43)
}
pub(crate) fn __reduce76<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action53(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant12(__nt), __end));
(1, 44)
}
pub(crate) fn __reduce77<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action55(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant12(__nt), __end));
(1, 45)
}
pub(crate) fn __reduce78<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action40(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant24(__nt), __end));
(1, 46)
}
pub(crate) fn __reduce79<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action41(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant24(__nt), __end));
(1, 46)
}
pub(crate) fn __reduce80<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action42(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant24(__nt), __end));
(1, 46)
}
pub(crate) fn __reduce81<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant18(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action43(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant24(__nt), __end));
(1, 46)
}
pub(crate) fn __reduce82<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action50(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant12(__nt), __end));
(1, 47)
}
pub(crate) fn __reduce83<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action49(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant12(__nt), __end));
(1, 48)
}
pub(crate) fn __reduce84<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action58(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant12(__nt), __end));
(1, 49)
}
pub(crate) fn __reduce85<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant12(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action69(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant12(__nt), __end));
(1, 50)
}
pub(crate) fn __reduce86<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant12(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action70(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant12(__nt), __end));
(1, 50)
}
pub(crate) fn __reduce87<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant7(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action24(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant7(__nt), __end));
(1, 51)
}
pub(crate) fn __reduce88<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant25(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action9(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant25(__nt), __end));
(1, 52)
}
pub(crate) fn __reduce89<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action52(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant12(__nt), __end));
(1, 53)
}
pub(crate) fn __reduce90<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant7(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action19(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant7(__nt), __end));
(1, 54)
}
pub(crate) fn __reduce91<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action57(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant12(__nt), __end));
(1, 55)
}
pub(crate) fn __reduce92<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant26(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action28(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant26(__nt), __end));
(1, 56)
}
pub(crate) fn __reduce93<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant16(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action29(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant16(__nt), __end));
(1, 57)
}
pub(crate) fn __reduce94<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
assert!(__symbols.len() >= 4);
let __sym3 = __pop_Variant0(__symbols);
let __sym2 = __pop_Variant7(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant26(__symbols);
let __start = __sym0.0.clone();
let __end = __sym3.2.clone();
let __nt = super::__action30(file_id, input, __sym0, __sym1, __sym2, __sym3);
__symbols.push((__start, __Symbol::Variant16(__nt), __end));
(4, 57)
}
pub(crate) fn __reduce95<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
assert!(__symbols.len() >= 4);
let __sym3 = __pop_Variant0(__symbols);
let __sym2 = __pop_Variant19(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant26(__symbols);
let __start = __sym0.0.clone();
let __end = __sym3.2.clone();
let __nt = super::__action31(file_id, input, __sym0, __sym1, __sym2, __sym3);
__symbols.push((__start, __Symbol::Variant16(__nt), __end));
(4, 57)
}
pub(crate) fn __reduce96<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant25(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant26(__symbols);
let __start = __sym0.0.clone();
let __end = __sym2.2.clone();
let __nt = super::__action32(file_id, input, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant16(__nt), __end));
(3, 57)
}
pub(crate) fn __reduce97<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __start = __lookahead_start
.cloned()
.or_else(|| __symbols.last().map(|s| s.2.clone()))
.unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action216(file_id, input, &__start, &__end);
__symbols.push((__start, __Symbol::Variant27(__nt), __end));
(0, 58)
}
pub(crate) fn __reduce98<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant23(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action217(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant27(__nt), __end));
(1, 58)
}
pub(crate) fn __reduce99<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action10(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant0(__nt), __end));
(1, 59)
}
pub(crate) fn __reduce100<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant7(__symbols);
let __sym1 = __pop_Variant28(__symbols);
let __sym0 = __pop_Variant7(__symbols);
let __start = __sym0.0.clone();
let __end = __sym2.2.clone();
let __nt = super::__action126(file_id, input, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant16(__nt), __end));
(3, 60)
}
pub(crate) fn __reduce101<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant7(__symbols);
let __sym1 = __pop_Variant28(__symbols);
let __sym0 = __pop_Variant7(__symbols);
let __start = __sym0.0.clone();
let __end = __sym2.2.clone();
let __nt = super::__action124(file_id, input, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant16(__nt), __end));
(3, 61)
}
pub(crate) fn __reduce102<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant7(__symbols);
let __sym1 = __pop_Variant28(__symbols);
let __sym0 = __pop_Variant7(__symbols);
let __start = __sym0.0.clone();
let __end = __sym2.2.clone();
let __nt = super::__action122(file_id, input, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant16(__nt), __end));
(3, 62)
}
pub(crate) fn __reduce103<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant7(__symbols);
let __sym1 = __pop_Variant28(__symbols);
let __sym0 = __pop_Variant7(__symbols);
let __start = __sym0.0.clone();
let __end = __sym2.2.clone();
let __nt = super::__action120(file_id, input, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant16(__nt), __end));
(3, 63)
}
pub(crate) fn __reduce104<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant7(__symbols);
let __sym1 = __pop_Variant28(__symbols);
let __sym0 = __pop_Variant7(__symbols);
let __start = __sym0.0.clone();
let __end = __sym2.2.clone();
let __nt = super::__action118(file_id, input, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant16(__nt), __end));
(3, 64)
}
pub(crate) fn __reduce105<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant26(__symbols);
let __sym1 = __pop_Variant28(__symbols);
let __sym0 = __pop_Variant7(__symbols);
let __start = __sym0.0.clone();
let __end = __sym2.2.clone();
let __nt = super::__action128(file_id, input, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant16(__nt), __end));
(3, 65)
}
pub(crate) fn __reduce106<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant9(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action218(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant17(__nt), __end));
(1, 66)
}
pub(crate) fn __reduce107<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __start = __lookahead_start
.cloned()
.or_else(|| __symbols.last().map(|s| s.2.clone()))
.unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action219(file_id, input, &__start, &__end);
__symbols.push((__start, __Symbol::Variant17(__nt), __end));
(0, 66)
}
pub(crate) fn __reduce108<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant9(__symbols);
let __sym0 = __pop_Variant10(__symbols);
let __start = __sym0.0.clone();
let __end = __sym1.2.clone();
let __nt = super::__action220(file_id, input, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant17(__nt), __end));
(2, 66)
}
pub(crate) fn __reduce109<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant10(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action221(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant17(__nt), __end));
(1, 66)
}
pub(crate) fn __reduce110<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant12(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action187(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant28(__nt), __end));
(1, 67)
}
pub(crate) fn __reduce111<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant14(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action188(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant29(__nt), __end));
(1, 68)
}
pub(crate) fn __reduce112<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant17(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action189(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant3(__nt), __end));
(1, 69)
}
pub(crate) fn __reduce113<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant12(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action190(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant28(__nt), __end));
(1, 70)
}
pub(crate) fn __reduce114<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant12(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action191(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant28(__nt), __end));
(1, 71)
}
pub(crate) fn __reduce115<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant21(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action192(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant30(__nt), __end));
(1, 72)
}
pub(crate) fn __reduce116<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant24(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action193(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant31(__nt), __end));
(1, 73)
}
pub(crate) fn __reduce117<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant12(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action194(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant28(__nt), __end));
(1, 74)
}
pub(crate) fn __reduce118<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant12(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action195(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant28(__nt), __end));
(1, 75)
}
pub(crate) fn __reduce119<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant12(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action196(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant28(__nt), __end));
(1, 76)
}
pub(crate) fn __reduce120<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant16(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action197(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant26(__nt), __end));
(1, 77)
}
pub(crate) fn __reduce121<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action198(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant25(__nt), __end));
(1, 78)
}
pub(crate) fn __reduce122<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant16(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action199(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant26(__nt), __end));
(1, 79)
}
pub(crate) fn __reduce123<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant16(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action200(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant26(__nt), __end));
(1, 80)
}
pub(crate) fn __reduce124<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant16(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action201(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant26(__nt), __end));
(1, 81)
}
pub(crate) fn __reduce125<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant16(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action202(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant26(__nt), __end));
(1, 82)
}
pub(crate) fn __reduce126<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant16(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action203(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant26(__nt), __end));
(1, 83)
}
pub(crate) fn __reduce127<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant16(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action204(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant26(__nt), __end));
(1, 84)
}
pub(crate) fn __reduce128<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant34(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action205(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant1(__nt), __end));
(1, 85)
}
pub(crate) fn __reduce129<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant16(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action206(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant26(__nt), __end));
(1, 86)
}
pub(crate) fn __reduce130<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant35(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action207(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant32(__nt), __end));
(1, 87)
}
pub(crate) fn __reduce131<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant7(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action13(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant9(__nt), __end));
(1, 88)
}
pub(crate) fn __reduce132<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
assert!(__symbols.len() >= 4);
let __sym3 = __pop_Variant7(__symbols);
let __sym2 = __pop_Variant0(__symbols);
let __sym1 = __pop_Variant25(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym3.2.clone();
let __nt = super::__action14(file_id, input, __sym0, __sym1, __sym2, __sym3);
__symbols.push((__start, __Symbol::Variant9(__nt), __end));
(4, 88)
}
pub(crate) fn __reduce133<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant7(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym1.2.clone();
let __nt = super::__action15(file_id, input, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant9(__nt), __end));
(2, 88)
}
pub(crate) fn __reduce134<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant7(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym1.2.clone();
let __nt = super::__action16(file_id, input, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant9(__nt), __end));
(2, 88)
}
pub(crate) fn __reduce135<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant9(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action112(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant33(__nt), __end));
(1, 89)
}
pub(crate) fn __reduce136<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __start = __lookahead_start
.cloned()
.or_else(|| __symbols.last().map(|s| s.2.clone()))
.unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action113(file_id, input, &__start, &__end);
__symbols.push((__start, __Symbol::Variant33(__nt), __end));
(0, 89)
}
pub(crate) fn __reduce137<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action44(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant0(__nt), __end));
(1, 90)
}
pub(crate) fn __reduce138<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant26(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action83(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant7(__nt), __end));
(1, 91)
}
pub(crate) fn __reduce139<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant7(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action84(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant7(__nt), __end));
(1, 91)
}
pub(crate) fn __reduce140<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant26(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action85(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant7(__nt), __end));
(1, 92)
}
pub(crate) fn __reduce141<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant7(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action86(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant7(__nt), __end));
(1, 92)
}
pub(crate) fn __reduce142<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant26(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action87(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant7(__nt), __end));
(1, 93)
}
pub(crate) fn __reduce143<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant7(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action88(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant7(__nt), __end));
(1, 93)
}
pub(crate) fn __reduce144<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant26(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action89(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant7(__nt), __end));
(1, 94)
}
pub(crate) fn __reduce145<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant7(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action90(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant7(__nt), __end));
(1, 94)
}
pub(crate) fn __reduce146<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant26(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action91(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant7(__nt), __end));
(1, 95)
}
pub(crate) fn __reduce147<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant7(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action92(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant7(__nt), __end));
(1, 95)
}
pub(crate) fn __reduce148<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant26(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action81(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant7(__nt), __end));
(1, 96)
}
pub(crate) fn __reduce149<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant26(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action82(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant7(__nt), __end));
(1, 96)
}
pub(crate) fn __reduce150<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action59(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant12(__nt), __end));
(1, 97)
}
pub(crate) fn __reduce151<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action6(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant34(__nt), __end));
(1, 98)
}
pub(crate) fn __reduce152<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action7(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant34(__nt), __end));
(1, 98)
}
pub(crate) fn __reduce153<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action8(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant34(__nt), __end));
(1, 98)
}
pub(crate) fn __reduce154<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant26(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action25(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant26(__nt), __end));
(1, 99)
}
pub(crate) fn __reduce155<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant16(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action26(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant16(__nt), __end));
(1, 100)
}
pub(crate) fn __reduce156<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant26(__symbols);
let __sym0 = __pop_Variant32(__symbols);
let __start = __sym0.0.clone();
let __end = __sym1.2.clone();
let __nt = super::__action27(file_id, input, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant16(__nt), __end));
(2, 100)
}
pub(crate) fn __reduce157<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action71(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant35(__nt), __end));
(1, 101)
}
pub(crate) fn __reduce158<'input>(
file_id: FileId,
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize, __Symbol<'input>, usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize) {
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action72(file_id, input, __sym0);
__symbols.push((__start, __Symbol::Variant35(__nt), __end));
(1, 101)
}
}
pub use self::__parse__Program::ProgramParser;
mod __intern_token {
#![allow(unused_imports)]
use crate::ast::*;
use crate::diagnostics::FileId;
#[allow(unused_extern_crates)]
extern crate lalrpop_util as __lalrpop_util;
#[allow(unused_imports)]
use self::__lalrpop_util::state_machine as __state_machine;
extern crate alloc;
extern crate core;
pub fn new_builder() -> __lalrpop_util::lexer::MatcherBuilder {
let __strs: &[(&str, bool)] = &[
(
"^(\"(\\\\[\u{0}-\t\u{b}-\u{10ffff}]|[\u{0}-!\\#-\\[\\]-\u{10ffff}])*\")",
false,
),
("^([\\+\\-]?[0-9]+[\\.][0-9]*)", false),
("^([0-9]+)", false),
("^([A-Za-z][0-9A-Z_a-z]*)", false),
("^(!)", false),
("^(!=)", false),
("^(\\&\\&)", false),
("^(\\()", false),
("^(\\))", false),
("^(\\*)", false),
("^(\\+)", false),
("^(,)", false),
("^(\\-)", false),
("^(\\->)", false),
("^(\\.)", false),
("^(/)", false),
("^(:)", false),
("^(;)", false),
("^(<)", false),
("^(<=)", false),
("^(=)", false),
("^(==)", false),
("^(>)", false),
("^(>=)", false),
("^(\\[)", false),
("^(\\])", false),
("^(bool)", false),
("^(else)", false),
("^(false)", false),
("^(fn)", false),
("^(for)", false),
("^(if)", false),
("^(in)", false),
("^(int)", false),
("^(let)", false),
("^(print)", false),
("^(return)", false),
("^(string)", false),
("^(true)", false),
("^(while)", false),
("^(\\{)", false),
("^(\\|\\|)", false),
("^(\\})", false),
(r"^(\s*)", true),
];
__lalrpop_util::lexer::MatcherBuilder::new(__strs.iter().copied()).unwrap()
}
}
pub(crate) use self::__lalrpop_util::lexer::Token;
#[allow(unused_variables)]
fn __action0<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, Program<'input>, usize),
) -> Program<'input> {
__0
}
#[allow(unused_variables)]
fn __action1<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, alloc::vec::Vec<Item<'input>>, usize),
) -> Program<'input> {
__0
}
#[allow(unused_variables)]
fn __action2<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, Spanned<Function<'input>>, usize),
) -> Item<'input> {
Item::Function(__0)
}
#[allow(unused_variables)]
fn __action3<'input>(
file_id: FileId,
input: &'input str,
(_, _, _): (usize, &'input str, usize),
(_, name, _): (usize, Spanned<&'input str>, usize),
(_, args, _): (usize, Spanned<Vec<Arg<'input>>>, usize),
(_, ret, _): (usize, core::option::Option<Spanned<Type>>, usize),
(_, body, _): (usize, Spanned<Vec<Stmt<'input>>>, usize),
) -> Function<'input> {
Function {
name: name,
args: args,
ret: ret,
body: body,
}
}
#[allow(unused_variables)]
fn __action4<'input>(
file_id: FileId,
input: &'input str,
(_, _, _): (usize, &'input str, usize),
(_, __0, _): (usize, Vec<Arg<'input>>, usize),
(_, _, _): (usize, &'input str, usize),
) -> Vec<Arg<'input>> {
__0
}
#[allow(unused_variables)]
fn __action5<'input>(
file_id: FileId,
input: &'input str,
(_, name, _): (usize, Spanned<&'input str>, usize),
(_, _, _): (usize, &'input str, usize),
(_, ty, _): (usize, Spanned<Type>, usize),
) -> Arg<'input> {
Arg { name: name, ty: ty }
}
#[allow(unused_variables)]
fn __action6<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, &'input str, usize),
) -> Type {
Type::Int
}
#[allow(unused_variables)]
fn __action7<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, &'input str, usize),
) -> Type {
Type::Bool
}
#[allow(unused_variables)]
fn __action8<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, &'input str, usize),
) -> Type {
Type::String
}
#[allow(unused_variables)]
fn __action9<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, Spanned<&'input str>, usize),
) -> Spanned<&'input str> {
__0
}
#[allow(unused_variables)]
fn __action10<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, &'input str, usize),
) -> &'input str {
__0
}
#[allow(unused_variables)]
fn __action11<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, Spanned<Vec<Stmt<'input>>>, usize),
) -> Spanned<Vec<Stmt<'input>>> {
__0
}
#[allow(unused_variables)]
fn __action12<'input>(
file_id: FileId,
input: &'input str,
(_, _, _): (usize, &'input str, usize),
(_, __0, _): (usize, Vec<Stmt<'input>>, usize),
(_, _, _): (usize, &'input str, usize),
) -> Vec<Stmt<'input>> {
__0
}
#[allow(unused_variables)]
fn __action13<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, Expr<'input>, usize),
) -> Stmt<'input> {
Stmt::Expr(__0)
}
#[allow(unused_variables)]
fn __action14<'input>(
file_id: FileId,
input: &'input str,
(_, _, _): (usize, &'input str, usize),
(_, __0, _): (usize, Spanned<&'input str>, usize),
(_, _, _): (usize, &'input str, usize),
(_, __1, _): (usize, Expr<'input>, usize),
) -> Stmt<'input> {
Stmt::Let(__0, __1)
}
#[allow(unused_variables)]
fn __action15<'input>(
file_id: FileId,
input: &'input str,
(_, _, _): (usize, &'input str, usize),
(_, __0, _): (usize, Expr<'input>, usize),
) -> Stmt<'input> {
Stmt::Print(__0)
}
#[allow(unused_variables)]
fn __action16<'input>(
file_id: FileId,
input: &'input str,
(_, _, _): (usize, &'input str, usize),
(_, __0, _): (usize, Expr<'input>, usize),
) -> Stmt<'input> {
Stmt::Return(__0)
}
#[allow(unused_variables)]
fn __action17<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, Expr<'input>, usize),
) -> Expr<'input> {
__0
}
#[allow(unused_variables)]
fn __action18<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, Expr<'input>, usize),
) -> Box<Expr<'input>> {
Box::new(__0)
}
#[allow(unused_variables)]
fn __action19<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, Expr<'input>, usize),
) -> Expr<'input> {
__0
}
#[allow(unused_variables)]
fn __action20<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, Expr<'input>, usize),
) -> Expr<'input> {
__0
}
#[allow(unused_variables)]
fn __action21<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, Expr<'input>, usize),
) -> Expr<'input> {
__0
}
#[allow(unused_variables)]
fn __action22<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, Expr<'input>, usize),
) -> Expr<'input> {
__0
}
#[allow(unused_variables)]
fn __action23<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, Expr<'input>, usize),
) -> Expr<'input> {
__0
}
#[allow(unused_variables)]
fn __action24<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, Expr<'input>, usize),
) -> Expr<'input> {
__0
}
#[allow(unused_variables)]
fn __action25<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, Spanned<RawExpr<'input>>, usize),
) -> Spanned<RawExpr<'input>> {
__0
}
#[allow(unused_variables)]
fn __action26<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, RawExpr<'input>, usize),
) -> RawExpr<'input> {
__0
}
#[allow(unused_variables)]
fn __action27<'input>(
file_id: FileId,
input: &'input str,
(_, o, _): (usize, Spanned<UnaryOp>, usize),
(_, e, _): (usize, Spanned<RawExpr<'input>>, usize),
) -> RawExpr<'input> {
RawExpr::UnaryOp(o, Box::new(e))
}
#[allow(unused_variables)]
fn __action28<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, Spanned<RawExpr<'input>>, usize),
) -> Spanned<RawExpr<'input>> {
__0
}
#[allow(unused_variables)]
fn __action29<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, RawExpr<'input>, usize),
) -> RawExpr<'input> {
__0
}
#[allow(unused_variables)]
fn __action30<'input>(
file_id: FileId,
input: &'input str,
(_, l, _): (usize, Spanned<RawExpr<'input>>, usize),
(_, _, _): (usize, &'input str, usize),
(_, r, _): (usize, Expr<'input>, usize),
(_, _, _): (usize, &'input str, usize),
) -> RawExpr<'input> {
RawExpr::ArrayAccess(Box::new(l), Box::new(r))
}
#[allow(unused_variables)]
fn __action31<'input>(
file_id: FileId,
input: &'input str,
(_, l, _): (usize, Spanned<RawExpr<'input>>, usize),
(_, _, _): (usize, &'input str, usize),
(_, r, _): (usize, Vec<Expr<'input>>, usize),
(_, _, _): (usize, &'input str, usize),
) -> RawExpr<'input> {
RawExpr::Call(Box::new(l), r)
}
#[allow(unused_variables)]
fn __action32<'input>(
file_id: FileId,
input: &'input str,
(_, l, _): (usize, Spanned<RawExpr<'input>>, usize),
(_, _, _): (usize, &'input str, usize),
(_, r, _): (usize, Spanned<&'input str>, usize),
) -> RawExpr<'input> {
RawExpr::FieldAccess(Box::new(l), r)
}
#[allow(unused_variables)]
fn __action33<'input>(
file_id: FileId,
input: &'input str,
(_, _, _): (usize, &'input str, usize),
(_, __0, _): (usize, Box<Expr<'input>>, usize),
(_, __1, _): (usize, Spanned<Vec<Stmt<'input>>>, usize),
(_, __2, _): (
usize,
core::option::Option<Spanned<Vec<Stmt<'input>>>>,
usize,
),
) -> RawExpr<'input> {
RawExpr::If(__0, __1, __2)
}
#[allow(unused_variables)]
fn __action34<'input>(
file_id: FileId,
input: &'input str,
(_, _, _): (usize, &'input str, usize),
(_, __0, _): (usize, Spanned<&'input str>, usize),
(_, _, _): (usize, &'input str, usize),
(_, __1, _): (usize, Box<Expr<'input>>, usize),
(_, __2, _): (usize, Spanned<Vec<Stmt<'input>>>, usize),
) -> RawExpr<'input> {
RawExpr::For(__0, __1, __2)
}
#[allow(unused_variables)]
fn __action35<'input>(
file_id: FileId,
input: &'input str,
(_, _, _): (usize, &'input str, usize),
(_, __0, _): (usize, Box<Expr<'input>>, usize),
(_, __1, _): (usize, Spanned<Vec<Stmt<'input>>>, usize),
) -> RawExpr<'input> {
RawExpr::While(__0, __1)
}
#[allow(unused_variables)]
fn __action36<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, Spanned<&'input str>, usize),
) -> RawExpr<'input> {
RawExpr::Var(__0)
}
#[allow(unused_variables)]
fn __action37<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, Spanned<Vec<Stmt<'input>>>, usize),
) -> RawExpr<'input> {
RawExpr::Block(__0)
}
#[allow(unused_variables)]
fn __action38<'input>(
file_id: FileId,
input: &'input str,
(_, _, _): (usize, &'input str, usize),
(_, e, _): (usize, Expr<'input>, usize),
(_, _, _): (usize, &'input str, usize),
) -> RawExpr<'input> {
e.node
}
#[allow(unused_variables)]
fn __action39<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, Spanned<Literal<'input>>, usize),
) -> RawExpr<'input> {
RawExpr::Literal(__0)
}
#[allow(unused_variables)]
fn __action40<'input>(
file_id: FileId,
input: &'input str,
(_, s, _): (usize, &'input str, usize),
) -> Literal<'input> {
Literal::String(&s[1..s.len() - 1])
}
#[allow(unused_variables)]
fn __action41<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, &'input str, usize),
) -> Literal<'input> {
Literal::Float(__0.parse().unwrap())
}
#[allow(unused_variables)]
fn __action42<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, &'input str, usize),
) -> Literal<'input> {
Literal::Integer(__0.parse().unwrap())
}
#[allow(unused_variables)]
fn __action43<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, bool, usize),
) -> Literal<'input> {
Literal::Bool(__0)
}
#[allow(unused_variables)]
fn __action44<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, &'input str, usize),
) -> &'input str {
__0
}
#[allow(unused_variables)]
fn __action45<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, &'input str, usize),
) -> &'input str {
__0
}
#[allow(unused_variables)]
fn __action46<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, &'input str, usize),
) -> &'input str {
__0
}
#[allow(unused_variables)]
fn __action47<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, &'input str, usize),
) -> bool {
true
}
#[allow(unused_variables)]
fn __action48<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, &'input str, usize),
) -> bool {
false
}
#[allow(unused_variables)]
fn __action49<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, &'input str, usize),
) -> BinOp {
BinOp::LogicalOr
}
#[allow(unused_variables)]
fn __action50<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, &'input str, usize),
) -> BinOp {
BinOp::LogicalAnd
}
#[allow(unused_variables)]
fn __action51<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, &'input str, usize),
) -> BinOp {
BinOp::Equals
}
#[allow(unused_variables)]
fn __action52<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, &'input str, usize),
) -> BinOp {
BinOp::NotEquals
}
#[allow(unused_variables)]
fn __action53<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, &'input str, usize),
) -> BinOp {
BinOp::LessThan
}
#[allow(unused_variables)]
fn __action54<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, &'input str, usize),
) -> BinOp {
BinOp::GreaterThan
}
#[allow(unused_variables)]
fn __action55<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, &'input str, usize),
) -> BinOp {
BinOp::LessThanEquals
}
#[allow(unused_variables)]
fn __action56<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, &'input str, usize),
) -> BinOp {
BinOp::GreaterThanEquals
}
#[allow(unused_variables)]
fn __action57<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, &'input str, usize),
) -> BinOp {
BinOp::Plus
}
#[allow(unused_variables)]
fn __action58<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, &'input str, usize),
) -> BinOp {
BinOp::Minus
}
#[allow(unused_variables)]
fn __action59<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, &'input str, usize),
) -> BinOp {
BinOp::Times
}
#[allow(unused_variables)]
fn __action60<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, &'input str, usize),
) -> BinOp {
BinOp::Devide
}
#[allow(unused_variables)]
fn __action61<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, BinOp, usize),
) -> BinOp {
__0
}
#[allow(unused_variables)]
fn __action62<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, BinOp, usize),
) -> BinOp {
__0
}
#[allow(unused_variables)]
fn __action63<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, BinOp, usize),
) -> BinOp {
__0
}
#[allow(unused_variables)]
fn __action64<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, BinOp, usize),
) -> BinOp {
__0
}
#[allow(unused_variables)]
fn __action65<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, BinOp, usize),
) -> BinOp {
__0
}
#[allow(unused_variables)]
fn __action66<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, BinOp, usize),
) -> BinOp {
__0
}
#[allow(unused_variables)]
fn __action67<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, BinOp, usize),
) -> BinOp {
__0
}
#[allow(unused_variables)]
fn __action68<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, BinOp, usize),
) -> BinOp {
__0
}
#[allow(unused_variables)]
fn __action69<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, BinOp, usize),
) -> BinOp {
__0
}
#[allow(unused_variables)]
fn __action70<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, BinOp, usize),
) -> BinOp {
__0
}
#[allow(unused_variables)]
fn __action71<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, &'input str, usize),
) -> UnaryOp {
UnaryOp::Not
}
#[allow(unused_variables)]
fn __action72<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, &'input str, usize),
) -> UnaryOp {
UnaryOp::Minus
}
#[allow(unused_variables)]
fn __action73<'input>(
file_id: FileId,
input: &'input str,
(_, start, _): (usize, usize, usize),
(_, node, _): (usize, Literal<'input>, usize),
(_, end, _): (usize, usize, usize),
) -> Spanned<Literal<'input>> {
Spanned {
node,
span: Span {
start,
end,
file_id,
},
}
}
#[allow(unused_variables)]
fn __action74<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, Spanned<Vec<Stmt<'input>>>, usize),
) -> core::option::Option<Spanned<Vec<Stmt<'input>>>> {
Some(__0)
}
#[allow(unused_variables)]
fn __action75<'input>(
file_id: FileId,
input: &'input str,
__lookbehind: &usize,
__lookahead: &usize,
) -> core::option::Option<Spanned<Vec<Stmt<'input>>>> {
None
}
#[allow(unused_variables)]
fn __action76<'input>(
file_id: FileId,
input: &'input str,
(_, _, _): (usize, &'input str, usize),
(_, __0, _): (usize, Spanned<Vec<Stmt<'input>>>, usize),
) -> Spanned<Vec<Stmt<'input>>> {
__0
}
#[allow(unused_variables)]
fn __action77<'input>(
file_id: FileId,
input: &'input str,
(_, v, _): (usize, alloc::vec::Vec<Expr<'input>>, usize),
(_, e, _): (usize, core::option::Option<Expr<'input>>, usize),
) -> Vec<Expr<'input>> {
match e {
None => v,
Some(e) => {
let mut v = v;
v.push(e);
v
}
}
}
#[allow(unused_variables)]
fn __action78<'input>(
file_id: FileId,
input: &'input str,
(_, start, _): (usize, usize, usize),
(_, node, _): (usize, RawExpr<'input>, usize),
(_, end, _): (usize, usize, usize),
) -> Spanned<RawExpr<'input>> {
Spanned {
node,
span: Span {
start,
end,
file_id,
},
}
}
#[allow(unused_variables)]
fn __action79<'input>(
file_id: FileId,
input: &'input str,
(_, start, _): (usize, usize, usize),
(_, node, _): (usize, UnaryOp, usize),
(_, end, _): (usize, usize, usize),
) -> Spanned<UnaryOp> {
Spanned {
node,
span: Span {
start,
end,
file_id,
},
}
}
#[allow(unused_variables)]
fn __action80<'input>(
file_id: FileId,
input: &'input str,
(_, start, _): (usize, usize, usize),
(_, node, _): (usize, RawExpr<'input>, usize),
(_, end, _): (usize, usize, usize),
) -> Spanned<RawExpr<'input>> {
Spanned {
node,
span: Span {
start,
end,
file_id,
},
}
}
#[allow(unused_variables)]
fn __action81<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, Spanned<RawExpr<'input>>, usize),
) -> Expr<'input> {
__0
}
#[allow(unused_variables)]
fn __action82<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, Spanned<RawExpr<'input>>, usize),
) -> Expr<'input> {
__0
}
#[allow(unused_variables)]
fn __action83<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, Spanned<RawExpr<'input>>, usize),
) -> Expr<'input> {
__0
}
#[allow(unused_variables)]
fn __action84<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, Expr<'input>, usize),
) -> Expr<'input> {
__0
}
#[allow(unused_variables)]
fn __action85<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, Spanned<RawExpr<'input>>, usize),
) -> Expr<'input> {
__0
}
#[allow(unused_variables)]
fn __action86<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, Expr<'input>, usize),
) -> Expr<'input> {
__0
}
#[allow(unused_variables)]
fn __action87<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, Spanned<RawExpr<'input>>, usize),
) -> Expr<'input> {
__0
}
#[allow(unused_variables)]
fn __action88<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, Expr<'input>, usize),
) -> Expr<'input> {
__0
}
#[allow(unused_variables)]
fn __action89<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, Spanned<RawExpr<'input>>, usize),
) -> Expr<'input> {
__0
}
#[allow(unused_variables)]
fn __action90<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, Expr<'input>, usize),
) -> Expr<'input> {
__0
}
#[allow(unused_variables)]
fn __action91<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, Spanned<RawExpr<'input>>, usize),
) -> Expr<'input> {
__0
}
#[allow(unused_variables)]
fn __action92<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, Expr<'input>, usize),
) -> Expr<'input> {
__0
}
#[allow(unused_variables)]
fn __action93<'input>(
file_id: FileId,
input: &'input str,
(_, v, _): (usize, alloc::vec::Vec<Stmt<'input>>, usize),
(_, e, _): (usize, core::option::Option<Stmt<'input>>, usize),
) -> Vec<Stmt<'input>> {
match e {
None => v,
Some(e) => {
let mut v = v;
v.push(e);
v
}
}
}
#[allow(unused_variables)]
fn __action94<'input>(
file_id: FileId,
input: &'input str,
(_, start, _): (usize, usize, usize),
(_, node, _): (usize, Vec<Stmt<'input>>, usize),
(_, end, _): (usize, usize, usize),
) -> Spanned<Vec<Stmt<'input>>> {
Spanned {
node,
span: Span {
start,
end,
file_id,
},
}
}
#[allow(unused_variables)]
fn __action95<'input>(
file_id: FileId,
input: &'input str,
(_, start, _): (usize, usize, usize),
(_, node, _): (usize, &'input str, usize),
(_, end, _): (usize, usize, usize),
) -> Spanned<&'input str> {
Spanned {
node,
span: Span {
start,
end,
file_id,
},
}
}
#[allow(unused_variables)]
fn __action96<'input>(
file_id: FileId,
input: &'input str,
(_, v, _): (usize, alloc::vec::Vec<Arg<'input>>, usize),
(_, e, _): (usize, core::option::Option<Arg<'input>>, usize),
) -> Vec<Arg<'input>> {
match e {
None => v,
Some(e) => {
let mut v = v;
v.push(e);
v
}
}
}
#[allow(unused_variables)]
fn __action97<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, Spanned<Type>, usize),
) -> core::option::Option<Spanned<Type>> {
Some(__0)
}
#[allow(unused_variables)]
fn __action98<'input>(
file_id: FileId,
input: &'input str,
__lookbehind: &usize,
__lookahead: &usize,
) -> core::option::Option<Spanned<Type>> {
None
}
#[allow(unused_variables)]
fn __action99<'input>(
file_id: FileId,
input: &'input str,
(_, _, _): (usize, &'input str, usize),
(_, __0, _): (usize, Spanned<Type>, usize),
) -> Spanned<Type> {
__0
}
#[allow(unused_variables)]
fn __action100<'input>(
file_id: FileId,
input: &'input str,
(_, start, _): (usize, usize, usize),
(_, node, _): (usize, Type, usize),
(_, end, _): (usize, usize, usize),
) -> Spanned<Type> {
Spanned {
node,
span: Span {
start,
end,
file_id,
},
}
}
#[allow(unused_variables)]
fn __action101<'input>(
file_id: FileId,
input: &'input str,
(_, start, _): (usize, usize, usize),
(_, node, _): (usize, Vec<Arg<'input>>, usize),
(_, end, _): (usize, usize, usize),
) -> Spanned<Vec<Arg<'input>>> {
Spanned {
node,
span: Span {
start,
end,
file_id,
},
}
}
#[allow(unused_variables)]
fn __action102<'input>(
file_id: FileId,
input: &'input str,
(_, start, _): (usize, usize, usize),
(_, node, _): (usize, Function<'input>, usize),
(_, end, _): (usize, usize, usize),
) -> Spanned<Function<'input>> {
Spanned {
node,
span: Span {
start,
end,
file_id,
},
}
}
#[allow(unused_variables)]
fn __action103<'input>(
file_id: FileId,
input: &'input str,
__lookbehind: &usize,
__lookahead: &usize,
) -> alloc::vec::Vec<Item<'input>> {
alloc::vec![]
}
#[allow(unused_variables)]
fn __action104<'input>(
file_id: FileId,
input: &'input str,
(_, v, _): (usize, alloc::vec::Vec<Item<'input>>, usize),
) -> alloc::vec::Vec<Item<'input>> {
v
}
#[allow(unused_variables)]
fn __action105<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, Item<'input>, usize),
) -> alloc::vec::Vec<Item<'input>> {
alloc::vec![__0]
}
#[allow(unused_variables)]
fn __action106<'input>(
file_id: FileId,
input: &'input str,
(_, v, _): (usize, alloc::vec::Vec<Item<'input>>, usize),
(_, e, _): (usize, Item<'input>, usize),
) -> alloc::vec::Vec<Item<'input>> {
{
let mut v = v;
v.push(e);
v
}
}
#[allow(unused_variables)]
fn __action107<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, Arg<'input>, usize),
) -> core::option::Option<Arg<'input>> {
Some(__0)
}
#[allow(unused_variables)]
fn __action108<'input>(
file_id: FileId,
input: &'input str,
__lookbehind: &usize,
__lookahead: &usize,
) -> core::option::Option<Arg<'input>> {
None
}
#[allow(unused_variables)]
fn __action109<'input>(
file_id: FileId,
input: &'input str,
__lookbehind: &usize,
__lookahead: &usize,
) -> alloc::vec::Vec<Arg<'input>> {
alloc::vec![]
}
#[allow(unused_variables)]
fn __action110<'input>(
file_id: FileId,
input: &'input str,
(_, v, _): (usize, alloc::vec::Vec<Arg<'input>>, usize),
) -> alloc::vec::Vec<Arg<'input>> {
v
}
#[allow(unused_variables)]
fn __action111<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, Arg<'input>, usize),
(_, _, _): (usize, &'input str, usize),
) -> Arg<'input> {
__0
}
#[allow(unused_variables)]
fn __action112<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, Stmt<'input>, usize),
) -> core::option::Option<Stmt<'input>> {
Some(__0)
}
#[allow(unused_variables)]
fn __action113<'input>(
file_id: FileId,
input: &'input str,
__lookbehind: &usize,
__lookahead: &usize,
) -> core::option::Option<Stmt<'input>> {
None
}
#[allow(unused_variables)]
fn __action114<'input>(
file_id: FileId,
input: &'input str,
__lookbehind: &usize,
__lookahead: &usize,
) -> alloc::vec::Vec<Stmt<'input>> {
alloc::vec![]
}
#[allow(unused_variables)]
fn __action115<'input>(
file_id: FileId,
input: &'input str,
(_, v, _): (usize, alloc::vec::Vec<Stmt<'input>>, usize),
) -> alloc::vec::Vec<Stmt<'input>> {
v
}
#[allow(unused_variables)]
fn __action116<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, Stmt<'input>, usize),
(_, _, _): (usize, &'input str, usize),
) -> Stmt<'input> {
__0
}
#[allow(unused_variables)]
fn __action117<'input>(
file_id: FileId,
input: &'input str,
(_, start, _): (usize, usize, usize),
(_, node, _): (usize, RawExpr<'input>, usize),
(_, end, _): (usize, usize, usize),
) -> Spanned<RawExpr<'input>> {
Spanned {
node,
span: Span {
start,
end,
file_id,
},
}
}
#[allow(unused_variables)]
fn __action118<'input>(
file_id: FileId,
input: &'input str,
(_, l, _): (usize, Expr<'input>, usize),
(_, o, _): (usize, Spanned<BinOp>, usize),
(_, r, _): (usize, Expr<'input>, usize),
) -> RawExpr<'input> {
RawExpr::BinOp(Box::new(l), o, Box::new(r))
}
#[allow(unused_variables)]
fn __action119<'input>(
file_id: FileId,
input: &'input str,
(_, start, _): (usize, usize, usize),
(_, node, _): (usize, RawExpr<'input>, usize),
(_, end, _): (usize, usize, usize),
) -> Spanned<RawExpr<'input>> {
Spanned {
node,
span: Span {
start,
end,
file_id,
},
}
}
#[allow(unused_variables)]
fn __action120<'input>(
file_id: FileId,
input: &'input str,
(_, l, _): (usize, Expr<'input>, usize),
(_, o, _): (usize, Spanned<BinOp>, usize),
(_, r, _): (usize, Expr<'input>, usize),
) -> RawExpr<'input> {
RawExpr::BinOp(Box::new(l), o, Box::new(r))
}
#[allow(unused_variables)]
fn __action121<'input>(
file_id: FileId,
input: &'input str,
(_, start, _): (usize, usize, usize),
(_, node, _): (usize, RawExpr<'input>, usize),
(_, end, _): (usize, usize, usize),
) -> Spanned<RawExpr<'input>> {
Spanned {
node,
span: Span {
start,
end,
file_id,
},
}
}
#[allow(unused_variables)]
fn __action122<'input>(
file_id: FileId,
input: &'input str,
(_, l, _): (usize, Expr<'input>, usize),
(_, o, _): (usize, Spanned<BinOp>, usize),
(_, r, _): (usize, Expr<'input>, usize),
) -> RawExpr<'input> {
RawExpr::BinOp(Box::new(l), o, Box::new(r))
}
#[allow(unused_variables)]
fn __action123<'input>(
file_id: FileId,
input: &'input str,
(_, start, _): (usize, usize, usize),
(_, node, _): (usize, RawExpr<'input>, usize),
(_, end, _): (usize, usize, usize),
) -> Spanned<RawExpr<'input>> {
Spanned {
node,
span: Span {
start,
end,
file_id,
},
}
}
#[allow(unused_variables)]
fn __action124<'input>(
file_id: FileId,
input: &'input str,
(_, l, _): (usize, Expr<'input>, usize),
(_, o, _): (usize, Spanned<BinOp>, usize),
(_, r, _): (usize, Expr<'input>, usize),
) -> RawExpr<'input> {
RawExpr::BinOp(Box::new(l), o, Box::new(r))
}
#[allow(unused_variables)]
fn __action125<'input>(
file_id: FileId,
input: &'input str,
(_, start, _): (usize, usize, usize),
(_, node, _): (usize, RawExpr<'input>, usize),
(_, end, _): (usize, usize, usize),
) -> Spanned<RawExpr<'input>> {
Spanned {
node,
span: Span {
start,
end,
file_id,
},
}
}
#[allow(unused_variables)]
fn __action126<'input>(
file_id: FileId,
input: &'input str,
(_, l, _): (usize, Expr<'input>, usize),
(_, o, _): (usize, Spanned<BinOp>, usize),
(_, r, _): (usize, Expr<'input>, usize),
) -> RawExpr<'input> {
RawExpr::BinOp(Box::new(l), o, Box::new(r))
}
#[allow(unused_variables)]
fn __action127<'input>(
file_id: FileId,
input: &'input str,
(_, start, _): (usize, usize, usize),
(_, node, _): (usize, RawExpr<'input>, usize),
(_, end, _): (usize, usize, usize),
) -> Spanned<RawExpr<'input>> {
Spanned {
node,
span: Span {
start,
end,
file_id,
},
}
}
#[allow(unused_variables)]
fn __action128<'input>(
file_id: FileId,
input: &'input str,
(_, l, _): (usize, Expr<'input>, usize),
(_, o, _): (usize, Spanned<BinOp>, usize),
(_, r, _): (usize, Spanned<RawExpr<'input>>, usize),
) -> RawExpr<'input> {
RawExpr::BinOp(Box::new(l), o, Box::new(r))
}
#[allow(unused_variables)]
fn __action129<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, Expr<'input>, usize),
) -> core::option::Option<Expr<'input>> {
Some(__0)
}
#[allow(unused_variables)]
fn __action130<'input>(
file_id: FileId,
input: &'input str,
__lookbehind: &usize,
__lookahead: &usize,
) -> core::option::Option<Expr<'input>> {
None
}
#[allow(unused_variables)]
fn __action131<'input>(
file_id: FileId,
input: &'input str,
__lookbehind: &usize,
__lookahead: &usize,
) -> alloc::vec::Vec<Expr<'input>> {
alloc::vec![]
}
#[allow(unused_variables)]
fn __action132<'input>(
file_id: FileId,
input: &'input str,
(_, v, _): (usize, alloc::vec::Vec<Expr<'input>>, usize),
) -> alloc::vec::Vec<Expr<'input>> {
v
}
#[allow(unused_variables)]
fn __action133<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, Expr<'input>, usize),
(_, _, _): (usize, &'input str, usize),
) -> Expr<'input> {
__0
}
#[allow(unused_variables)]
fn __action134<'input>(
file_id: FileId,
input: &'input str,
__lookbehind: &usize,
__lookahead: &usize,
) -> usize {
__lookbehind.clone()
}
#[allow(unused_variables)]
fn __action135<'input>(
file_id: FileId,
input: &'input str,
__lookbehind: &usize,
__lookahead: &usize,
) -> usize {
__lookahead.clone()
}
#[allow(unused_variables)]
fn __action136<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, Expr<'input>, usize),
) -> alloc::vec::Vec<Expr<'input>> {
alloc::vec![__0]
}
#[allow(unused_variables)]
fn __action137<'input>(
file_id: FileId,
input: &'input str,
(_, v, _): (usize, alloc::vec::Vec<Expr<'input>>, usize),
(_, e, _): (usize, Expr<'input>, usize),
) -> alloc::vec::Vec<Expr<'input>> {
{
let mut v = v;
v.push(e);
v
}
}
#[allow(unused_variables)]
fn __action138<'input>(
file_id: FileId,
input: &'input str,
(_, start, _): (usize, usize, usize),
(_, node, _): (usize, BinOp, usize),
(_, end, _): (usize, usize, usize),
) -> Spanned<BinOp> {
Spanned {
node,
span: Span {
start,
end,
file_id,
},
}
}
#[allow(unused_variables)]
fn __action139<'input>(
file_id: FileId,
input: &'input str,
(_, start, _): (usize, usize, usize),
(_, node, _): (usize, BinOp, usize),
(_, end, _): (usize, usize, usize),
) -> Spanned<BinOp> {
Spanned {
node,
span: Span {
start,
end,
file_id,
},
}
}
#[allow(unused_variables)]
fn __action140<'input>(
file_id: FileId,
input: &'input str,
(_, start, _): (usize, usize, usize),
(_, node, _): (usize, BinOp, usize),
(_, end, _): (usize, usize, usize),
) -> Spanned<BinOp> {
Spanned {
node,
span: Span {
start,
end,
file_id,
},
}
}
#[allow(unused_variables)]
fn __action141<'input>(
file_id: FileId,
input: &'input str,
(_, start, _): (usize, usize, usize),
(_, node, _): (usize, BinOp, usize),
(_, end, _): (usize, usize, usize),
) -> Spanned<BinOp> {
Spanned {
node,
span: Span {
start,
end,
file_id,
},
}
}
#[allow(unused_variables)]
fn __action142<'input>(
file_id: FileId,
input: &'input str,
(_, start, _): (usize, usize, usize),
(_, node, _): (usize, BinOp, usize),
(_, end, _): (usize, usize, usize),
) -> Spanned<BinOp> {
Spanned {
node,
span: Span {
start,
end,
file_id,
},
}
}
#[allow(unused_variables)]
fn __action143<'input>(
file_id: FileId,
input: &'input str,
(_, start, _): (usize, usize, usize),
(_, node, _): (usize, BinOp, usize),
(_, end, _): (usize, usize, usize),
) -> Spanned<BinOp> {
Spanned {
node,
span: Span {
start,
end,
file_id,
},
}
}
#[allow(unused_variables)]
fn __action144<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, Stmt<'input>, usize),
) -> alloc::vec::Vec<Stmt<'input>> {
alloc::vec![__0]
}
#[allow(unused_variables)]
fn __action145<'input>(
file_id: FileId,
input: &'input str,
(_, v, _): (usize, alloc::vec::Vec<Stmt<'input>>, usize),
(_, e, _): (usize, Stmt<'input>, usize),
) -> alloc::vec::Vec<Stmt<'input>> {
{
let mut v = v;
v.push(e);
v
}
}
#[allow(unused_variables)]
fn __action146<'input>(
file_id: FileId,
input: &'input str,
(_, __0, _): (usize, Arg<'input>, usize),
) -> alloc::vec::Vec<Arg<'input>> {
alloc::vec![__0]
}
#[allow(unused_variables)]
fn __action147<'input>(
file_id: FileId,
input: &'input str,
(_, v, _): (usize, alloc::vec::Vec<Arg<'input>>, usize),
(_, e, _): (usize, Arg<'input>, usize),
) -> alloc::vec::Vec<Arg<'input>> {
{
let mut v = v;
v.push(e);
v
}
}
#[allow(unused_variables)]
fn __action148<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, &'input str, usize),
__1: (usize, Spanned<Type>, usize),
) -> core::option::Option<Spanned<Type>> {
let __start0 = __0.0.clone();
let __end0 = __1.2.clone();
let __temp0 = __action99(file_id, input, __0, __1);
let __temp0 = (__start0, __temp0, __end0);
__action97(file_id, input, __temp0)
}
#[allow(unused_variables)]
fn __action149<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, &'input str, usize),
__1: (usize, Spanned<&'input str>, usize),
__2: (usize, Spanned<Vec<Arg<'input>>>, usize),
__3: (usize, &'input str, usize),
__4: (usize, Spanned<Type>, usize),
__5: (usize, Spanned<Vec<Stmt<'input>>>, usize),
) -> Function<'input> {
let __start0 = __3.0.clone();
let __end0 = __4.2.clone();
let __temp0 = __action148(file_id, input, __3, __4);
let __temp0 = (__start0, __temp0, __end0);
__action3(file_id, input, __0, __1, __2, __temp0, __5)
}
#[allow(unused_variables)]
fn __action150<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, &'input str, usize),
__1: (usize, Spanned<&'input str>, usize),
__2: (usize, Spanned<Vec<Arg<'input>>>, usize),
__3: (usize, Spanned<Vec<Stmt<'input>>>, usize),
) -> Function<'input> {
let __start0 = __2.2.clone();
let __end0 = __3.0.clone();
let __temp0 = __action98(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action3(file_id, input, __0, __1, __2, __temp0, __3)
}
#[allow(unused_variables)]
fn __action151<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, &'input str, usize),
__1: (usize, Spanned<Vec<Stmt<'input>>>, usize),
) -> core::option::Option<Spanned<Vec<Stmt<'input>>>> {
let __start0 = __0.0.clone();
let __end0 = __1.2.clone();
let __temp0 = __action76(file_id, input, __0, __1);
let __temp0 = (__start0, __temp0, __end0);
__action74(file_id, input, __temp0)
}
#[allow(unused_variables)]
fn __action152<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, &'input str, usize),
__1: (usize, Box<Expr<'input>>, usize),
__2: (usize, Spanned<Vec<Stmt<'input>>>, usize),
__3: (usize, &'input str, usize),
__4: (usize, Spanned<Vec<Stmt<'input>>>, usize),
) -> RawExpr<'input> {
let __start0 = __3.0.clone();
let __end0 = __4.2.clone();
let __temp0 = __action151(file_id, input, __3, __4);
let __temp0 = (__start0, __temp0, __end0);
__action33(file_id, input, __0, __1, __2, __temp0)
}
#[allow(unused_variables)]
fn __action153<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, &'input str, usize),
__1: (usize, Box<Expr<'input>>, usize),
__2: (usize, Spanned<Vec<Stmt<'input>>>, usize),
) -> RawExpr<'input> {
let __start0 = __2.2.clone();
let __end0 = __2.2.clone();
let __temp0 = __action75(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action33(file_id, input, __0, __1, __2, __temp0)
}
#[allow(unused_variables)]
fn __action154<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, Arg<'input>, usize),
__1: (usize, &'input str, usize),
) -> alloc::vec::Vec<Arg<'input>> {
let __start0 = __0.0.clone();
let __end0 = __1.2.clone();
let __temp0 = __action111(file_id, input, __0, __1);
let __temp0 = (__start0, __temp0, __end0);
__action146(file_id, input, __temp0)
}
#[allow(unused_variables)]
fn __action155<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, alloc::vec::Vec<Arg<'input>>, usize),
__1: (usize, Arg<'input>, usize),
__2: (usize, &'input str, usize),
) -> alloc::vec::Vec<Arg<'input>> {
let __start0 = __1.0.clone();
let __end0 = __2.2.clone();
let __temp0 = __action111(file_id, input, __1, __2);
let __temp0 = (__start0, __temp0, __end0);
__action147(file_id, input, __0, __temp0)
}
#[allow(unused_variables)]
fn __action156<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, core::option::Option<Arg<'input>>, usize),
) -> Vec<Arg<'input>> {
let __start0 = __0.0.clone();
let __end0 = __0.0.clone();
let __temp0 = __action109(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action96(file_id, input, __temp0, __0)
}
#[allow(unused_variables)]
fn __action157<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, alloc::vec::Vec<Arg<'input>>, usize),
__1: (usize, core::option::Option<Arg<'input>>, usize),
) -> Vec<Arg<'input>> {
let __start0 = __0.0.clone();
let __end0 = __0.2.clone();
let __temp0 = __action110(file_id, input, __0);
let __temp0 = (__start0, __temp0, __end0);
__action96(file_id, input, __temp0, __1)
}
#[allow(unused_variables)]
fn __action158<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, Expr<'input>, usize),
__1: (usize, &'input str, usize),
) -> alloc::vec::Vec<Expr<'input>> {
let __start0 = __0.0.clone();
let __end0 = __1.2.clone();
let __temp0 = __action133(file_id, input, __0, __1);
let __temp0 = (__start0, __temp0, __end0);
__action136(file_id, input, __temp0)
}
#[allow(unused_variables)]
fn __action159<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, alloc::vec::Vec<Expr<'input>>, usize),
__1: (usize, Expr<'input>, usize),
__2: (usize, &'input str, usize),
) -> alloc::vec::Vec<Expr<'input>> {
let __start0 = __1.0.clone();
let __end0 = __2.2.clone();
let __temp0 = __action133(file_id, input, __1, __2);
let __temp0 = (__start0, __temp0, __end0);
__action137(file_id, input, __0, __temp0)
}
#[allow(unused_variables)]
fn __action160<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, core::option::Option<Expr<'input>>, usize),
) -> Vec<Expr<'input>> {
let __start0 = __0.0.clone();
let __end0 = __0.0.clone();
let __temp0 = __action131(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action77(file_id, input, __temp0, __0)
}
#[allow(unused_variables)]
fn __action161<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, alloc::vec::Vec<Expr<'input>>, usize),
__1: (usize, core::option::Option<Expr<'input>>, usize),
) -> Vec<Expr<'input>> {
let __start0 = __0.0.clone();
let __end0 = __0.2.clone();
let __temp0 = __action132(file_id, input, __0);
let __temp0 = (__start0, __temp0, __end0);
__action77(file_id, input, __temp0, __1)
}
#[allow(unused_variables)]
fn __action162<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, Stmt<'input>, usize),
__1: (usize, &'input str, usize),
) -> alloc::vec::Vec<Stmt<'input>> {
let __start0 = __0.0.clone();
let __end0 = __1.2.clone();
let __temp0 = __action116(file_id, input, __0, __1);
let __temp0 = (__start0, __temp0, __end0);
__action144(file_id, input, __temp0)
}
#[allow(unused_variables)]
fn __action163<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, alloc::vec::Vec<Stmt<'input>>, usize),
__1: (usize, Stmt<'input>, usize),
__2: (usize, &'input str, usize),
) -> alloc::vec::Vec<Stmt<'input>> {
let __start0 = __1.0.clone();
let __end0 = __2.2.clone();
let __temp0 = __action116(file_id, input, __1, __2);
let __temp0 = (__start0, __temp0, __end0);
__action145(file_id, input, __0, __temp0)
}
#[allow(unused_variables)]
fn __action164<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, core::option::Option<Stmt<'input>>, usize),
) -> Vec<Stmt<'input>> {
let __start0 = __0.0.clone();
let __end0 = __0.0.clone();
let __temp0 = __action114(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action93(file_id, input, __temp0, __0)
}
#[allow(unused_variables)]
fn __action165<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, alloc::vec::Vec<Stmt<'input>>, usize),
__1: (usize, core::option::Option<Stmt<'input>>, usize),
) -> Vec<Stmt<'input>> {
let __start0 = __0.0.clone();
let __end0 = __0.2.clone();
let __temp0 = __action115(file_id, input, __0);
let __temp0 = (__start0, __temp0, __end0);
__action93(file_id, input, __temp0, __1)
}
#[allow(unused_variables)]
fn __action166<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, BinOp, usize),
__1: (usize, usize, usize),
) -> Spanned<BinOp> {
let __start0 = __0.0.clone();
let __end0 = __0.0.clone();
let __temp0 = __action135(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action139(file_id, input, __temp0, __0, __1)
}
#[allow(unused_variables)]
fn __action167<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, Vec<Arg<'input>>, usize),
__1: (usize, usize, usize),
) -> Spanned<Vec<Arg<'input>>> {
let __start0 = __0.0.clone();
let __end0 = __0.0.clone();
let __temp0 = __action135(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action101(file_id, input, __temp0, __0, __1)
}
#[allow(unused_variables)]
fn __action168<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, Vec<Stmt<'input>>, usize),
__1: (usize, usize, usize),
) -> Spanned<Vec<Stmt<'input>>> {
let __start0 = __0.0.clone();
let __end0 = __0.0.clone();
let __temp0 = __action135(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action94(file_id, input, __temp0, __0, __1)
}
#[allow(unused_variables)]
fn __action169<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, BinOp, usize),
__1: (usize, usize, usize),
) -> Spanned<BinOp> {
let __start0 = __0.0.clone();
let __end0 = __0.0.clone();
let __temp0 = __action135(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action140(file_id, input, __temp0, __0, __1)
}
#[allow(unused_variables)]
fn __action170<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, BinOp, usize),
__1: (usize, usize, usize),
) -> Spanned<BinOp> {
let __start0 = __0.0.clone();
let __end0 = __0.0.clone();
let __temp0 = __action135(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action141(file_id, input, __temp0, __0, __1)
}
#[allow(unused_variables)]
fn __action171<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, Function<'input>, usize),
__1: (usize, usize, usize),
) -> Spanned<Function<'input>> {
let __start0 = __0.0.clone();
let __end0 = __0.0.clone();
let __temp0 = __action135(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action102(file_id, input, __temp0, __0, __1)
}
#[allow(unused_variables)]
fn __action172<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, Literal<'input>, usize),
__1: (usize, usize, usize),
) -> Spanned<Literal<'input>> {
let __start0 = __0.0.clone();
let __end0 = __0.0.clone();
let __temp0 = __action135(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action73(file_id, input, __temp0, __0, __1)
}
#[allow(unused_variables)]
fn __action173<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, BinOp, usize),
__1: (usize, usize, usize),
) -> Spanned<BinOp> {
let __start0 = __0.0.clone();
let __end0 = __0.0.clone();
let __temp0 = __action135(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action142(file_id, input, __temp0, __0, __1)
}
#[allow(unused_variables)]
fn __action174<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, BinOp, usize),
__1: (usize, usize, usize),
) -> Spanned<BinOp> {
let __start0 = __0.0.clone();
let __end0 = __0.0.clone();
let __temp0 = __action135(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action143(file_id, input, __temp0, __0, __1)
}
#[allow(unused_variables)]
fn __action175<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, BinOp, usize),
__1: (usize, usize, usize),
) -> Spanned<BinOp> {
let __start0 = __0.0.clone();
let __end0 = __0.0.clone();
let __temp0 = __action135(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action138(file_id, input, __temp0, __0, __1)
}
#[allow(unused_variables)]
fn __action176<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, RawExpr<'input>, usize),
__1: (usize, usize, usize),
) -> Spanned<RawExpr<'input>> {
let __start0 = __0.0.clone();
let __end0 = __0.0.clone();
let __temp0 = __action135(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action78(file_id, input, __temp0, __0, __1)
}
#[allow(unused_variables)]
fn __action177<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, &'input str, usize),
__1: (usize, usize, usize),
) -> Spanned<&'input str> {
let __start0 = __0.0.clone();
let __end0 = __0.0.clone();
let __temp0 = __action135(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action95(file_id, input, __temp0, __0, __1)
}
#[allow(unused_variables)]
fn __action178<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, RawExpr<'input>, usize),
__1: (usize, usize, usize),
) -> Spanned<RawExpr<'input>> {
let __start0 = __0.0.clone();
let __end0 = __0.0.clone();
let __temp0 = __action135(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action125(file_id, input, __temp0, __0, __1)
}
#[allow(unused_variables)]
fn __action179<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, RawExpr<'input>, usize),
__1: (usize, usize, usize),
) -> Spanned<RawExpr<'input>> {
let __start0 = __0.0.clone();
let __end0 = __0.0.clone();
let __temp0 = __action135(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action123(file_id, input, __temp0, __0, __1)
}
#[allow(unused_variables)]
fn __action180<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, RawExpr<'input>, usize),
__1: (usize, usize, usize),
) -> Spanned<RawExpr<'input>> {
let __start0 = __0.0.clone();
let __end0 = __0.0.clone();
let __temp0 = __action135(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action121(file_id, input, __temp0, __0, __1)
}
#[allow(unused_variables)]
fn __action181<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, RawExpr<'input>, usize),
__1: (usize, usize, usize),
) -> Spanned<RawExpr<'input>> {
let __start0 = __0.0.clone();
let __end0 = __0.0.clone();
let __temp0 = __action135(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action119(file_id, input, __temp0, __0, __1)
}
#[allow(unused_variables)]
fn __action182<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, RawExpr<'input>, usize),
__1: (usize, usize, usize),
) -> Spanned<RawExpr<'input>> {
let __start0 = __0.0.clone();
let __end0 = __0.0.clone();
let __temp0 = __action135(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action117(file_id, input, __temp0, __0, __1)
}
#[allow(unused_variables)]
fn __action183<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, RawExpr<'input>, usize),
__1: (usize, usize, usize),
) -> Spanned<RawExpr<'input>> {
let __start0 = __0.0.clone();
let __end0 = __0.0.clone();
let __temp0 = __action135(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action127(file_id, input, __temp0, __0, __1)
}
#[allow(unused_variables)]
fn __action184<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, Type, usize),
__1: (usize, usize, usize),
) -> Spanned<Type> {
let __start0 = __0.0.clone();
let __end0 = __0.0.clone();
let __temp0 = __action135(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action100(file_id, input, __temp0, __0, __1)
}
#[allow(unused_variables)]
fn __action185<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, RawExpr<'input>, usize),
__1: (usize, usize, usize),
) -> Spanned<RawExpr<'input>> {
let __start0 = __0.0.clone();
let __end0 = __0.0.clone();
let __temp0 = __action135(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action80(file_id, input, __temp0, __0, __1)
}
#[allow(unused_variables)]
fn __action186<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, UnaryOp, usize),
__1: (usize, usize, usize),
) -> Spanned<UnaryOp> {
let __start0 = __0.0.clone();
let __end0 = __0.0.clone();
let __temp0 = __action135(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action79(file_id, input, __temp0, __0, __1)
}
#[allow(unused_variables)]
fn __action187<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, BinOp, usize),
) -> Spanned<BinOp> {
let __start0 = __0.2.clone();
let __end0 = __0.2.clone();
let __temp0 = __action134(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action166(file_id, input, __0, __temp0)
}
#[allow(unused_variables)]
fn __action188<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, Vec<Arg<'input>>, usize),
) -> Spanned<Vec<Arg<'input>>> {
let __start0 = __0.2.clone();
let __end0 = __0.2.clone();
let __temp0 = __action134(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action167(file_id, input, __0, __temp0)
}
#[allow(unused_variables)]
fn __action189<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, Vec<Stmt<'input>>, usize),
) -> Spanned<Vec<Stmt<'input>>> {
let __start0 = __0.2.clone();
let __end0 = __0.2.clone();
let __temp0 = __action134(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action168(file_id, input, __0, __temp0)
}
#[allow(unused_variables)]
fn __action190<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, BinOp, usize),
) -> Spanned<BinOp> {
let __start0 = __0.2.clone();
let __end0 = __0.2.clone();
let __temp0 = __action134(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action169(file_id, input, __0, __temp0)
}
#[allow(unused_variables)]
fn __action191<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, BinOp, usize),
) -> Spanned<BinOp> {
let __start0 = __0.2.clone();
let __end0 = __0.2.clone();
let __temp0 = __action134(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action170(file_id, input, __0, __temp0)
}
#[allow(unused_variables)]
fn __action192<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, Function<'input>, usize),
) -> Spanned<Function<'input>> {
let __start0 = __0.2.clone();
let __end0 = __0.2.clone();
let __temp0 = __action134(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action171(file_id, input, __0, __temp0)
}
#[allow(unused_variables)]
fn __action193<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, Literal<'input>, usize),
) -> Spanned<Literal<'input>> {
let __start0 = __0.2.clone();
let __end0 = __0.2.clone();
let __temp0 = __action134(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action172(file_id, input, __0, __temp0)
}
#[allow(unused_variables)]
fn __action194<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, BinOp, usize),
) -> Spanned<BinOp> {
let __start0 = __0.2.clone();
let __end0 = __0.2.clone();
let __temp0 = __action134(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action173(file_id, input, __0, __temp0)
}
#[allow(unused_variables)]
fn __action195<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, BinOp, usize),
) -> Spanned<BinOp> {
let __start0 = __0.2.clone();
let __end0 = __0.2.clone();
let __temp0 = __action134(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action174(file_id, input, __0, __temp0)
}
#[allow(unused_variables)]
fn __action196<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, BinOp, usize),
) -> Spanned<BinOp> {
let __start0 = __0.2.clone();
let __end0 = __0.2.clone();
let __temp0 = __action134(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action175(file_id, input, __0, __temp0)
}
#[allow(unused_variables)]
fn __action197<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, RawExpr<'input>, usize),
) -> Spanned<RawExpr<'input>> {
let __start0 = __0.2.clone();
let __end0 = __0.2.clone();
let __temp0 = __action134(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action176(file_id, input, __0, __temp0)
}
#[allow(unused_variables)]
fn __action198<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, &'input str, usize),
) -> Spanned<&'input str> {
let __start0 = __0.2.clone();
let __end0 = __0.2.clone();
let __temp0 = __action134(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action177(file_id, input, __0, __temp0)
}
#[allow(unused_variables)]
fn __action199<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, RawExpr<'input>, usize),
) -> Spanned<RawExpr<'input>> {
let __start0 = __0.2.clone();
let __end0 = __0.2.clone();
let __temp0 = __action134(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action178(file_id, input, __0, __temp0)
}
#[allow(unused_variables)]
fn __action200<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, RawExpr<'input>, usize),
) -> Spanned<RawExpr<'input>> {
let __start0 = __0.2.clone();
let __end0 = __0.2.clone();
let __temp0 = __action134(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action179(file_id, input, __0, __temp0)
}
#[allow(unused_variables)]
fn __action201<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, RawExpr<'input>, usize),
) -> Spanned<RawExpr<'input>> {
let __start0 = __0.2.clone();
let __end0 = __0.2.clone();
let __temp0 = __action134(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action180(file_id, input, __0, __temp0)
}
#[allow(unused_variables)]
fn __action202<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, RawExpr<'input>, usize),
) -> Spanned<RawExpr<'input>> {
let __start0 = __0.2.clone();
let __end0 = __0.2.clone();
let __temp0 = __action134(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action181(file_id, input, __0, __temp0)
}
#[allow(unused_variables)]
fn __action203<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, RawExpr<'input>, usize),
) -> Spanned<RawExpr<'input>> {
let __start0 = __0.2.clone();
let __end0 = __0.2.clone();
let __temp0 = __action134(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action182(file_id, input, __0, __temp0)
}
#[allow(unused_variables)]
fn __action204<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, RawExpr<'input>, usize),
) -> Spanned<RawExpr<'input>> {
let __start0 = __0.2.clone();
let __end0 = __0.2.clone();
let __temp0 = __action134(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action183(file_id, input, __0, __temp0)
}
#[allow(unused_variables)]
fn __action205<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, Type, usize),
) -> Spanned<Type> {
let __start0 = __0.2.clone();
let __end0 = __0.2.clone();
let __temp0 = __action134(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action184(file_id, input, __0, __temp0)
}
#[allow(unused_variables)]
fn __action206<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, RawExpr<'input>, usize),
) -> Spanned<RawExpr<'input>> {
let __start0 = __0.2.clone();
let __end0 = __0.2.clone();
let __temp0 = __action134(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action185(file_id, input, __0, __temp0)
}
#[allow(unused_variables)]
fn __action207<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, UnaryOp, usize),
) -> Spanned<UnaryOp> {
let __start0 = __0.2.clone();
let __end0 = __0.2.clone();
let __temp0 = __action134(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action186(file_id, input, __0, __temp0)
}
#[allow(unused_variables)]
fn __action208<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, Arg<'input>, usize),
) -> Vec<Arg<'input>> {
let __start0 = __0.0.clone();
let __end0 = __0.2.clone();
let __temp0 = __action107(file_id, input, __0);
let __temp0 = (__start0, __temp0, __end0);
__action156(file_id, input, __temp0)
}
#[allow(unused_variables)]
fn __action209<'input>(
file_id: FileId,
input: &'input str,
__lookbehind: &usize,
__lookahead: &usize,
) -> Vec<Arg<'input>> {
let __start0 = __lookbehind.clone();
let __end0 = __lookahead.clone();
let __temp0 = __action108(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action156(file_id, input, __temp0)
}
#[allow(unused_variables)]
fn __action210<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, alloc::vec::Vec<Arg<'input>>, usize),
__1: (usize, Arg<'input>, usize),
) -> Vec<Arg<'input>> {
let __start0 = __1.0.clone();
let __end0 = __1.2.clone();
let __temp0 = __action107(file_id, input, __1);
let __temp0 = (__start0, __temp0, __end0);
__action157(file_id, input, __0, __temp0)
}
#[allow(unused_variables)]
fn __action211<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, alloc::vec::Vec<Arg<'input>>, usize),
) -> Vec<Arg<'input>> {
let __start0 = __0.2.clone();
let __end0 = __0.2.clone();
let __temp0 = __action108(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action157(file_id, input, __0, __temp0)
}
#[allow(unused_variables)]
fn __action212<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, Expr<'input>, usize),
) -> Vec<Expr<'input>> {
let __start0 = __0.0.clone();
let __end0 = __0.2.clone();
let __temp0 = __action129(file_id, input, __0);
let __temp0 = (__start0, __temp0, __end0);
__action160(file_id, input, __temp0)
}
#[allow(unused_variables)]
fn __action213<'input>(
file_id: FileId,
input: &'input str,
__lookbehind: &usize,
__lookahead: &usize,
) -> Vec<Expr<'input>> {
let __start0 = __lookbehind.clone();
let __end0 = __lookahead.clone();
let __temp0 = __action130(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action160(file_id, input, __temp0)
}
#[allow(unused_variables)]
fn __action214<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, alloc::vec::Vec<Expr<'input>>, usize),
__1: (usize, Expr<'input>, usize),
) -> Vec<Expr<'input>> {
let __start0 = __1.0.clone();
let __end0 = __1.2.clone();
let __temp0 = __action129(file_id, input, __1);
let __temp0 = (__start0, __temp0, __end0);
__action161(file_id, input, __0, __temp0)
}
#[allow(unused_variables)]
fn __action215<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, alloc::vec::Vec<Expr<'input>>, usize),
) -> Vec<Expr<'input>> {
let __start0 = __0.2.clone();
let __end0 = __0.2.clone();
let __temp0 = __action130(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action161(file_id, input, __0, __temp0)
}
#[allow(unused_variables)]
fn __action216<'input>(
file_id: FileId,
input: &'input str,
__lookbehind: &usize,
__lookahead: &usize,
) -> Program<'input> {
let __start0 = __lookbehind.clone();
let __end0 = __lookahead.clone();
let __temp0 = __action103(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action1(file_id, input, __temp0)
}
#[allow(unused_variables)]
fn __action217<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, alloc::vec::Vec<Item<'input>>, usize),
) -> Program<'input> {
let __start0 = __0.0.clone();
let __end0 = __0.2.clone();
let __temp0 = __action104(file_id, input, __0);
let __temp0 = (__start0, __temp0, __end0);
__action1(file_id, input, __temp0)
}
#[allow(unused_variables)]
fn __action218<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, Stmt<'input>, usize),
) -> Vec<Stmt<'input>> {
let __start0 = __0.0.clone();
let __end0 = __0.2.clone();
let __temp0 = __action112(file_id, input, __0);
let __temp0 = (__start0, __temp0, __end0);
__action164(file_id, input, __temp0)
}
#[allow(unused_variables)]
fn __action219<'input>(
file_id: FileId,
input: &'input str,
__lookbehind: &usize,
__lookahead: &usize,
) -> Vec<Stmt<'input>> {
let __start0 = __lookbehind.clone();
let __end0 = __lookahead.clone();
let __temp0 = __action113(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action164(file_id, input, __temp0)
}
#[allow(unused_variables)]
fn __action220<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, alloc::vec::Vec<Stmt<'input>>, usize),
__1: (usize, Stmt<'input>, usize),
) -> Vec<Stmt<'input>> {
let __start0 = __1.0.clone();
let __end0 = __1.2.clone();
let __temp0 = __action112(file_id, input, __1);
let __temp0 = (__start0, __temp0, __end0);
__action165(file_id, input, __0, __temp0)
}
#[allow(unused_variables)]
fn __action221<'input>(
file_id: FileId,
input: &'input str,
__0: (usize, alloc::vec::Vec<Stmt<'input>>, usize),
) -> Vec<Stmt<'input>> {
let __start0 = __0.2.clone();
let __end0 = __0.2.clone();
let __temp0 = __action113(file_id, input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action165(file_id, input, __0, __temp0)
}
pub trait __ToTriple<'input> {
fn to_triple(
value: Self,
) -> Result<
(usize, Token<'input>, usize),
__lalrpop_util::ParseError<usize, Token<'input>, &'static str>,
>;
}
impl<'input> __ToTriple<'input> for (usize, Token<'input>, usize) {
fn to_triple(
value: Self,
) -> Result<
(usize, Token<'input>, usize),
__lalrpop_util::ParseError<usize, Token<'input>, &'static str>,
> {
Ok(value)
}
}
impl<'input> __ToTriple<'input> for Result<(usize, Token<'input>, usize), &'static str> {
fn to_triple(
value: Self,
) -> Result<
(usize, Token<'input>, usize),
__lalrpop_util::ParseError<usize, Token<'input>, &'static str>,
> {
match value {
Ok(v) => Ok(v),
Err(error) => Err(__lalrpop_util::ParseError::User { error }),
}
}
}