forked from extern/nushell
2973 lines
96 KiB
Rust
2973 lines
96 KiB
Rust
// 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<SpannedToken<'input>>),
|
|
Variant2(String),
|
|
Variant3(::std::vec::Vec<String>),
|
|
Variant4(ParsedCommand),
|
|
Variant5(::std::vec::Vec<ParsedCommand>),
|
|
Variant6(Expression),
|
|
Variant7(BarePath),
|
|
Variant8(::std::vec::Vec<Expression>),
|
|
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<usize> {
|
|
__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<String> {
|
|
__expected_tokens(state as usize)
|
|
}
|
|
|
|
#[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: i8,
|
|
start_location: Option<&Self::Location>,
|
|
states: &mut Vec<i8>,
|
|
symbols: &mut Vec<__state_machine::SymbolTriple<Self>>,
|
|
) -> Option<__state_machine::ParseResult<Self>> {
|
|
__reduce(
|
|
action,
|
|
start_location,
|
|
states,
|
|
symbols,
|
|
::std::marker::PhantomData::<(&())>,
|
|
)
|
|
}
|
|
|
|
fn simulate_reduce(&self, action: i8) -> __state_machine::SimulatedReduce<Self> {
|
|
__simulate_reduce(action, ::std::marker::PhantomData::<(&())>)
|
|
}
|
|
}
|
|
fn __token_to_integer<
|
|
'input,
|
|
>(
|
|
__token: &SpannedToken<'input>,
|
|
_: ::std::marker::PhantomData<(&'input ())>,
|
|
) -> Option<usize>
|
|
{
|
|
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<Item=__TOKEN>,
|
|
>(
|
|
&self,
|
|
__tokens0: __TOKENS,
|
|
) -> Result<Pipeline, __lalrpop_util::ParseError<usize, SpannedToken<'input>, 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<i8>,
|
|
__symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
|
|
_: ::std::marker::PhantomData<(&'input ())>,
|
|
) -> Option<Result<Pipeline,__lalrpop_util::ParseError<usize, SpannedToken<'input>, 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<Expression>, 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<ParsedCommand>, 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<SpannedToken<'input>>, 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<String>, 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<i8>,
|
|
__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<i8>,
|
|
__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<i8>,
|
|
__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<i8>,
|
|
__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<i8>,
|
|
__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<i8>,
|
|
__symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
|
|
_: ::std::marker::PhantomData<(&'input ())>,
|
|
) -> (usize, usize)
|
|
{
|
|
// ("." <Member>) = ".", 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<i8>,
|
|
__symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
|
|
_: ::std::marker::PhantomData<(&'input ())>,
|
|
) -> (usize, usize)
|
|
{
|
|
// ("." <Member>)+ = ".", 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<i8>,
|
|
__symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
|
|
_: ::std::marker::PhantomData<(&'input ())>,
|
|
) -> (usize, usize)
|
|
{
|
|
// ("." <Member>)+ = ("." <Member>)+, ".", 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<i8>,
|
|
__symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
|
|
_: ::std::marker::PhantomData<(&'input ())>,
|
|
) -> (usize, usize)
|
|
{
|
|
// ("|" <Command>) = "|", 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<i8>,
|
|
__symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
|
|
_: ::std::marker::PhantomData<(&'input ())>,
|
|
) -> (usize, usize)
|
|
{
|
|
// ("|" <Command>)+ = "|", 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<i8>,
|
|
__symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
|
|
_: ::std::marker::PhantomData<(&'input ())>,
|
|
) -> (usize, usize)
|
|
{
|
|
// ("|" <Command>)+ = ("|" <Command>)+, "|", 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<i8>,
|
|
__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<i8>,
|
|
__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<i8>,
|
|
__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<i8>,
|
|
__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<i8>,
|
|
__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<i8>,
|
|
__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<i8>,
|
|
__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<i8>,
|
|
__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<i8>,
|
|
__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<i8>,
|
|
__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<i8>,
|
|
__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<i8>,
|
|
__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<i8>,
|
|
__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<i8>,
|
|
__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<i8>,
|
|
__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<i8>,
|
|
__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<i8>,
|
|
__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<i8>,
|
|
__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<i8>,
|
|
__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<i8>,
|
|
__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<i8>,
|
|
__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<i8>,
|
|
__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<i8>,
|
|
__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<i8>,
|
|
__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<i8>,
|
|
__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<i8>,
|
|
__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<i8>,
|
|
__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<i8>,
|
|
__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<i8>,
|
|
__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<i8>,
|
|
__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<i8>,
|
|
__symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
|
|
_: ::std::marker::PhantomData<(&'input ())>,
|
|
) -> (usize, usize)
|
|
{
|
|
// PathExpression = WholeExpression, ("." <Member>)+ => 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<i8>,
|
|
__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<i8>,
|
|
__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<i8>,
|
|
__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<i8>,
|
|
__symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
|
|
_: ::std::marker::PhantomData<(&'input ())>,
|
|
) -> (usize, usize)
|
|
{
|
|
// Pipeline = Command, ("|" <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<i8>,
|
|
__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<i8>,
|
|
__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<i8>,
|
|
__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<i8>,
|
|
__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<i8>,
|
|
__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<ParsedCommand>, 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<Expression>, 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<String>, 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<SpannedToken<'input>>, 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<SpannedToken<'input>>
|
|
{
|
|
vec![]
|
|
}
|
|
|
|
fn __action39<
|
|
'input,
|
|
>(
|
|
(_, v, _): (usize, ::std::vec::Vec<SpannedToken<'input>>, usize),
|
|
) -> ::std::vec::Vec<SpannedToken<'input>>
|
|
{
|
|
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<String>
|
|
{
|
|
vec![__0]
|
|
}
|
|
|
|
fn __action42<
|
|
'input,
|
|
>(
|
|
(_, v, _): (usize, ::std::vec::Vec<String>, usize),
|
|
(_, e, _): (usize, String, usize),
|
|
) -> ::std::vec::Vec<String>
|
|
{
|
|
{ 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<Expression>
|
|
{
|
|
vec![__0]
|
|
}
|
|
|
|
fn __action45<
|
|
'input,
|
|
>(
|
|
(_, v, _): (usize, ::std::vec::Vec<Expression>, usize),
|
|
(_, e, _): (usize, Expression, usize),
|
|
) -> ::std::vec::Vec<Expression>
|
|
{
|
|
{ let mut v = v; v.push(e); v }
|
|
}
|
|
|
|
fn __action46<
|
|
'input,
|
|
>(
|
|
(_, __0, _): (usize, ParsedCommand, usize),
|
|
) -> ::std::vec::Vec<ParsedCommand>
|
|
{
|
|
vec![__0]
|
|
}
|
|
|
|
fn __action47<
|
|
'input,
|
|
>(
|
|
(_, v, _): (usize, ::std::vec::Vec<ParsedCommand>, usize),
|
|
(_, e, _): (usize, ParsedCommand, usize),
|
|
) -> ::std::vec::Vec<ParsedCommand>
|
|
{
|
|
{ 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<SpannedToken<'input>>
|
|
{
|
|
vec![__0]
|
|
}
|
|
|
|
fn __action50<
|
|
'input,
|
|
>(
|
|
(_, v, _): (usize, ::std::vec::Vec<SpannedToken<'input>>, usize),
|
|
(_, e, _): (usize, SpannedToken<'input>, usize),
|
|
) -> ::std::vec::Vec<SpannedToken<'input>>
|
|
{
|
|
{ let mut v = v; v.push(e); v }
|
|
}
|
|
|
|
fn __action51<
|
|
'input,
|
|
>(
|
|
__0: (usize, SpannedToken<'input>, usize),
|
|
__1: (usize, SpannedToken<'input>, usize),
|
|
) -> ::std::vec::Vec<SpannedToken<'input>>
|
|
{
|
|
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<SpannedToken<'input>>, usize),
|
|
__1: (usize, SpannedToken<'input>, usize),
|
|
__2: (usize, SpannedToken<'input>, usize),
|
|
) -> ::std::vec::Vec<SpannedToken<'input>>
|
|
{
|
|
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<SpannedToken<'input>>, 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<String>
|
|
{
|
|
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<String>, usize),
|
|
__1: (usize, SpannedToken<'input>, usize),
|
|
__2: (usize, String, usize),
|
|
) -> ::std::vec::Vec<String>
|
|
{
|
|
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<ParsedCommand>
|
|
{
|
|
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<ParsedCommand>, usize),
|
|
__1: (usize, SpannedToken<'input>, usize),
|
|
__2: (usize, ParsedCommand, usize),
|
|
) -> ::std::vec::Vec<ParsedCommand>
|
|
{
|
|
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<usize, SpannedToken<'input>, ShellError>>;
|
|
}
|
|
|
|
impl<'input, > __ToTriple<'input, > for (usize, SpannedToken<'input>, usize) {
|
|
fn to_triple(value: Self) -> Result<(usize,SpannedToken<'input>,usize), __lalrpop_util::ParseError<usize, SpannedToken<'input>, 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<usize, SpannedToken<'input>, ShellError>> {
|
|
match value {
|
|
Ok(v) => Ok(v),
|
|
Err(error) => Err(__lalrpop_util::ParseError::User { error }),
|
|
}
|
|
}
|
|
}
|