// auto-generated: "lalrpop 0.17.0" // sha256: b82840a51b10edc8c46329da103254cdd83b8f03b21f19f5392bd21f8f459ea #![allow(unused)] use std::str::FromStr; use crate::parser::ast::*; use crate::prelude::*; use crate::parser::lexer::{SpannedToken, Token}; #[allow(unused_extern_crates)] extern crate lalrpop_util as __lalrpop_util; #[allow(unused_imports)] use self::__lalrpop_util::state_machine as __state_machine; #[cfg_attr(rustfmt, rustfmt_skip)] mod __parse__Pipeline { #![allow(non_snake_case, non_camel_case_types, unused_mut, unused_variables, unused_imports, unused_parens)] use std::str::FromStr; use crate::parser::ast::*; use crate::prelude::*; use crate::parser::lexer::{SpannedToken, Token}; #[allow(unused_extern_crates)] extern crate lalrpop_util as __lalrpop_util; #[allow(unused_imports)] use self::__lalrpop_util::state_machine as __state_machine; use super::__ToTriple; #[allow(dead_code)] pub enum __Symbol<'input> { Variant0(SpannedToken<'input>), Variant1(::std::vec::Vec>), Variant2(String), Variant3(::std::vec::Vec), Variant4(ParsedCommand), Variant5(::std::vec::Vec), Variant6(Expression), Variant7(BarePath), Variant8(::std::vec::Vec), Variant9(Flag), Variant10(i64), Variant11(Operator), Variant12(Pipeline), Variant13(Variable), } const __ACTION: &'static [i8] = &[ // State 0 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, // State 1 0, 20, 21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 22, 0, 23, 0, 24, 0, 25, -19, 0, // State 2 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, 0, // State 3 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // State 4 -14, -14, -14, -14, 0, 0, 29, -14, -14, -14, -14, -14, -14, -14, 0, -14, 0, -14, 0, -14, -14, -14, // State 5 -50, -50, -50, -50, 0, 0, -50, -50, -50, -50, -50, -50, -50, -50, 0, -50, 0, -50, 0, -50, -50, -50, // State 6 -44, -44, -44, -44, 0, 0, 0, -44, -44, -44, -44, -44, -44, -44, 0, -44, 0, -44, 0, -44, -44, -44, // State 7 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -21, 0, // State 8 -51, -51, -51, -51, 0, 0, -51, -51, -51, -51, -51, -51, -51, -51, 0, -51, 0, -51, 0, -51, -51, -51, // State 9 31, -24, -24, 0, 0, 0, 0, 32, 33, 34, 35, 36, -24, -24, 0, -24, 0, -24, 0, -24, -24, 0, // State 10 0, 20, 21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 22, 0, 23, 0, 24, 0, 25, -20, 0, // State 11 -30, -30, -30, -30, 0, 0, -30, -30, -30, -30, -30, -30, -30, -30, 0, -30, 0, -30, 0, -30, -30, -30, // State 12 -13, -13, -13, -13, 0, 0, -13, -13, -13, -13, -13, -13, -13, -13, 0, -13, 0, -13, 0, -13, -13, -13, // State 13 -12, -12, -12, -12, 0, 0, -12, -12, -12, -12, -12, -12, -12, -12, 0, -12, 0, -12, 0, -12, -12, -12, // State 14 -22, -22, -22, -22, 0, 0, 0, -22, -22, -22, -22, -22, -22, -22, 0, -22, 0, -22, 0, -22, -22, -22, // State 15 -23, -23, -23, -23, 0, 0, 0, -23, -23, -23, -23, -23, -23, -23, 0, -23, 0, -23, 0, -23, -23, -23, // State 16 -29, -29, -29, -29, 0, 0, -29, -29, -29, -29, -29, -29, -29, -29, 0, -29, 0, -29, 0, -29, -29, -29, // State 17 -31, -31, -31, -31, 0, 0, -31, -31, -31, -31, -31, -31, -31, -31, 0, -31, 0, -31, 0, -31, -31, -31, // State 18 -43, -43, -43, -43, 0, 0, 39, -43, -43, -43, -43, -43, -43, -43, 0, -43, 0, -43, 0, -43, -43, -43, // State 19 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 40, 0, 0, 0, // State 20 0, 20, 21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 22, 0, 23, 0, 24, 0, 25, 0, 0, // State 21 -48, -48, -48, -48, 0, 0, -48, -48, -48, -48, -48, -48, -48, -48, 0, -48, 0, -48, 0, -48, -48, -48, // State 22 -28, -28, -28, -28, 0, 0, -28, -28, -28, -28, -28, -28, -28, -28, 0, -28, 0, -28, 0, -28, -28, -28, // State 23 -47, -47, -47, -47, 0, 0, -47, -47, -47, -47, -47, -47, -47, -47, 0, -47, 0, -47, 0, -47, -47, -47, // State 24 0, 20, 21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 22, 0, 23, 0, 24, 0, 25, 0, 0, // State 25 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 46, 0, // State 26 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, // State 27 -15, -15, -15, -15, 0, 0, 48, -15, -15, -15, -15, -15, -15, -15, 0, -15, 0, -15, 0, -15, -15, -15, // State 28 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 49, 0, 0, 0, 0, 0, 0, 0, // State 29 0, 20, 21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 22, 0, 23, 0, 24, 0, 25, 0, 0, // State 30 0, -35, -35, 0, 0, 0, 0, 0, 0, 0, 0, 0, -35, -35, 0, -35, 0, -35, 0, -35, 0, 0, // State 31 0, -36, -36, 0, 0, 0, 0, 0, 0, 0, 0, 0, -36, -36, 0, -36, 0, -36, 0, -36, 0, 0, // State 32 0, -38, -38, 0, 0, 0, 0, 0, 0, 0, 0, 0, -38, -38, 0, -38, 0, -38, 0, -38, 0, 0, // State 33 0, -34, -34, 0, 0, 0, 0, 0, 0, 0, 0, 0, -34, -34, 0, -34, 0, -34, 0, -34, 0, 0, // State 34 0, -37, -37, 0, 0, 0, 0, 0, 0, 0, 0, 0, -37, -37, 0, -37, 0, -37, 0, -37, 0, 0, // State 35 0, -39, -39, 0, 0, 0, 0, 0, 0, 0, 0, 0, -39, -39, 0, -39, 0, -39, 0, -39, 0, 0, // State 36 0, -25, -25, 0, 0, 0, 0, 0, 0, 0, 0, 0, -25, -25, 0, -25, 0, -25, 0, -25, -25, 0, // State 37 -42, -42, -42, -42, 0, 0, 51, -42, -42, -42, -42, -42, -42, -42, 0, -42, 0, -42, 0, -42, -42, -42, // State 38 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 22, 54, 0, 0, 24, 0, 0, 0, 0, // State 39 -49, -49, -49, -49, 0, 0, -49, -49, -49, -49, -49, -49, -49, -49, 0, -49, 0, -49, 0, -49, -49, -49, // State 40 0, 0, 0, 55, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // State 41 31, 0, 0, 0, 0, 0, 0, 32, 33, 34, 35, 36, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // State 42 -13, 0, 0, 56, 0, 0, -13, -13, -13, -13, -13, -13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // State 43 -50, 0, 0, 0, 0, 0, -50, -50, -50, -50, -50, -50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 57, // State 44 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 58, // State 45 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, // State 46 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -10, 0, // State 47 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 60, 0, 0, 0, 0, 0, 0, 0, // State 48 -4, -4, -4, -4, 0, 0, -4, -4, -4, -4, -4, -4, -4, -4, 0, -4, 0, -4, 0, -4, -4, -4, // State 49 0, 0, 0, -16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -16, -16, // State 50 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 22, 54, 0, 0, 24, 0, 0, 0, 0, // State 51 -7, -7, -7, -7, 0, 0, -7, -7, -7, -7, -7, -7, -7, -7, 0, -7, 0, -7, 0, -7, -7, -7, // State 52 -33, -33, -33, -33, 0, 0, -33, -33, -33, -33, -33, -33, -33, -33, 0, -33, 0, -33, 0, -33, -33, -33, // State 53 -32, -32, -32, -32, 0, 0, -32, -32, -32, -32, -32, -32, -32, -32, 0, -32, 0, -32, 0, -32, -32, -32, // State 54 -41, -41, -41, -41, 0, 0, -41, -41, -41, -41, -41, -41, -41, -41, 0, -41, 0, -41, 0, -41, -41, -41, // State 55 -40, -40, -40, -40, 0, 0, -40, -40, -40, -40, -40, -40, -40, -40, 0, -40, 0, -40, 0, -40, -40, -40, // State 56 -17, -17, -17, -17, 0, 0, -17, -17, -17, -17, -17, -17, -17, -17, 0, -17, 0, -17, 0, -17, -17, -17, // State 57 -18, -18, -18, -18, 0, 0, -18, -18, -18, -18, -18, -18, -18, -18, 0, -18, 0, -18, 0, -18, -18, -18, // State 58 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -11, 0, // State 59 -5, -5, -5, -5, 0, 0, -5, -5, -5, -5, -5, -5, -5, -5, 0, -5, 0, -5, 0, -5, -5, -5, // State 60 -8, -8, -8, -8, 0, 0, -8, -8, -8, -8, -8, -8, -8, -8, 0, -8, 0, -8, 0, -8, -8, -8, ]; const __EOF_ACTION: &'static [i8] = &[ // State 0 0, // State 1 -19, // State 2 -45, // State 3 -52, // State 4 -14, // State 5 -50, // State 6 -44, // State 7 -21, // State 8 -51, // State 9 -24, // State 10 -20, // State 11 -30, // State 12 -13, // State 13 -12, // State 14 -22, // State 15 -23, // State 16 -29, // State 17 -31, // State 18 -43, // State 19 0, // State 20 0, // State 21 -48, // State 22 -28, // State 23 -47, // State 24 0, // State 25 -46, // State 26 0, // State 27 -15, // State 28 0, // State 29 0, // State 30 0, // State 31 0, // State 32 0, // State 33 0, // State 34 0, // State 35 0, // State 36 -25, // State 37 -42, // State 38 0, // State 39 -49, // State 40 0, // State 41 0, // State 42 0, // State 43 0, // State 44 0, // State 45 0, // State 46 -10, // State 47 0, // State 48 -4, // State 49 -16, // State 50 0, // State 51 -7, // State 52 -33, // State 53 -32, // State 54 -41, // State 55 -40, // State 56 -17, // State 57 -18, // State 58 -11, // State 59 -5, // State 60 -8, ]; const __GOTO: &'static [i8] = &[ // State 0 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, // State 1 0, 0, 0, 0, 0, 0, 0, 6, 7, 8, 9, 0, 10, 11, 0, 12, 13, 0, 0, 14, 15, 16, 0, 17, 18, 19, 0, // State 2 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, // State 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, // State 4 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, // State 5 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // State 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, // State 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, 0, // State 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, // State 9 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 0, 0, 0, 0, 0, 0, 0, 0, // State 10 0, 0, 0, 0, 0, 0, 0, 6, 7, 0, 9, 0, 37, 0, 0, 12, 13, 0, 0, 14, 15, 16, 0, 17, 18, 19, 0, // State 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, // State 12 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // State 13 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // State 14 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // State 15 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // State 16 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // State 17 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // State 18 0, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // State 19 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // State 20 0, 0, 0, 0, 0, 0, 0, 6, 7, 41, 9, 0, 42, 0, 0, 12, 43, 0, 0, 14, 15, 16, 0, 17, 18, 19, 0, // State 21 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // State 22 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // State 23 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // State 24 0, 0, 0, 0, 0, 0, 0, 44, 7, 45, 9, 0, 42, 0, 0, 12, 13, 0, 0, 14, 15, 16, 0, 17, 18, 19, 0, // State 25 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // State 26 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 47, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // State 27 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // State 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, // State 29 0, 0, 0, 0, 0, 0, 0, 6, 7, 0, 9, 0, 50, 0, 0, 12, 13, 0, 0, 14, 15, 16, 0, 17, 18, 19, 0, // State 30 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // State 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, // State 32 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // State 33 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // State 34 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // State 35 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // State 36 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // State 37 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // State 38 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 52, 0, 0, 0, 0, 0, 53, 0, 0, 0, // State 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, // State 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, // State 41 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 0, 0, 0, 0, 0, 0, 0, 0, // State 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, // State 43 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // State 44 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // State 45 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 59, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // State 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, // State 47 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // State 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, // State 49 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // State 50 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 61, 0, 0, 0, 0, 0, 53, 0, 0, 0, // State 51 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // State 52 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // State 53 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // State 54 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // State 55 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // State 56 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // State 57 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // State 58 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // State 59 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // State 60 0, 0, 0, 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 __expected_tokens(__state: usize) -> Vec<::std::string::String> { const __TERMINAL: &'static [&'static str] = &[ r###""!=""###, r###""$""###, r###""(""###, r###"")""###, r###""-""###, r###""--""###, r###"".""###, r###""<""###, r###""<=""###, r###""==""###, r###"">""###, r###"">=""###, r###""bare""###, r###""dqstring""###, r###""member""###, r###""num""###, r###""size""###, r###""sqstring""###, r###""variable""###, r###""{""###, r###""|""###, r###""}""###, ]; __ACTION[(__state * 22)..].iter().zip(__TERMINAL).filter_map(|(&state, terminal)| { if state == 0 { None } else { Some(terminal.to_string()) } }).collect() } pub struct __StateMachine<'input> where { __phantom: ::std::marker::PhantomData<(&'input ())>, } impl<'input> __state_machine::ParserDefinition for __StateMachine<'input> where { type Location = usize; type Error = ShellError; type Token = SpannedToken<'input>; type TokenIndex = usize; type Symbol = __Symbol<'input>; type Success = Pipeline; type StateIndex = i8; type Action = i8; type ReduceIndex = i8; 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 { __token_to_integer(token, ::std::marker::PhantomData::<(&())>) } #[inline] fn action(&self, state: i8, integer: usize) -> i8 { __ACTION[(state as usize) * 22 + integer] } #[inline] fn error_action(&self, state: i8) -> i8 { __ACTION[(state as usize) * 22 + (22 - 1)] } #[inline] fn eof_action(&self, state: i8) -> i8 { __EOF_ACTION[state as usize] } #[inline] fn goto(&self, state: i8, nt: usize) -> i8 { __GOTO[(state as usize) * 27 + nt] - 1 } fn token_to_symbol(&self, token_index: usize, token: Self::Token) -> Self::Symbol { __token_to_symbol(token_index, token, ::std::marker::PhantomData::<(&())>) } fn expected_tokens(&self, state: i8) -> Vec { __expected_tokens(state as usize) } #[inline] fn uses_error_recovery(&self) -> bool { false } #[inline] fn error_recovery_symbol( &self, recovery: __state_machine::ErrorRecovery, ) -> Self::Symbol { panic!("error recovery not enabled for this grammar") } fn reduce( &mut self, action: i8, start_location: Option<&Self::Location>, states: &mut Vec, symbols: &mut Vec<__state_machine::SymbolTriple>, ) -> Option<__state_machine::ParseResult> { __reduce( action, start_location, states, symbols, ::std::marker::PhantomData::<(&())>, ) } fn simulate_reduce(&self, action: i8) -> __state_machine::SimulatedReduce { __simulate_reduce(action, ::std::marker::PhantomData::<(&())>) } } fn __token_to_integer< 'input, >( __token: &SpannedToken<'input>, _: ::std::marker::PhantomData<(&'input ())>, ) -> Option { match *__token { SpannedToken { token: Token::OpNeq, .. } if true => Some(0), SpannedToken { token: Token::Dollar, .. } if true => Some(1), SpannedToken { token: Token::OpenParen, .. } if true => Some(2), SpannedToken { token: Token::CloseParen, .. } if true => Some(3), SpannedToken { token: Token::Dash, .. } if true => Some(4), SpannedToken { token: Token::DashDash, .. } if true => Some(5), SpannedToken { token: Token::Dot, .. } if true => Some(6), SpannedToken { token: Token::OpLt, .. } if true => Some(7), SpannedToken { token: Token::OpLte, .. } if true => Some(8), SpannedToken { token: Token::OpEq, .. } if true => Some(9), SpannedToken { token: Token::OpGt, .. } if true => Some(10), SpannedToken { token: Token::OpGte, .. } if true => Some(11), SpannedToken { token: Token::Bare, .. } if true => Some(12), SpannedToken { token: Token::DQString, .. } if true => Some(13), SpannedToken { token: Token::Member, .. } if true => Some(14), SpannedToken { token: Token::Num, .. } if true => Some(15), SpannedToken { token: Token::Size, .. } if true => Some(16), SpannedToken { token: Token::SQString, .. } if true => Some(17), SpannedToken { token: Token::Variable, .. } if true => Some(18), SpannedToken { token: Token::OpenBrace, .. } if true => Some(19), SpannedToken { token: Token::Pipe, .. } if true => Some(20), SpannedToken { token: Token::CloseBrace, .. } if true => Some(21), _ => None, } } fn __token_to_symbol< 'input, >( __token_index: usize, __token: SpannedToken<'input>, _: ::std::marker::PhantomData<(&'input ())>, ) -> __Symbol<'input> { match __token_index { 0 => match __token { __tok @ SpannedToken { token: Token::OpNeq, .. } => __Symbol::Variant0((__tok)), _ => unreachable!(), }, 1 => match __token { __tok @ SpannedToken { token: Token::Dollar, .. } => __Symbol::Variant0((__tok)), _ => unreachable!(), }, 2 => match __token { __tok @ SpannedToken { token: Token::OpenParen, .. } => __Symbol::Variant0((__tok)), _ => unreachable!(), }, 3 => match __token { __tok @ SpannedToken { token: Token::CloseParen, .. } => __Symbol::Variant0((__tok)), _ => unreachable!(), }, 4 => match __token { __tok @ SpannedToken { token: Token::Dash, .. } => __Symbol::Variant0((__tok)), _ => unreachable!(), }, 5 => match __token { __tok @ SpannedToken { token: Token::DashDash, .. } => __Symbol::Variant0((__tok)), _ => unreachable!(), }, 6 => match __token { __tok @ SpannedToken { token: Token::Dot, .. } => __Symbol::Variant0((__tok)), _ => unreachable!(), }, 7 => match __token { __tok @ SpannedToken { token: Token::OpLt, .. } => __Symbol::Variant0((__tok)), _ => unreachable!(), }, 8 => match __token { __tok @ SpannedToken { token: Token::OpLte, .. } => __Symbol::Variant0((__tok)), _ => unreachable!(), }, 9 => match __token { __tok @ SpannedToken { token: Token::OpEq, .. } => __Symbol::Variant0((__tok)), _ => unreachable!(), }, 10 => match __token { __tok @ SpannedToken { token: Token::OpGt, .. } => __Symbol::Variant0((__tok)), _ => unreachable!(), }, 11 => match __token { __tok @ SpannedToken { token: Token::OpGte, .. } => __Symbol::Variant0((__tok)), _ => unreachable!(), }, 12 => match __token { __tok @ SpannedToken { token: Token::Bare, .. } => __Symbol::Variant0((__tok)), _ => unreachable!(), }, 13 => match __token { __tok @ SpannedToken { token: Token::DQString, .. } => __Symbol::Variant0((__tok)), _ => unreachable!(), }, 14 => match __token { __tok @ SpannedToken { token: Token::Member, .. } => __Symbol::Variant0((__tok)), _ => unreachable!(), }, 15 => match __token { __tok @ SpannedToken { token: Token::Num, .. } => __Symbol::Variant0((__tok)), _ => unreachable!(), }, 16 => match __token { __tok @ SpannedToken { token: Token::Size, .. } => __Symbol::Variant0((__tok)), _ => unreachable!(), }, 17 => match __token { __tok @ SpannedToken { token: Token::SQString, .. } => __Symbol::Variant0((__tok)), _ => unreachable!(), }, 18 => match __token { __tok @ SpannedToken { token: Token::Variable, .. } => __Symbol::Variant0((__tok)), _ => unreachable!(), }, 19 => match __token { __tok @ SpannedToken { token: Token::OpenBrace, .. } => __Symbol::Variant0((__tok)), _ => unreachable!(), }, 20 => match __token { __tok @ SpannedToken { token: Token::Pipe, .. } => __Symbol::Variant0((__tok)), _ => unreachable!(), }, 21 => match __token { __tok @ SpannedToken { token: Token::CloseBrace, .. } => __Symbol::Variant0((__tok)), _ => unreachable!(), }, _ => unreachable!(), } } fn __simulate_reduce< 'input, >( __reduce_index: i8, _: ::std::marker::PhantomData<(&'input ())>, ) -> __state_machine::SimulatedReduce<__StateMachine<'input>> { match __reduce_index { 0 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 2, nonterminal_produced: 0, } } 1 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 0, nonterminal_produced: 1, } } 2 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 1, nonterminal_produced: 1, } } 3 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 2, nonterminal_produced: 2, } } 4 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 3, nonterminal_produced: 2, } } 5 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 2, nonterminal_produced: 3, } } 6 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 2, nonterminal_produced: 4, } } 7 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 3, nonterminal_produced: 4, } } 8 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 2, nonterminal_produced: 5, } } 9 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 2, nonterminal_produced: 6, } } 10 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 3, nonterminal_produced: 6, } } 11 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 1, nonterminal_produced: 7, } } 12 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 1, nonterminal_produced: 7, } } 13 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 1, nonterminal_produced: 8, } } 14 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 2, nonterminal_produced: 8, } } 15 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 3, nonterminal_produced: 9, } } 16 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 3, nonterminal_produced: 10, } } 17 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 3, nonterminal_produced: 10, } } 18 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 1, nonterminal_produced: 11, } } 19 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 2, nonterminal_produced: 11, } } 20 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 2, nonterminal_produced: 11, } } 21 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 1, nonterminal_produced: 12, } } 22 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 1, nonterminal_produced: 12, } } 23 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 1, nonterminal_produced: 13, } } 24 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 2, nonterminal_produced: 13, } } 25 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 2, nonterminal_produced: 14, } } 26 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 2, nonterminal_produced: 14, } } 27 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 1, nonterminal_produced: 15, } } 28 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 1, nonterminal_produced: 16, } } 29 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 1, nonterminal_produced: 16, } } 30 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 1, nonterminal_produced: 16, } } 31 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 1, nonterminal_produced: 17, } } 32 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 1, nonterminal_produced: 17, } } 33 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 1, nonterminal_produced: 18, } } 34 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 1, nonterminal_produced: 18, } } 35 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 1, nonterminal_produced: 18, } } 36 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 1, nonterminal_produced: 18, } } 37 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 1, nonterminal_produced: 18, } } 38 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 1, nonterminal_produced: 18, } } 39 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 3, nonterminal_produced: 19, } } 40 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 3, nonterminal_produced: 19, } } 41 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 2, nonterminal_produced: 20, } } 42 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 1, nonterminal_produced: 21, } } 43 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 1, nonterminal_produced: 21, } } 44 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 1, nonterminal_produced: 22, } } 45 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 2, nonterminal_produced: 22, } } 46 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 1, nonterminal_produced: 23, } } 47 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 1, nonterminal_produced: 23, } } 48 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 2, nonterminal_produced: 24, } } 49 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 1, nonterminal_produced: 25, } } 50 => { __state_machine::SimulatedReduce::Reduce { states_to_pop: 1, nonterminal_produced: 25, } } 51 => __state_machine::SimulatedReduce::Accept, _ => panic!("invalid reduction index {}", __reduce_index) } } pub struct PipelineParser { _priv: (), } impl PipelineParser { pub fn new() -> PipelineParser { PipelineParser { _priv: (), } } #[allow(dead_code)] pub fn parse< 'input, __TOKEN: __ToTriple<'input, >, __TOKENS: IntoIterator, >( &self, __tokens0: __TOKENS, ) -> Result, ShellError>> { let __tokens = __tokens0.into_iter(); let mut __tokens = __tokens.map(|t| __ToTriple::to_triple(t)); let __r = __state_machine::Parser::drive( __StateMachine { __phantom: ::std::marker::PhantomData::<(&())>, }, __tokens, ); __r } } pub(crate) fn __reduce< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> Option, ShellError>>> { let (__pop_states, __nonterminal) = match __action { 0 => { __reduce0(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 1 => { __reduce1(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 2 => { __reduce2(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 3 => { __reduce3(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 4 => { __reduce4(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 5 => { __reduce5(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 6 => { __reduce6(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 7 => { __reduce7(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 8 => { __reduce8(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 9 => { __reduce9(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 10 => { __reduce10(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 11 => { __reduce11(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 12 => { __reduce12(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 13 => { __reduce13(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 14 => { __reduce14(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 15 => { __reduce15(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 16 => { __reduce16(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 17 => { __reduce17(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 18 => { __reduce18(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 19 => { __reduce19(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 20 => { __reduce20(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 21 => { __reduce21(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 22 => { __reduce22(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 23 => { __reduce23(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 24 => { __reduce24(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 25 => { __reduce25(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 26 => { __reduce26(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 27 => { __reduce27(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 28 => { __reduce28(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 29 => { __reduce29(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 30 => { __reduce30(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 31 => { __reduce31(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 32 => { __reduce32(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 33 => { __reduce33(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 34 => { __reduce34(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 35 => { __reduce35(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 36 => { __reduce36(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 37 => { __reduce37(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 38 => { __reduce38(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 39 => { __reduce39(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 40 => { __reduce40(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 41 => { __reduce41(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 42 => { __reduce42(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 43 => { __reduce43(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 44 => { __reduce44(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 45 => { __reduce45(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 46 => { __reduce46(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 47 => { __reduce47(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 48 => { __reduce48(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 49 => { __reduce49(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 50 => { __reduce50(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>) } 51 => { // __Pipeline = Pipeline => ActionFn(0); let __sym0 = __pop_Variant12(__symbols); let __start = __sym0.0.clone(); let __end = __sym0.2.clone(); let __nt = super::__action0::<>(__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() as usize; let __next_state = __GOTO[__state * 27 + __nonterminal] - 1; __states.push(__next_state); None } fn __pop_Variant7< 'input, >( __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)> ) -> (usize, BarePath, usize) { match __symbols.pop().unwrap() { (__l, __Symbol::Variant7(__v), __r) => (__l, __v, __r), _ => panic!("symbol type mismatch") } } fn __pop_Variant6< 'input, >( __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)> ) -> (usize, Expression, usize) { match __symbols.pop().unwrap() { (__l, __Symbol::Variant6(__v), __r) => (__l, __v, __r), _ => panic!("symbol type mismatch") } } fn __pop_Variant9< 'input, >( __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)> ) -> (usize, Flag, usize) { match __symbols.pop().unwrap() { (__l, __Symbol::Variant9(__v), __r) => (__l, __v, __r), _ => panic!("symbol type mismatch") } } fn __pop_Variant11< 'input, >( __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)> ) -> (usize, Operator, usize) { match __symbols.pop().unwrap() { (__l, __Symbol::Variant11(__v), __r) => (__l, __v, __r), _ => panic!("symbol type mismatch") } } fn __pop_Variant4< 'input, >( __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)> ) -> (usize, ParsedCommand, usize) { match __symbols.pop().unwrap() { (__l, __Symbol::Variant4(__v), __r) => (__l, __v, __r), _ => panic!("symbol type mismatch") } } fn __pop_Variant12< 'input, >( __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)> ) -> (usize, Pipeline, usize) { match __symbols.pop().unwrap() { (__l, __Symbol::Variant12(__v), __r) => (__l, __v, __r), _ => panic!("symbol type mismatch") } } fn __pop_Variant0< 'input, >( __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)> ) -> (usize, SpannedToken<'input>, usize) { match __symbols.pop().unwrap() { (__l, __Symbol::Variant0(__v), __r) => (__l, __v, __r), _ => panic!("symbol type mismatch") } } fn __pop_Variant2< 'input, >( __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)> ) -> (usize, String, usize) { match __symbols.pop().unwrap() { (__l, __Symbol::Variant2(__v), __r) => (__l, __v, __r), _ => panic!("symbol type mismatch") } } fn __pop_Variant13< 'input, >( __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)> ) -> (usize, Variable, usize) { match __symbols.pop().unwrap() { (__l, __Symbol::Variant13(__v), __r) => (__l, __v, __r), _ => panic!("symbol type mismatch") } } fn __pop_Variant10< 'input, >( __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)> ) -> (usize, i64, usize) { match __symbols.pop().unwrap() { (__l, __Symbol::Variant10(__v), __r) => (__l, __v, __r), _ => panic!("symbol type mismatch") } } fn __pop_Variant8< 'input, >( __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)> ) -> (usize, ::std::vec::Vec, usize) { match __symbols.pop().unwrap() { (__l, __Symbol::Variant8(__v), __r) => (__l, __v, __r), _ => panic!("symbol type mismatch") } } fn __pop_Variant5< 'input, >( __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)> ) -> (usize, ::std::vec::Vec, usize) { match __symbols.pop().unwrap() { (__l, __Symbol::Variant5(__v), __r) => (__l, __v, __r), _ => panic!("symbol type mismatch") } } fn __pop_Variant1< 'input, >( __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)> ) -> (usize, ::std::vec::Vec>, usize) { match __symbols.pop().unwrap() { (__l, __Symbol::Variant1(__v), __r) => (__l, __v, __r), _ => panic!("symbol type mismatch") } } fn __pop_Variant3< 'input, >( __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)> ) -> (usize, ::std::vec::Vec, usize) { match __symbols.pop().unwrap() { (__l, __Symbol::Variant3(__v), __r) => (__l, __v, __r), _ => panic!("symbol type mismatch") } } pub(crate) fn __reduce0< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // ("." <"member">) = ".", "member" => ActionFn(40); let __sym1 = __pop_Variant0(__symbols); let __sym0 = __pop_Variant0(__symbols); let __start = __sym0.0.clone(); let __end = __sym1.2.clone(); let __nt = super::__action40::<>(__sym0, __sym1); __symbols.push((__start, __Symbol::Variant0(__nt), __end)); (2, 0) } pub(crate) fn __reduce1< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // ("." <"member">)* = => ActionFn(38); let __start = __symbols.last().map(|s| s.2.clone()).unwrap_or_default(); let __end = __lookahead_start.cloned().unwrap_or_else(|| __start.clone()); let __nt = super::__action38::<>(&__start, &__end); __symbols.push((__start, __Symbol::Variant1(__nt), __end)); (0, 1) } pub(crate) fn __reduce2< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // ("." <"member">)* = ("." <"member">)+ => ActionFn(39); let __sym0 = __pop_Variant1(__symbols); let __start = __sym0.0.clone(); let __end = __sym0.2.clone(); let __nt = super::__action39::<>(__sym0); __symbols.push((__start, __Symbol::Variant1(__nt), __end)); (1, 1) } pub(crate) fn __reduce3< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // ("." <"member">)+ = ".", "member" => ActionFn(51); let __sym1 = __pop_Variant0(__symbols); let __sym0 = __pop_Variant0(__symbols); let __start = __sym0.0.clone(); let __end = __sym1.2.clone(); let __nt = super::__action51::<>(__sym0, __sym1); __symbols.push((__start, __Symbol::Variant1(__nt), __end)); (2, 2) } pub(crate) fn __reduce4< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // ("." <"member">)+ = ("." <"member">)+, ".", "member" => ActionFn(52); let __sym2 = __pop_Variant0(__symbols); let __sym1 = __pop_Variant0(__symbols); let __sym0 = __pop_Variant1(__symbols); let __start = __sym0.0.clone(); let __end = __sym2.2.clone(); let __nt = super::__action52::<>(__sym0, __sym1, __sym2); __symbols.push((__start, __Symbol::Variant1(__nt), __end)); (3, 2) } pub(crate) fn __reduce5< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // ("." ) = ".", Member => ActionFn(43); let __sym1 = __pop_Variant2(__symbols); let __sym0 = __pop_Variant0(__symbols); let __start = __sym0.0.clone(); let __end = __sym1.2.clone(); let __nt = super::__action43::<>(__sym0, __sym1); __symbols.push((__start, __Symbol::Variant2(__nt), __end)); (2, 3) } pub(crate) fn __reduce6< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // ("." )+ = ".", Member => ActionFn(55); let __sym1 = __pop_Variant2(__symbols); let __sym0 = __pop_Variant0(__symbols); let __start = __sym0.0.clone(); let __end = __sym1.2.clone(); let __nt = super::__action55::<>(__sym0, __sym1); __symbols.push((__start, __Symbol::Variant3(__nt), __end)); (2, 4) } pub(crate) fn __reduce7< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // ("." )+ = ("." )+, ".", Member => ActionFn(56); let __sym2 = __pop_Variant2(__symbols); let __sym1 = __pop_Variant0(__symbols); let __sym0 = __pop_Variant3(__symbols); let __start = __sym0.0.clone(); let __end = __sym2.2.clone(); let __nt = super::__action56::<>(__sym0, __sym1, __sym2); __symbols.push((__start, __Symbol::Variant3(__nt), __end)); (3, 4) } pub(crate) fn __reduce8< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // ("|" ) = "|", Command => ActionFn(48); let __sym1 = __pop_Variant4(__symbols); let __sym0 = __pop_Variant0(__symbols); let __start = __sym0.0.clone(); let __end = __sym1.2.clone(); let __nt = super::__action48::<>(__sym0, __sym1); __symbols.push((__start, __Symbol::Variant4(__nt), __end)); (2, 5) } pub(crate) fn __reduce9< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // ("|" )+ = "|", Command => ActionFn(57); let __sym1 = __pop_Variant4(__symbols); let __sym0 = __pop_Variant0(__symbols); let __start = __sym0.0.clone(); let __end = __sym1.2.clone(); let __nt = super::__action57::<>(__sym0, __sym1); __symbols.push((__start, __Symbol::Variant5(__nt), __end)); (2, 6) } pub(crate) fn __reduce10< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // ("|" )+ = ("|" )+, "|", Command => ActionFn(58); let __sym2 = __pop_Variant4(__symbols); let __sym1 = __pop_Variant0(__symbols); let __sym0 = __pop_Variant5(__symbols); let __start = __sym0.0.clone(); let __end = __sym2.2.clone(); let __nt = super::__action58::<>(__sym0, __sym1, __sym2); __symbols.push((__start, __Symbol::Variant5(__nt), __end)); (3, 6) } pub(crate) fn __reduce11< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // AtomicExpression = Parenthesized => ActionFn(12); let __sym0 = __pop_Variant6(__symbols); let __start = __sym0.0.clone(); let __end = __sym0.2.clone(); let __nt = super::__action12::<>(__sym0); __symbols.push((__start, __Symbol::Variant6(__nt), __end)); (1, 7) } pub(crate) fn __reduce12< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // AtomicExpression = Leaf => ActionFn(13); let __sym0 = __pop_Variant6(__symbols); let __start = __sym0.0.clone(); let __end = __sym0.2.clone(); let __nt = super::__action13::<>(__sym0); __symbols.push((__start, __Symbol::Variant6(__nt), __end)); (1, 7) } pub(crate) fn __reduce13< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // BarePath = "bare" => ActionFn(53); let __sym0 = __pop_Variant0(__symbols); let __start = __sym0.0.clone(); let __end = __sym0.2.clone(); let __nt = super::__action53::<>(__sym0); __symbols.push((__start, __Symbol::Variant7(__nt), __end)); (1, 8) } pub(crate) fn __reduce14< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // BarePath = "bare", ("." <"member">)+ => ActionFn(54); let __sym1 = __pop_Variant1(__symbols); let __sym0 = __pop_Variant0(__symbols); let __start = __sym0.0.clone(); let __end = __sym1.2.clone(); let __nt = super::__action54::<>(__sym0, __sym1); __symbols.push((__start, __Symbol::Variant7(__nt), __end)); (2, 8) } pub(crate) fn __reduce15< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // BinaryExpression = Expr, Operator, Expr => ActionFn(9); let __sym2 = __pop_Variant6(__symbols); let __sym1 = __pop_Variant11(__symbols); let __sym0 = __pop_Variant6(__symbols); let __start = __sym0.0.clone(); let __end = __sym2.2.clone(); let __nt = super::__action9::<>(__sym0, __sym1, __sym2); __symbols.push((__start, __Symbol::Variant6(__nt), __end)); (3, 9) } pub(crate) fn __reduce16< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // Block = "{", AtomicExpression, "}" => ActionFn(14); let __sym2 = __pop_Variant0(__symbols); let __sym1 = __pop_Variant6(__symbols); let __sym0 = __pop_Variant0(__symbols); let __start = __sym0.0.clone(); let __end = __sym2.2.clone(); let __nt = super::__action14::<>(__sym0, __sym1, __sym2); __symbols.push((__start, __Symbol::Variant6(__nt), __end)); (3, 10) } pub(crate) fn __reduce17< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // Block = "{", BinaryExpression, "}" => ActionFn(15); let __sym2 = __pop_Variant0(__symbols); let __sym1 = __pop_Variant6(__symbols); let __sym0 = __pop_Variant0(__symbols); let __start = __sym0.0.clone(); let __end = __sym2.2.clone(); let __nt = super::__action15::<>(__sym0, __sym1, __sym2); __symbols.push((__start, __Symbol::Variant6(__nt), __end)); (3, 10) } pub(crate) fn __reduce18< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // Command = BarePath => ActionFn(3); let __sym0 = __pop_Variant7(__symbols); let __start = __sym0.0.clone(); let __end = __sym0.2.clone(); let __nt = super::__action3::<>(__sym0); __symbols.push((__start, __Symbol::Variant4(__nt), __end)); (1, 11) } pub(crate) fn __reduce19< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // Command = BarePath, Expr+ => ActionFn(4); let __sym1 = __pop_Variant8(__symbols); let __sym0 = __pop_Variant7(__symbols); let __start = __sym0.0.clone(); let __end = __sym1.2.clone(); let __nt = super::__action4::<>(__sym0, __sym1); __symbols.push((__start, __Symbol::Variant4(__nt), __end)); (2, 11) } pub(crate) fn __reduce20< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // Command = BarePath, BinaryExpression => ActionFn(5); let __sym1 = __pop_Variant6(__symbols); let __sym0 = __pop_Variant7(__symbols); let __start = __sym0.0.clone(); let __end = __sym1.2.clone(); let __nt = super::__action5::<>(__sym0, __sym1); __symbols.push((__start, __Symbol::Variant4(__nt), __end)); (2, 11) } pub(crate) fn __reduce21< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // Expr = PathExpression => ActionFn(21); let __sym0 = __pop_Variant6(__symbols); let __start = __sym0.0.clone(); let __end = __sym0.2.clone(); let __nt = super::__action21::<>(__sym0); __symbols.push((__start, __Symbol::Variant6(__nt), __end)); (1, 12) } pub(crate) fn __reduce22< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // Expr = PathHead => ActionFn(22); let __sym0 = __pop_Variant6(__symbols); let __start = __sym0.0.clone(); let __end = __sym0.2.clone(); let __nt = super::__action22::<>(__sym0); __symbols.push((__start, __Symbol::Variant6(__nt), __end)); (1, 12) } pub(crate) fn __reduce23< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // Expr+ = Expr => ActionFn(44); let __sym0 = __pop_Variant6(__symbols); let __start = __sym0.0.clone(); let __end = __sym0.2.clone(); let __nt = super::__action44::<>(__sym0); __symbols.push((__start, __Symbol::Variant8(__nt), __end)); (1, 13) } pub(crate) fn __reduce24< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // Expr+ = Expr+, Expr => ActionFn(45); let __sym1 = __pop_Variant6(__symbols); let __sym0 = __pop_Variant8(__symbols); let __start = __sym0.0.clone(); let __end = __sym1.2.clone(); let __nt = super::__action45::<>(__sym0, __sym1); __symbols.push((__start, __Symbol::Variant8(__nt), __end)); (2, 13) } pub(crate) fn __reduce25< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // Flag = "-", BarePath => ActionFn(32); let __sym1 = __pop_Variant7(__symbols); let __sym0 = __pop_Variant0(__symbols); let __start = __sym0.0.clone(); let __end = __sym1.2.clone(); let __nt = super::__action32::<>(__sym0, __sym1); __symbols.push((__start, __Symbol::Variant9(__nt), __end)); (2, 14) } pub(crate) fn __reduce26< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // Flag = "--", BarePath => ActionFn(33); let __sym1 = __pop_Variant7(__symbols); let __sym0 = __pop_Variant0(__symbols); let __start = __sym0.0.clone(); let __end = __sym1.2.clone(); let __nt = super::__action33::<>(__sym0, __sym1); __symbols.push((__start, __Symbol::Variant9(__nt), __end)); (2, 14) } pub(crate) fn __reduce27< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // Int = "num" => ActionFn(37); let __sym0 = __pop_Variant0(__symbols); let __start = __sym0.0.clone(); let __end = __sym0.2.clone(); let __nt = super::__action37::<>(__sym0); __symbols.push((__start, __Symbol::Variant10(__nt), __end)); (1, 15) } pub(crate) fn __reduce28< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // Leaf = String => ActionFn(6); let __sym0 = __pop_Variant2(__symbols); let __start = __sym0.0.clone(); let __end = __sym0.2.clone(); let __nt = super::__action6::<>(__sym0); __symbols.push((__start, __Symbol::Variant6(__nt), __end)); (1, 16) } pub(crate) fn __reduce29< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // Leaf = Int => ActionFn(7); let __sym0 = __pop_Variant10(__symbols); let __start = __sym0.0.clone(); let __end = __sym0.2.clone(); let __nt = super::__action7::<>(__sym0); __symbols.push((__start, __Symbol::Variant6(__nt), __end)); (1, 16) } pub(crate) fn __reduce30< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // Leaf = Variable => ActionFn(8); let __sym0 = __pop_Variant13(__symbols); let __start = __sym0.0.clone(); let __end = __sym0.2.clone(); let __nt = super::__action8::<>(__sym0); __symbols.push((__start, __Symbol::Variant6(__nt), __end)); (1, 16) } pub(crate) fn __reduce31< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // Member = "member" => ActionFn(24); let __sym0 = __pop_Variant0(__symbols); let __start = __sym0.0.clone(); let __end = __sym0.2.clone(); let __nt = super::__action24::<>(__sym0); __symbols.push((__start, __Symbol::Variant2(__nt), __end)); (1, 17) } pub(crate) fn __reduce32< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // Member = String => ActionFn(25); let __sym0 = __pop_Variant2(__symbols); let __start = __sym0.0.clone(); let __end = __sym0.2.clone(); let __nt = super::__action25::<>(__sym0); __symbols.push((__start, __Symbol::Variant2(__nt), __end)); (1, 17) } pub(crate) fn __reduce33< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // Operator = "==" => ActionFn(26); let __sym0 = __pop_Variant0(__symbols); let __start = __sym0.0.clone(); let __end = __sym0.2.clone(); let __nt = super::__action26::<>(__sym0); __symbols.push((__start, __Symbol::Variant11(__nt), __end)); (1, 18) } pub(crate) fn __reduce34< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // Operator = "!=" => ActionFn(27); let __sym0 = __pop_Variant0(__symbols); let __start = __sym0.0.clone(); let __end = __sym0.2.clone(); let __nt = super::__action27::<>(__sym0); __symbols.push((__start, __Symbol::Variant11(__nt), __end)); (1, 18) } pub(crate) fn __reduce35< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // Operator = "<" => ActionFn(28); let __sym0 = __pop_Variant0(__symbols); let __start = __sym0.0.clone(); let __end = __sym0.2.clone(); let __nt = super::__action28::<>(__sym0); __symbols.push((__start, __Symbol::Variant11(__nt), __end)); (1, 18) } pub(crate) fn __reduce36< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // Operator = ">" => ActionFn(29); let __sym0 = __pop_Variant0(__symbols); let __start = __sym0.0.clone(); let __end = __sym0.2.clone(); let __nt = super::__action29::<>(__sym0); __symbols.push((__start, __Symbol::Variant11(__nt), __end)); (1, 18) } pub(crate) fn __reduce37< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // Operator = "<=" => ActionFn(30); let __sym0 = __pop_Variant0(__symbols); let __start = __sym0.0.clone(); let __end = __sym0.2.clone(); let __nt = super::__action30::<>(__sym0); __symbols.push((__start, __Symbol::Variant11(__nt), __end)); (1, 18) } pub(crate) fn __reduce38< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // Operator = ">=" => ActionFn(31); let __sym0 = __pop_Variant0(__symbols); let __start = __sym0.0.clone(); let __end = __sym0.2.clone(); let __nt = super::__action31::<>(__sym0); __symbols.push((__start, __Symbol::Variant11(__nt), __end)); (1, 18) } pub(crate) fn __reduce39< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // Parenthesized = "(", Leaf, ")" => ActionFn(10); let __sym2 = __pop_Variant0(__symbols); let __sym1 = __pop_Variant6(__symbols); let __sym0 = __pop_Variant0(__symbols); let __start = __sym0.0.clone(); let __end = __sym2.2.clone(); let __nt = super::__action10::<>(__sym0, __sym1, __sym2); __symbols.push((__start, __Symbol::Variant6(__nt), __end)); (3, 19) } pub(crate) fn __reduce40< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // Parenthesized = "(", BinaryExpression, ")" => ActionFn(11); let __sym2 = __pop_Variant0(__symbols); let __sym1 = __pop_Variant6(__symbols); let __sym0 = __pop_Variant0(__symbols); let __start = __sym0.0.clone(); let __end = __sym2.2.clone(); let __nt = super::__action11::<>(__sym0, __sym1, __sym2); __symbols.push((__start, __Symbol::Variant6(__nt), __end)); (3, 19) } pub(crate) fn __reduce41< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // PathExpression = WholeExpression, ("." )+ => ActionFn(20); let __sym1 = __pop_Variant3(__symbols); let __sym0 = __pop_Variant6(__symbols); let __start = __sym0.0.clone(); let __end = __sym1.2.clone(); let __nt = super::__action20::<>(__sym0, __sym1); __symbols.push((__start, __Symbol::Variant6(__nt), __end)); (2, 20) } pub(crate) fn __reduce42< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // PathHead = WholeExpression => ActionFn(18); let __sym0 = __pop_Variant6(__symbols); let __start = __sym0.0.clone(); let __end = __sym0.2.clone(); let __nt = super::__action18::<>(__sym0); __symbols.push((__start, __Symbol::Variant6(__nt), __end)); (1, 21) } pub(crate) fn __reduce43< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // PathHead = BarePath => ActionFn(19); let __sym0 = __pop_Variant7(__symbols); let __start = __sym0.0.clone(); let __end = __sym0.2.clone(); let __nt = super::__action19::<>(__sym0); __symbols.push((__start, __Symbol::Variant6(__nt), __end)); (1, 21) } pub(crate) fn __reduce44< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // Pipeline = Command => ActionFn(1); let __sym0 = __pop_Variant4(__symbols); let __start = __sym0.0.clone(); let __end = __sym0.2.clone(); let __nt = super::__action1::<>(__sym0); __symbols.push((__start, __Symbol::Variant12(__nt), __end)); (1, 22) } pub(crate) fn __reduce45< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // Pipeline = Command, ("|" )+ => ActionFn(2); let __sym1 = __pop_Variant5(__symbols); let __sym0 = __pop_Variant4(__symbols); let __start = __sym0.0.clone(); let __end = __sym1.2.clone(); let __nt = super::__action2::<>(__sym0, __sym1); __symbols.push((__start, __Symbol::Variant12(__nt), __end)); (2, 22) } pub(crate) fn __reduce46< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // String = "sqstring" => ActionFn(34); let __sym0 = __pop_Variant0(__symbols); let __start = __sym0.0.clone(); let __end = __sym0.2.clone(); let __nt = super::__action34::<>(__sym0); __symbols.push((__start, __Symbol::Variant2(__nt), __end)); (1, 23) } pub(crate) fn __reduce47< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // String = "dqstring" => ActionFn(35); let __sym0 = __pop_Variant0(__symbols); let __start = __sym0.0.clone(); let __end = __sym0.2.clone(); let __nt = super::__action35::<>(__sym0); __symbols.push((__start, __Symbol::Variant2(__nt), __end)); (1, 23) } pub(crate) fn __reduce48< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // Variable = "$", "variable" => ActionFn(23); let __sym1 = __pop_Variant0(__symbols); let __sym0 = __pop_Variant0(__symbols); let __start = __sym0.0.clone(); let __end = __sym1.2.clone(); let __nt = super::__action23::<>(__sym0, __sym1); __symbols.push((__start, __Symbol::Variant13(__nt), __end)); (2, 24) } pub(crate) fn __reduce49< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // WholeExpression = AtomicExpression => ActionFn(16); let __sym0 = __pop_Variant6(__symbols); let __start = __sym0.0.clone(); let __end = __sym0.2.clone(); let __nt = super::__action16::<>(__sym0); __symbols.push((__start, __Symbol::Variant6(__nt), __end)); (1, 25) } pub(crate) fn __reduce50< 'input, >( __action: i8, __lookahead_start: Option<&usize>, __states: &mut ::std::vec::Vec, __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>, _: ::std::marker::PhantomData<(&'input ())>, ) -> (usize, usize) { // WholeExpression = Block => ActionFn(17); let __sym0 = __pop_Variant6(__symbols); let __start = __sym0.0.clone(); let __end = __sym0.2.clone(); let __nt = super::__action17::<>(__sym0); __symbols.push((__start, __Symbol::Variant6(__nt), __end)); (1, 25) } } pub use self::__parse__Pipeline::PipelineParser; fn __action0< 'input, >( (_, __0, _): (usize, Pipeline, usize), ) -> Pipeline { (__0) } fn __action1< 'input, >( (_, first, _): (usize, ParsedCommand, usize), ) -> Pipeline { Pipeline::new(vec![first]) } fn __action2< 'input, >( (_, first, _): (usize, ParsedCommand, usize), (_, rest, _): (usize, ::std::vec::Vec, usize), ) -> Pipeline { Pipeline::from_parts(first, rest) } fn __action3< 'input, >( (_, command, _): (usize, BarePath, usize), ) -> ParsedCommand { ParsedCommand::new(command.to_string(), vec![]) } fn __action4< 'input, >( (_, command, _): (usize, BarePath, usize), (_, expr, _): (usize, ::std::vec::Vec, usize), ) -> ParsedCommand { ParsedCommand::new(command.to_string(), expr) } fn __action5< 'input, >( (_, command, _): (usize, BarePath, usize), (_, expr, _): (usize, Expression, usize), ) -> ParsedCommand { ParsedCommand::new(command.to_string(), vec![expr]) } fn __action6< 'input, >( (_, __0, _): (usize, String, usize), ) -> Expression { Expression::Leaf(Leaf::String(__0)) } fn __action7< 'input, >( (_, __0, _): (usize, i64, usize), ) -> Expression { Expression::Leaf(Leaf::Int(__0)) } fn __action8< 'input, >( (_, __0, _): (usize, Variable, usize), ) -> Expression { Expression::VariableReference(__0) } fn __action9< 'input, >( (_, left, _): (usize, Expression, usize), (_, op, _): (usize, Operator, usize), (_, right, _): (usize, Expression, usize), ) -> Expression { Expression::Binary(Box::new(Binary::new(left, op, right))) } fn __action10< 'input, >( (_, _, _): (usize, SpannedToken<'input>, usize), (_, __0, _): (usize, Expression, usize), (_, _, _): (usize, SpannedToken<'input>, usize), ) -> Expression { Expression::Parenthesized(Box::new(Parenthesized::new(__0))) } fn __action11< 'input, >( (_, _, _): (usize, SpannedToken<'input>, usize), (_, __0, _): (usize, Expression, usize), (_, _, _): (usize, SpannedToken<'input>, usize), ) -> Expression { Expression::Parenthesized(Box::new(Parenthesized::new(__0))) } fn __action12< 'input, >( (_, __0, _): (usize, Expression, usize), ) -> Expression { (__0) } fn __action13< 'input, >( (_, __0, _): (usize, Expression, usize), ) -> Expression { (__0) } fn __action14< 'input, >( (_, _, _): (usize, SpannedToken<'input>, usize), (_, __0, _): (usize, Expression, usize), (_, _, _): (usize, SpannedToken<'input>, usize), ) -> Expression { Expression::Block(Box::new(Block::new(__0))) } fn __action15< 'input, >( (_, _, _): (usize, SpannedToken<'input>, usize), (_, __0, _): (usize, Expression, usize), (_, _, _): (usize, SpannedToken<'input>, usize), ) -> Expression { Expression::Block(Box::new(Block::new(__0))) } fn __action16< 'input, >( (_, __0, _): (usize, Expression, usize), ) -> Expression { (__0) } fn __action17< 'input, >( (_, __0, _): (usize, Expression, usize), ) -> Expression { (__0) } fn __action18< 'input, >( (_, __0, _): (usize, Expression, usize), ) -> Expression { (__0) } fn __action19< 'input, >( (_, __0, _): (usize, BarePath, usize), ) -> Expression { Expression::Leaf(Leaf::Bare(__0)) } fn __action20< 'input, >( (_, head, _): (usize, Expression, usize), (_, tail, _): (usize, ::std::vec::Vec, usize), ) -> Expression { Expression::Path(Box::new(Path::new(head, tail))) } fn __action21< 'input, >( (_, __0, _): (usize, Expression, usize), ) -> Expression { (__0) } fn __action22< 'input, >( (_, __0, _): (usize, Expression, usize), ) -> Expression { (__0) } fn __action23< 'input, >( (_, _, _): (usize, SpannedToken<'input>, usize), (_, __0, _): (usize, SpannedToken<'input>, usize), ) -> Variable { Variable::from_str(__0.as_slice()).unwrap() } fn __action24< 'input, >( (_, __0, _): (usize, SpannedToken<'input>, usize), ) -> String { __0.to_string() } fn __action25< 'input, >( (_, __0, _): (usize, String, usize), ) -> String { (__0) } fn __action26< 'input, >( (_, __0, _): (usize, SpannedToken<'input>, usize), ) -> Operator { Operator::Equal } fn __action27< 'input, >( (_, __0, _): (usize, SpannedToken<'input>, usize), ) -> Operator { Operator::NotEqual } fn __action28< 'input, >( (_, __0, _): (usize, SpannedToken<'input>, usize), ) -> Operator { Operator::LessThan } fn __action29< 'input, >( (_, __0, _): (usize, SpannedToken<'input>, usize), ) -> Operator { Operator::GreaterThan } fn __action30< 'input, >( (_, __0, _): (usize, SpannedToken<'input>, usize), ) -> Operator { Operator::LessThanOrEqual } fn __action31< 'input, >( (_, __0, _): (usize, SpannedToken<'input>, usize), ) -> Operator { Operator::GreaterThanOrEqual } fn __action32< 'input, >( (_, _, _): (usize, SpannedToken<'input>, usize), (_, __0, _): (usize, BarePath, usize), ) -> Flag { Flag::Shorthand(__0.to_string()) } fn __action33< 'input, >( (_, _, _): (usize, SpannedToken<'input>, usize), (_, __0, _): (usize, BarePath, usize), ) -> Flag { Flag::Longhand(__0.to_string()) } fn __action34< 'input, >( (_, __0, _): (usize, SpannedToken<'input>, usize), ) -> String { __0.as_slice()[1..(__0.as_slice().len() - 1)].to_string() } fn __action35< 'input, >( (_, __0, _): (usize, SpannedToken<'input>, usize), ) -> String { __0.as_slice()[1..(__0.as_slice().len() - 1)].to_string() } fn __action36< 'input, >( (_, head, _): (usize, SpannedToken<'input>, usize), (_, tail, _): (usize, ::std::vec::Vec>, usize), ) -> BarePath { BarePath::from_tokens(head, tail) } fn __action37< 'input, >( (_, __0, _): (usize, SpannedToken<'input>, usize), ) -> i64 { i64::from_str(__0.as_slice()).unwrap() } fn __action38< 'input, >( __lookbehind: &usize, __lookahead: &usize, ) -> ::std::vec::Vec> { vec![] } fn __action39< 'input, >( (_, v, _): (usize, ::std::vec::Vec>, usize), ) -> ::std::vec::Vec> { v } fn __action40< 'input, >( (_, _, _): (usize, SpannedToken<'input>, usize), (_, __0, _): (usize, SpannedToken<'input>, usize), ) -> SpannedToken<'input> { (__0) } fn __action41< 'input, >( (_, __0, _): (usize, String, usize), ) -> ::std::vec::Vec { vec![__0] } fn __action42< 'input, >( (_, v, _): (usize, ::std::vec::Vec, usize), (_, e, _): (usize, String, usize), ) -> ::std::vec::Vec { { let mut v = v; v.push(e); v } } fn __action43< 'input, >( (_, _, _): (usize, SpannedToken<'input>, usize), (_, __0, _): (usize, String, usize), ) -> String { (__0) } fn __action44< 'input, >( (_, __0, _): (usize, Expression, usize), ) -> ::std::vec::Vec { vec![__0] } fn __action45< 'input, >( (_, v, _): (usize, ::std::vec::Vec, usize), (_, e, _): (usize, Expression, usize), ) -> ::std::vec::Vec { { let mut v = v; v.push(e); v } } fn __action46< 'input, >( (_, __0, _): (usize, ParsedCommand, usize), ) -> ::std::vec::Vec { vec![__0] } fn __action47< 'input, >( (_, v, _): (usize, ::std::vec::Vec, usize), (_, e, _): (usize, ParsedCommand, usize), ) -> ::std::vec::Vec { { let mut v = v; v.push(e); v } } fn __action48< 'input, >( (_, _, _): (usize, SpannedToken<'input>, usize), (_, __0, _): (usize, ParsedCommand, usize), ) -> ParsedCommand { (__0) } fn __action49< 'input, >( (_, __0, _): (usize, SpannedToken<'input>, usize), ) -> ::std::vec::Vec> { vec![__0] } fn __action50< 'input, >( (_, v, _): (usize, ::std::vec::Vec>, usize), (_, e, _): (usize, SpannedToken<'input>, usize), ) -> ::std::vec::Vec> { { let mut v = v; v.push(e); v } } fn __action51< 'input, >( __0: (usize, SpannedToken<'input>, usize), __1: (usize, SpannedToken<'input>, usize), ) -> ::std::vec::Vec> { let __start0 = __0.0.clone(); let __end0 = __1.2.clone(); let __temp0 = __action40( __0, __1, ); let __temp0 = (__start0, __temp0, __end0); __action49( __temp0, ) } fn __action52< 'input, >( __0: (usize, ::std::vec::Vec>, usize), __1: (usize, SpannedToken<'input>, usize), __2: (usize, SpannedToken<'input>, usize), ) -> ::std::vec::Vec> { let __start0 = __1.0.clone(); let __end0 = __2.2.clone(); let __temp0 = __action40( __1, __2, ); let __temp0 = (__start0, __temp0, __end0); __action50( __0, __temp0, ) } fn __action53< 'input, >( __0: (usize, SpannedToken<'input>, usize), ) -> BarePath { let __start0 = __0.2.clone(); let __end0 = __0.2.clone(); let __temp0 = __action38( &__start0, &__end0, ); let __temp0 = (__start0, __temp0, __end0); __action36( __0, __temp0, ) } fn __action54< 'input, >( __0: (usize, SpannedToken<'input>, usize), __1: (usize, ::std::vec::Vec>, usize), ) -> BarePath { let __start0 = __1.0.clone(); let __end0 = __1.2.clone(); let __temp0 = __action39( __1, ); let __temp0 = (__start0, __temp0, __end0); __action36( __0, __temp0, ) } fn __action55< 'input, >( __0: (usize, SpannedToken<'input>, usize), __1: (usize, String, usize), ) -> ::std::vec::Vec { let __start0 = __0.0.clone(); let __end0 = __1.2.clone(); let __temp0 = __action43( __0, __1, ); let __temp0 = (__start0, __temp0, __end0); __action41( __temp0, ) } fn __action56< 'input, >( __0: (usize, ::std::vec::Vec, usize), __1: (usize, SpannedToken<'input>, usize), __2: (usize, String, usize), ) -> ::std::vec::Vec { let __start0 = __1.0.clone(); let __end0 = __2.2.clone(); let __temp0 = __action43( __1, __2, ); let __temp0 = (__start0, __temp0, __end0); __action42( __0, __temp0, ) } fn __action57< 'input, >( __0: (usize, SpannedToken<'input>, usize), __1: (usize, ParsedCommand, usize), ) -> ::std::vec::Vec { let __start0 = __0.0.clone(); let __end0 = __1.2.clone(); let __temp0 = __action48( __0, __1, ); let __temp0 = (__start0, __temp0, __end0); __action46( __temp0, ) } fn __action58< 'input, >( __0: (usize, ::std::vec::Vec, usize), __1: (usize, SpannedToken<'input>, usize), __2: (usize, ParsedCommand, usize), ) -> ::std::vec::Vec { let __start0 = __1.0.clone(); let __end0 = __2.2.clone(); let __temp0 = __action48( __1, __2, ); let __temp0 = (__start0, __temp0, __end0); __action47( __0, __temp0, ) } pub trait __ToTriple<'input, > { fn to_triple(value: Self) -> Result<(usize,SpannedToken<'input>,usize), __lalrpop_util::ParseError, ShellError>>; } impl<'input, > __ToTriple<'input, > for (usize, SpannedToken<'input>, usize) { fn to_triple(value: Self) -> Result<(usize,SpannedToken<'input>,usize), __lalrpop_util::ParseError, ShellError>> { Ok(value) } } impl<'input, > __ToTriple<'input, > for Result<(usize, SpannedToken<'input>, usize), ShellError> { fn to_triple(value: Self) -> Result<(usize,SpannedToken<'input>,usize), __lalrpop_util::ParseError, ShellError>> { match value { Ok(v) => Ok(v), Err(error) => Err(__lalrpop_util::ParseError::User { error }), } } }