Files
aquavm/crates/air-parser/src/parser/air.rs

3879 lines
123 KiB
Rust
Raw Normal View History

// auto-generated: "lalrpop 0.19.5"
2021-03-19 19:15:41 +03:00
// sha3: 9261142c295e3b691816383a436d7d9ae0591e6fd2e556966d1dfe61ccff84
2021-01-22 18:54:05 +03:00
use crate::parser::ast::*;
2021-02-18 17:30:14 +03:00
use crate::parser::air_parser::into_variable_and_path;
use crate::parser::air_parser::make_flattened_error;
2021-03-19 19:15:41 +03:00
use crate::parser::ParserError;
use crate::parser::VariableValidator;
use crate::parser::Span;
2021-01-22 18:54:05 +03:00
use crate::parser::lexer::Token;
2021-02-16 09:45:33 +03:00
use crate::parser::lexer::Number;
2021-01-22 18:54:05 +03:00
use lalrpop_util::ErrorRecovery;
use std::rc::Rc;
#[allow(unused_extern_crates)]
extern crate lalrpop_util as __lalrpop_util;
#[allow(unused_imports)]
use self::__lalrpop_util::state_machine as __state_machine;
extern crate core;
extern crate alloc;
2021-01-22 18:54:05 +03:00
#[cfg_attr(rustfmt, rustfmt_skip)]
mod __parse__AIR {
#![allow(non_snake_case, non_camel_case_types, unused_mut, unused_variables, unused_imports, unused_parens)]
use crate::parser::ast::*;
2021-02-18 17:30:14 +03:00
use crate::parser::air_parser::into_variable_and_path;
use crate::parser::air_parser::make_flattened_error;
2021-03-19 19:15:41 +03:00
use crate::parser::ParserError;
use crate::parser::VariableValidator;
use crate::parser::Span;
2021-01-22 18:54:05 +03:00
use crate::parser::lexer::Token;
2021-02-16 09:45:33 +03:00
use crate::parser::lexer::Number;
2021-01-22 18:54:05 +03:00
use lalrpop_util::ErrorRecovery;
use std::rc::Rc;
#[allow(unused_extern_crates)]
extern crate lalrpop_util as __lalrpop_util;
#[allow(unused_imports)]
use self::__lalrpop_util::state_machine as __state_machine;
extern crate core;
extern crate alloc;
2021-01-22 18:54:05 +03:00
use super::__ToTriple;
#[allow(dead_code)]
pub(crate) enum __Symbol<'input>
2021-01-22 18:54:05 +03:00
{
Variant0(Token<'input>),
Variant1(&'input str),
2021-02-16 09:45:33 +03:00
Variant2(bool),
2021-02-18 17:30:14 +03:00
Variant3((&'input str, usize, bool)),
2021-02-16 09:45:33 +03:00
Variant4(Number),
2021-03-19 19:15:41 +03:00
Variant5(__lalrpop_util::ErrorRecovery<usize, Token<'input>, ParserError>),
2021-02-16 09:45:33 +03:00
Variant6(CallInstrArgValue<'input>),
Variant7(alloc::vec::Vec<CallInstrArgValue<'input>>),
2021-02-18 17:30:14 +03:00
Variant8(usize),
Variant9(Box<Instruction<'input>>),
Variant10(Vec<CallInstrArgValue<'input>>),
Variant11(CallInstrValue<'input>),
Variant12(FunctionPart<'input>),
Variant13(IterableValue<'input>),
Variant14(MatchableValue<'input>),
Variant15(CallOutputValue<'input>),
Variant16(core::option::Option<CallOutputValue<'input>>),
2021-02-18 17:30:14 +03:00
Variant17(PeerPart<'input>),
2021-01-22 18:54:05 +03:00
}
const __ACTION: &[i8] = &[
// State 0
2021-02-16 09:45:33 +03:00
28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 29,
2021-01-22 18:54:05 +03:00
// State 1
2021-02-16 09:45:33 +03:00
10, 0, 0, 0, 0, 34, 0, 35, 36, 0, 37, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-22 18:54:05 +03:00
// State 2
2021-02-16 09:45:33 +03:00
0, 0, 0, 0, 0, 39, 0, 0, 40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-22 18:54:05 +03:00
// State 3
2021-02-16 09:45:33 +03:00
0, 0, 0, 0, 0, 41, 0, 0, 42, 0, 43, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-22 18:54:05 +03:00
// State 4
2021-02-16 09:45:33 +03:00
0, 0, 0, 0, 0, 41, 0, 0, 42, 0, 43, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-22 18:54:05 +03:00
// State 5
2021-02-16 09:45:33 +03:00
28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 29,
2021-01-22 18:54:05 +03:00
// State 6
2021-02-16 09:45:33 +03:00
28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 29,
2021-01-22 18:54:05 +03:00
// State 7
2021-02-16 09:45:33 +03:00
28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 29,
2021-01-22 18:54:05 +03:00
// State 8
2021-02-16 09:45:33 +03:00
17, 0, 0, 0, 0, 34, 0, 35, 36, 0, 37, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-22 18:54:05 +03:00
// State 9
2021-02-16 09:45:33 +03:00
0, 0, 0, 0, 0, 34, 0, 35, 36, 0, 37, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-22 18:54:05 +03:00
// State 10
2021-02-16 09:45:33 +03:00
0, 0, 0, 0, 0, 41, 0, 0, 42, 0, 43, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-22 18:54:05 +03:00
// State 11
2021-02-16 09:45:33 +03:00
0, 0, 0, 0, 0, 41, 0, 0, 42, 0, 43, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-22 18:54:05 +03:00
// State 12
2021-02-16 09:45:33 +03:00
28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 29,
2021-01-22 18:54:05 +03:00
// State 13
2021-02-16 09:45:33 +03:00
28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 29,
2021-01-22 18:54:05 +03:00
// State 14
2021-02-16 09:45:33 +03:00
28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 29,
2021-01-22 18:54:05 +03:00
// State 15
2021-02-16 09:45:33 +03:00
0, 0, 23, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-22 18:54:05 +03:00
// State 16
2021-02-16 09:45:33 +03:00
0, 0, 0, 0, 0, 34, 0, 35, 36, 0, 37, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-22 18:54:05 +03:00
// State 17
2021-02-16 09:45:33 +03:00
0, 0, 0, 0, 0, 34, 0, 35, 36, 0, 37, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-22 18:54:05 +03:00
// State 18
2021-02-16 09:45:33 +03:00
28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 29,
2021-01-22 18:54:05 +03:00
// State 19
2021-02-16 09:45:33 +03:00
28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 29,
2021-01-22 18:54:05 +03:00
// State 20
2021-02-16 09:45:33 +03:00
28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 29,
2021-01-22 18:54:05 +03:00
// State 21
2021-02-16 09:45:33 +03:00
0, 61, 0, 0, 62, 63, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-22 18:54:05 +03:00
// State 22
2021-02-16 09:45:33 +03:00
0, 0, 0, 66, 0, 67, 68, 69, 70, 71, 72, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-22 18:54:05 +03:00
// State 23
2021-02-16 09:45:33 +03:00
0, 0, 0, 0, 0, 34, 0, 35, 36, 0, 37, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-22 18:54:05 +03:00
// State 24
2021-02-16 09:45:33 +03:00
0, 0, 0, 81, 0, 67, 68, 69, 70, 71, 72, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-22 18:54:05 +03:00
// State 25
2021-02-16 09:45:33 +03:00
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-22 18:54:05 +03:00
// State 26
2021-02-16 09:45:33 +03:00
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-22 18:54:05 +03:00
// State 27
2021-02-16 09:45:33 +03:00
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 30, 31, 6, 7, 8, 0,
2021-01-22 18:54:05 +03:00
// State 28
2021-02-18 17:30:14 +03:00
-36, -36, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -36,
2021-01-22 18:54:05 +03:00
// State 29
2021-02-16 09:45:33 +03:00
0, 0, 0, 0, 0, 44, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-22 18:54:05 +03:00
// State 30
2021-02-16 09:45:33 +03:00
0, 45, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-22 18:54:05 +03:00
// State 31
2021-02-18 17:30:14 +03:00
-46, 0, 0, 0, 0, -46, 0, -46, -46, 0, -46, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-22 18:54:05 +03:00
// State 32
2021-02-18 17:30:14 +03:00
-47, 0, 0, 0, 0, -47, 0, -47, -47, 0, -47, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-22 18:54:05 +03:00
// State 33
2021-02-16 09:45:33 +03:00
-20, -20, -20, 0, 0, -20, 0, -20, -20, 0, -20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-02-18 17:30:14 +03:00
// State 34
-22, -22, -22, 0, 0, -22, 0, -22, -22, 0, -22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-22 18:54:05 +03:00
// State 35
2021-02-18 17:30:14 +03:00
-21, -21, -21, 0, 0, -21, 0, -21, -21, 0, -21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-22 18:54:05 +03:00
// State 36
2021-02-18 17:30:14 +03:00
-19, -19, -19, 0, 0, -19, 0, -19, -19, 0, -19, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-22 18:54:05 +03:00
// State 37
2021-02-16 09:45:33 +03:00
0, 0, 0, 0, 0, 19, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-22 18:54:05 +03:00
// State 38
2021-02-18 17:30:14 +03:00
0, 0, 0, 0, 0, -37, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-22 18:54:05 +03:00
// State 39
2021-02-18 17:30:14 +03:00
0, 0, 0, 0, 0, -38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-22 18:54:05 +03:00
// State 40
2021-02-16 09:45:33 +03:00
-39, 0, 0, 0, 0, -39, 0, 0, -39, 0, -39, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -39,
2021-02-18 17:30:14 +03:00
// State 41
-41, 0, 0, 0, 0, -41, 0, 0, -41, 0, -41, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -41,
2021-01-22 18:54:05 +03:00
// State 42
2021-02-18 17:30:14 +03:00
-40, 0, 0, 0, 0, -40, 0, 0, -40, 0, -40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -40,
2021-01-22 18:54:05 +03:00
// State 43
2021-02-16 09:45:33 +03:00
0, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-22 18:54:05 +03:00
// State 44
2021-02-18 17:30:14 +03:00
-30, -30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -30,
2021-01-22 18:54:05 +03:00
// State 45
2021-02-18 17:30:14 +03:00
0, -25, -25, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-22 18:54:05 +03:00
// State 46
2021-02-18 17:30:14 +03:00
0, 0, -23, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-22 18:54:05 +03:00
// State 47
2021-02-18 17:30:14 +03:00
-32, -32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -32,
2021-01-22 18:54:05 +03:00
// State 48
2021-02-16 09:45:33 +03:00
0, 57, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-22 18:54:05 +03:00
// State 49
2021-02-16 09:45:33 +03:00
0, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-22 18:54:05 +03:00
// State 50
2021-02-16 09:45:33 +03:00
0, 59, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-22 18:54:05 +03:00
// State 51
2021-02-18 17:30:14 +03:00
0, -49, 0, 0, 0, -49, 0, -49, -49, 0, -49, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-22 18:54:05 +03:00
// State 52
2021-02-16 09:45:33 +03:00
0, 75, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-22 18:54:05 +03:00
// State 53
2021-02-16 09:45:33 +03:00
0, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-22 18:54:05 +03:00
// State 54
2021-02-16 09:45:33 +03:00
0, 77, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-22 18:54:05 +03:00
// State 55
2021-02-16 09:45:33 +03:00
0, 78, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-22 18:54:05 +03:00
// State 56
2021-02-18 17:30:14 +03:00
-29, -29, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -29,
2021-01-22 18:54:05 +03:00
// State 57
2021-02-18 17:30:14 +03:00
-28, -28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -28,
2021-01-22 18:54:05 +03:00
// State 58
2021-02-18 17:30:14 +03:00
-33, -33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -33,
2021-01-22 18:54:05 +03:00
// State 59
2021-02-16 09:45:33 +03:00
0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-22 18:54:05 +03:00
// State 60
2021-02-18 17:30:14 +03:00
-27, -27, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -27,
2021-01-22 18:54:05 +03:00
// State 61
2021-02-18 17:30:14 +03:00
0, -43, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-27 00:37:58 +03:00
// State 62
2021-02-18 17:30:14 +03:00
0, -42, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-27 00:37:58 +03:00
// State 63
2021-02-16 09:45:33 +03:00
0, 0, 0, -4, 0, -4, -4, -4, -4, -4, -4, -4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-27 00:37:58 +03:00
// State 64
2021-02-18 17:30:14 +03:00
0, 0, 0, -9, 0, -9, -9, -9, -9, -9, -9, -9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-27 00:37:58 +03:00
// State 65
2021-02-18 17:30:14 +03:00
0, -10, 0, 0, -10, -10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-27 00:37:58 +03:00
// State 66
2021-02-18 17:30:14 +03:00
0, 0, 0, -13, 0, -13, -13, -13, -13, -13, -13, -13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-27 00:37:58 +03:00
// State 67
2021-02-18 17:30:14 +03:00
0, 0, 0, -16, 0, -16, -16, -16, -16, -16, -16, -16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-27 00:37:58 +03:00
// State 68
2021-02-18 17:30:14 +03:00
0, 0, 0, -17, 0, -17, -17, -17, -17, -17, -17, -17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-27 00:37:58 +03:00
// State 69
2021-02-18 17:30:14 +03:00
0, 0, 0, -14, 0, -14, -14, -14, -14, -14, -14, -14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-02-01 18:53:00 +03:00
// State 70
2021-02-18 17:30:14 +03:00
0, 0, 0, -18, 0, -18, -18, -18, -18, -18, -18, -18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-02-01 18:53:00 +03:00
// State 71
2021-02-18 17:30:14 +03:00
0, 0, 0, -12, 0, -12, -12, -12, -12, -12, -12, -12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-02-01 18:53:00 +03:00
// State 72
2021-02-18 17:30:14 +03:00
0, 0, 0, -15, 0, -15, -15, -15, -15, -15, -15, -15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-02-01 18:53:00 +03:00
// State 73
2021-02-16 09:45:33 +03:00
0, 82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-02-01 18:53:00 +03:00
// State 74
2021-02-18 17:30:14 +03:00
-48, 0, 0, 0, 0, -48, 0, -48, -48, 0, -48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-02-11 15:39:37 +03:00
// State 75
2021-02-18 17:30:14 +03:00
-31, -31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -31,
2021-02-11 15:39:37 +03:00
// State 76
2021-02-18 17:30:14 +03:00
-34, -34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -34,
2021-02-11 15:39:37 +03:00
// State 77
2021-02-18 17:30:14 +03:00
-35, -35, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -35,
2021-02-11 15:39:37 +03:00
// State 78
2021-02-18 17:30:14 +03:00
-26, -26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -26,
2021-02-11 15:39:37 +03:00
// State 79
2021-02-16 09:45:33 +03:00
0, 0, 0, -5, 0, -5, -5, -5, -5, -5, -5, -5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
// State 80
2021-02-18 17:30:14 +03:00
0, -11, 0, 0, -11, -11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-02-16 09:45:33 +03:00
// State 81
2021-02-18 17:30:14 +03:00
0, 0, -24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2021-01-22 18:54:05 +03:00
];
fn __action(state: i8, integer: usize) -> i8 {
2021-02-16 09:45:33 +03:00
__ACTION[(state as usize) * 22 + integer]
2021-01-22 18:54:05 +03:00
}
const __EOF_ACTION: &[i8] = &[
// State 0
0,
// State 1
0,
// State 2
0,
// State 3
0,
// State 4
0,
// State 5
0,
// State 6
0,
// State 7
0,
// State 8
0,
// State 9
0,
// State 10
0,
// State 11
0,
// State 12
0,
// State 13
0,
// State 14
0,
// State 15
0,
// State 16
0,
// State 17
0,
// State 18
0,
// State 19
2021-01-27 00:37:58 +03:00
0,
2021-01-22 18:54:05 +03:00
// State 20
2021-01-27 00:37:58 +03:00
0,
2021-01-22 18:54:05 +03:00
// State 21
0,
// State 22
2021-02-01 18:53:00 +03:00
0,
2021-01-22 18:54:05 +03:00
// State 23
2021-02-01 18:53:00 +03:00
0,
2021-01-22 18:54:05 +03:00
// State 24
0,
// State 25
2021-02-18 17:30:14 +03:00
-50,
2021-01-22 18:54:05 +03:00
// State 26
2021-02-18 17:30:14 +03:00
-8,
2021-01-22 18:54:05 +03:00
// State 27
0,
// State 28
2021-02-18 17:30:14 +03:00
-36,
2021-01-22 18:54:05 +03:00
// State 29
0,
// State 30
0,
// State 31
0,
// State 32
0,
// State 33
0,
// State 34
0,
// State 35
2021-01-27 00:37:58 +03:00
0,
2021-01-22 18:54:05 +03:00
// State 36
0,
// State 37
0,
// State 38
2021-01-27 00:37:58 +03:00
0,
2021-01-22 18:54:05 +03:00
// State 39
0,
// State 40
0,
// State 41
2021-02-01 18:53:00 +03:00
0,
2021-01-22 18:54:05 +03:00
// State 42
0,
// State 43
0,
// State 44
2021-02-18 17:30:14 +03:00
-30,
2021-01-22 18:54:05 +03:00
// State 45
2021-01-27 00:37:58 +03:00
0,
2021-01-22 18:54:05 +03:00
// State 46
2021-01-27 00:37:58 +03:00
0,
2021-01-22 18:54:05 +03:00
// State 47
2021-02-18 17:30:14 +03:00
-32,
2021-01-22 18:54:05 +03:00
// State 48
0,
// State 49
2021-01-27 00:37:58 +03:00
0,
2021-01-22 18:54:05 +03:00
// State 50
0,
// State 51
0,
// State 52
2021-02-01 18:53:00 +03:00
0,
2021-01-22 18:54:05 +03:00
// State 53
2021-02-01 18:53:00 +03:00
0,
2021-01-22 18:54:05 +03:00
// State 54
2021-02-01 18:53:00 +03:00
0,
2021-01-22 18:54:05 +03:00
// State 55
0,
// State 56
2021-02-18 17:30:14 +03:00
-29,
2021-01-22 18:54:05 +03:00
// State 57
2021-02-18 17:30:14 +03:00
-28,
2021-02-11 15:39:37 +03:00
// State 58
2021-02-18 17:30:14 +03:00
-33,
2021-01-22 18:54:05 +03:00
// State 59
0,
// State 60
2021-02-18 17:30:14 +03:00
-27,
2021-01-22 18:54:05 +03:00
// State 61
0,
2021-01-27 00:37:58 +03:00
// State 62
0,
// State 63
0,
// State 64
2021-02-01 18:53:00 +03:00
0,
2021-01-27 00:37:58 +03:00
// State 65
2021-02-01 18:53:00 +03:00
0,
2021-01-27 00:37:58 +03:00
// State 66
2021-02-01 18:53:00 +03:00
0,
2021-01-27 00:37:58 +03:00
// State 67
0,
// State 68
2021-02-11 15:39:37 +03:00
0,
2021-01-27 00:37:58 +03:00
// State 69
2021-02-11 15:39:37 +03:00
0,
2021-02-01 18:53:00 +03:00
// State 70
2021-02-11 15:39:37 +03:00
0,
2021-02-01 18:53:00 +03:00
// State 71
2021-02-11 15:39:37 +03:00
0,
2021-02-01 18:53:00 +03:00
// State 72
0,
// State 73
2021-02-16 09:45:33 +03:00
0,
2021-02-01 18:53:00 +03:00
// State 74
2021-02-16 09:45:33 +03:00
0,
2021-02-11 15:39:37 +03:00
// State 75
2021-02-18 17:30:14 +03:00
-31,
2021-02-11 15:39:37 +03:00
// State 76
2021-02-18 17:30:14 +03:00
-34,
2021-02-11 15:39:37 +03:00
// State 77
2021-02-18 17:30:14 +03:00
-35,
2021-02-11 15:39:37 +03:00
// State 78
2021-02-18 17:30:14 +03:00
-26,
2021-02-11 15:39:37 +03:00
// State 79
2021-01-27 00:37:58 +03:00
0,
2021-02-16 09:45:33 +03:00
// State 80
0,
// State 81
0,
2021-01-22 18:54:05 +03:00
];
fn __goto(state: i8, nt: usize) -> i8 {
match nt {
2021-02-01 18:53:00 +03:00
2 => 24,
2021-02-18 17:30:14 +03:00
5 => 25,
6 => match state {
2021-02-16 09:45:33 +03:00
24 => 79,
2021-02-01 18:53:00 +03:00
_ => 63,
2021-01-22 18:54:05 +03:00
},
2021-02-18 17:30:14 +03:00
7 => 21,
8 => 64,
9 => match state {
2021-02-01 18:53:00 +03:00
8 | 23 => 45,
16..=17 => 51,
_ => 31,
2021-01-22 18:54:05 +03:00
},
2021-02-18 17:30:14 +03:00
10 => 15,
11 => match state {
2021-02-16 09:45:33 +03:00
23 => 73,
2021-02-01 18:53:00 +03:00
_ => 46,
2021-01-22 18:54:05 +03:00
},
2021-02-18 17:30:14 +03:00
12 => match state {
2021-02-01 18:53:00 +03:00
6 => 13,
7 => 14,
0 => 26,
12 => 48,
13 => 49,
14 => 50,
18 => 53,
19 => 54,
20 => 55,
_ => 12,
2021-01-27 00:37:58 +03:00
},
2021-02-18 17:30:14 +03:00
13 => 37,
14 => match state {
2021-02-01 18:53:00 +03:00
4 => 11,
10 => 19,
11 => 20,
_ => 10,
2021-01-22 18:54:05 +03:00
},
2021-02-18 17:30:14 +03:00
15 => 59,
17 => match state {
2021-02-01 18:53:00 +03:00
1 => 32,
_ => 17,
2021-01-22 18:54:05 +03:00
},
2021-02-18 17:30:14 +03:00
18 => 8,
19 => match state {
2021-02-01 18:53:00 +03:00
17 => 52,
_ => 23,
2021-01-22 18:54:05 +03:00
},
_ => 0,
}
}
fn __expected_tokens(__state: i8) -> alloc::vec::Vec<alloc::string::String> {
2021-01-22 18:54:05 +03:00
const __TERMINAL: &[&str] = &[
r###""(""###,
r###"")""###,
r###""[""###,
r###""]""###,
r###"Accumulator"###,
r###"Alphanumeric"###,
2021-02-16 09:45:33 +03:00
r###"Boolean"###,
2021-01-22 18:54:05 +03:00
r###"InitPeerId"###,
r###"JsonPath"###,
2021-02-11 15:39:37 +03:00
r###"LastError"###,
2021-01-22 18:54:05 +03:00
r###"Literal"###,
2021-02-16 09:45:33 +03:00
r###"Number"###,
2021-01-22 18:54:05 +03:00
r###"call"###,
r###"fold"###,
2021-01-27 00:37:58 +03:00
r###"match_"###,
2021-02-01 18:53:00 +03:00
r###"mismatch"###,
2021-01-22 18:54:05 +03:00
r###"next"###,
r###"null"###,
r###"par"###,
r###"seq"###,
r###"xor"###,
];
__TERMINAL.iter().enumerate().filter_map(|(index, terminal)| {
let next_state = __action(__state, index);
if next_state == 0 {
None
} else {
Some(alloc::string::ToString::to_string(terminal))
2021-01-22 18:54:05 +03:00
}
}).collect()
}
2021-03-19 19:15:41 +03:00
pub(crate) struct __StateMachine<'err, 'input, 'v>
where 'input: 'err, 'input: 'v
2021-01-22 18:54:05 +03:00
{
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
__phantom: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-01-22 18:54:05 +03:00
}
2021-03-19 19:15:41 +03:00
impl<'err, 'input, 'v> __state_machine::ParserDefinition for __StateMachine<'err, 'input, 'v>
where 'input: 'err, 'input: 'v
2021-01-22 18:54:05 +03:00
{
type Location = usize;
2021-03-19 19:15:41 +03:00
type Error = ParserError;
2021-01-22 18:54:05 +03:00
type Token = Token<'input>;
type TokenIndex = usize;
type Symbol = __Symbol<'input>;
type Success = Box<Instruction<'input>>;
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> {
2021-03-19 19:15:41 +03:00
__token_to_integer(token, core::marker::PhantomData::<(&(), &(), &())>)
2021-01-22 18:54:05 +03:00
}
#[inline]
fn action(&self, state: i8, integer: usize) -> i8 {
__action(state, integer)
}
#[inline]
fn error_action(&self, state: i8) -> i8 {
2021-02-16 09:45:33 +03:00
__action(state, 22 - 1)
2021-01-22 18:54:05 +03:00
}
#[inline]
fn eof_action(&self, state: i8) -> i8 {
__EOF_ACTION[state as usize]
}
#[inline]
fn goto(&self, state: i8, nt: usize) -> i8 {
__goto(state, nt)
}
fn token_to_symbol(&self, token_index: usize, token: Self::Token) -> Self::Symbol {
2021-03-19 19:15:41 +03:00
__token_to_symbol(token_index, token, core::marker::PhantomData::<(&(), &(), &())>)
2021-01-22 18:54:05 +03:00
}
fn expected_tokens(&self, state: i8) -> alloc::vec::Vec<alloc::string::String> {
2021-01-22 18:54:05 +03:00
__expected_tokens(state)
}
#[inline]
fn uses_error_recovery(&self) -> bool {
true
}
#[inline]
fn error_recovery_symbol(
&self,
recovery: __state_machine::ErrorRecovery<Self>,
) -> Self::Symbol {
2021-02-16 09:45:33 +03:00
__Symbol::Variant5(recovery)
2021-01-22 18:54:05 +03:00
}
fn reduce(
&mut self,
action: i8,
start_location: Option<&Self::Location>,
states: &mut alloc::vec::Vec<i8>,
symbols: &mut alloc::vec::Vec<__state_machine::SymbolTriple<Self>>,
2021-01-22 18:54:05 +03:00
) -> Option<__state_machine::ParseResult<Self>> {
__reduce(
self.input,
self.errors,
2021-03-19 19:15:41 +03:00
self.validator,
2021-01-22 18:54:05 +03:00
action,
start_location,
states,
symbols,
2021-03-19 19:15:41 +03:00
core::marker::PhantomData::<(&(), &(), &())>,
2021-01-22 18:54:05 +03:00
)
}
fn simulate_reduce(&self, action: i8) -> __state_machine::SimulatedReduce<Self> {
2021-03-19 19:15:41 +03:00
__simulate_reduce(action, core::marker::PhantomData::<(&(), &(), &())>)
2021-01-22 18:54:05 +03:00
}
}
fn __token_to_integer<
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
__token: &Token<'input>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-01-22 18:54:05 +03:00
) -> Option<usize>
{
match *__token {
Token::OpenRoundBracket if true => Some(0),
Token::CloseRoundBracket if true => Some(1),
Token::OpenSquareBracket if true => Some(2),
Token::CloseSquareBracket if true => Some(3),
Token::Accumulator(_) if true => Some(4),
Token::Alphanumeric(_) if true => Some(5),
2021-02-16 09:45:33 +03:00
Token::Boolean(_) if true => Some(6),
Token::InitPeerId if true => Some(7),
2021-02-18 17:30:14 +03:00
Token::JsonPath(_, _, _) if true => Some(8),
2021-02-16 09:45:33 +03:00
Token::LastError if true => Some(9),
Token::StringLiteral(_) if true => Some(10),
Token::Number(_) if true => Some(11),
Token::Call if true => Some(12),
Token::Fold if true => Some(13),
Token::Match if true => Some(14),
Token::MisMatch if true => Some(15),
Token::Next if true => Some(16),
Token::Null if true => Some(17),
Token::Par if true => Some(18),
Token::Seq if true => Some(19),
Token::Xor if true => Some(20),
2021-01-22 18:54:05 +03:00
_ => None,
}
}
fn __token_to_symbol<
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
__token_index: usize,
__token: Token<'input>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-01-22 18:54:05 +03:00
) -> __Symbol<'input>
{
match __token_index {
2021-02-16 09:45:33 +03:00
0 | 1 | 2 | 3 | 7 | 9 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 => __Symbol::Variant0(__token),
4 | 5 | 10 => match __token {
2021-01-22 18:54:05 +03:00
Token::Accumulator(__tok0) | Token::Alphanumeric(__tok0) | Token::StringLiteral(__tok0) if true => __Symbol::Variant1(__tok0),
_ => unreachable!(),
},
2021-02-16 09:45:33 +03:00
6 => match __token {
Token::Boolean(__tok0) if true => __Symbol::Variant2(__tok0),
_ => unreachable!(),
},
8 => match __token {
2021-02-18 17:30:14 +03:00
Token::JsonPath(__tok0, __tok1, __tok2) if true => __Symbol::Variant3((__tok0, __tok1, __tok2)),
2021-02-16 09:45:33 +03:00
_ => unreachable!(),
},
11 => match __token {
Token::Number(__tok0) if true => __Symbol::Variant4(__tok0),
2021-01-22 18:54:05 +03:00
_ => unreachable!(),
},
_ => unreachable!(),
}
}
fn __simulate_reduce<
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
__reduce_index: i8,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
) -> __state_machine::SimulatedReduce<__StateMachine<'err, 'input, 'v>>
2021-01-22 18:54:05 +03:00
where
'input: 'err,
2021-03-19 19:15:41 +03:00
'input: 'v,
2021-01-22 18:54:05 +03:00
{
match __reduce_index {
0 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
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: 1,
nonterminal_produced: 2,
}
}
4 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 2,
}
}
5 => {
__state_machine::SimulatedReduce::Reduce {
2021-02-18 17:30:14 +03:00
states_to_pop: 0,
2021-01-22 18:54:05 +03:00
nonterminal_produced: 3,
}
}
6 => {
__state_machine::SimulatedReduce::Reduce {
2021-02-18 17:30:14 +03:00
states_to_pop: 0,
2021-01-22 18:54:05 +03:00
nonterminal_produced: 4,
}
}
7 => {
__state_machine::SimulatedReduce::Reduce {
2021-02-18 17:30:14 +03:00
states_to_pop: 1,
2021-01-22 18:54:05 +03:00
nonterminal_produced: 5,
}
}
8 => {
__state_machine::SimulatedReduce::Reduce {
2021-02-18 17:30:14 +03:00
states_to_pop: 1,
nonterminal_produced: 6,
2021-01-22 18:54:05 +03:00
}
}
9 => {
__state_machine::SimulatedReduce::Reduce {
2021-02-18 17:30:14 +03:00
states_to_pop: 2,
nonterminal_produced: 7,
2021-01-22 18:54:05 +03:00
}
}
10 => {
__state_machine::SimulatedReduce::Reduce {
2021-02-18 17:30:14 +03:00
states_to_pop: 3,
nonterminal_produced: 7,
2021-01-22 18:54:05 +03:00
}
}
11 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
2021-02-18 17:30:14 +03:00
nonterminal_produced: 8,
2021-01-22 18:54:05 +03:00
}
}
12 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
2021-02-18 17:30:14 +03:00
nonterminal_produced: 8,
2021-01-22 18:54:05 +03:00
}
}
13 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
2021-02-18 17:30:14 +03:00
nonterminal_produced: 8,
2021-01-22 18:54:05 +03:00
}
}
14 => {
__state_machine::SimulatedReduce::Reduce {
2021-02-11 15:39:37 +03:00
states_to_pop: 1,
2021-02-18 17:30:14 +03:00
nonterminal_produced: 8,
2021-01-22 18:54:05 +03:00
}
}
15 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
2021-02-18 17:30:14 +03:00
nonterminal_produced: 8,
2021-01-22 18:54:05 +03:00
}
}
16 => {
__state_machine::SimulatedReduce::Reduce {
2021-02-11 15:39:37 +03:00
states_to_pop: 1,
2021-02-18 17:30:14 +03:00
nonterminal_produced: 8,
2021-01-22 18:54:05 +03:00
}
}
17 => {
__state_machine::SimulatedReduce::Reduce {
2021-02-11 15:39:37 +03:00
states_to_pop: 1,
2021-02-18 17:30:14 +03:00
nonterminal_produced: 8,
2021-01-22 18:54:05 +03:00
}
}
18 => {
__state_machine::SimulatedReduce::Reduce {
2021-02-11 15:39:37 +03:00
states_to_pop: 1,
2021-02-18 17:30:14 +03:00
nonterminal_produced: 9,
2021-01-22 18:54:05 +03:00
}
}
19 => {
2021-02-16 09:45:33 +03:00
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
2021-02-18 17:30:14 +03:00
nonterminal_produced: 9,
2021-02-16 09:45:33 +03:00
}
}
20 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
2021-02-18 17:30:14 +03:00
nonterminal_produced: 9,
2021-02-16 09:45:33 +03:00
}
}
21 => {
2021-01-22 18:54:05 +03:00
__state_machine::SimulatedReduce::Reduce {
2021-02-18 17:30:14 +03:00
states_to_pop: 1,
nonterminal_produced: 9,
2021-01-22 18:54:05 +03:00
}
}
2021-02-16 09:45:33 +03:00
22 => {
2021-01-22 18:54:05 +03:00
__state_machine::SimulatedReduce::Reduce {
2021-02-11 15:39:37 +03:00
states_to_pop: 1,
2021-02-18 17:30:14 +03:00
nonterminal_produced: 10,
2021-01-22 18:54:05 +03:00
}
}
2021-02-16 09:45:33 +03:00
23 => {
2021-01-22 18:54:05 +03:00
__state_machine::SimulatedReduce::Reduce {
2021-02-18 17:30:14 +03:00
states_to_pop: 4,
2021-02-11 15:39:37 +03:00
nonterminal_produced: 10,
2021-01-22 18:54:05 +03:00
}
}
2021-02-16 09:45:33 +03:00
24 => {
2021-01-22 18:54:05 +03:00
__state_machine::SimulatedReduce::Reduce {
2021-02-18 17:30:14 +03:00
states_to_pop: 1,
nonterminal_produced: 11,
2021-01-22 18:54:05 +03:00
}
}
2021-02-16 09:45:33 +03:00
25 => {
2021-01-22 18:54:05 +03:00
__state_machine::SimulatedReduce::Reduce {
2021-02-18 17:30:14 +03:00
states_to_pop: 7,
nonterminal_produced: 12,
2021-01-22 18:54:05 +03:00
}
}
2021-02-16 09:45:33 +03:00
26 => {
2021-01-22 18:54:05 +03:00
__state_machine::SimulatedReduce::Reduce {
2021-02-18 17:30:14 +03:00
states_to_pop: 6,
nonterminal_produced: 12,
2021-01-22 18:54:05 +03:00
}
}
2021-02-16 09:45:33 +03:00
27 => {
2021-01-22 18:54:05 +03:00
__state_machine::SimulatedReduce::Reduce {
2021-02-18 17:30:14 +03:00
states_to_pop: 5,
nonterminal_produced: 12,
2021-01-22 18:54:05 +03:00
}
}
2021-02-16 09:45:33 +03:00
28 => {
2021-01-22 18:54:05 +03:00
__state_machine::SimulatedReduce::Reduce {
2021-02-18 17:30:14 +03:00
states_to_pop: 5,
nonterminal_produced: 12,
2021-01-22 18:54:05 +03:00
}
}
2021-02-16 09:45:33 +03:00
29 => {
2021-01-22 18:54:05 +03:00
__state_machine::SimulatedReduce::Reduce {
2021-02-18 17:30:14 +03:00
states_to_pop: 3,
nonterminal_produced: 12,
2021-01-22 18:54:05 +03:00
}
}
2021-02-16 09:45:33 +03:00
30 => {
2021-01-22 18:54:05 +03:00
__state_machine::SimulatedReduce::Reduce {
2021-02-18 17:30:14 +03:00
states_to_pop: 6,
nonterminal_produced: 12,
2021-01-22 18:54:05 +03:00
}
}
2021-02-16 09:45:33 +03:00
31 => {
2021-01-22 18:54:05 +03:00
__state_machine::SimulatedReduce::Reduce {
2021-02-18 17:30:14 +03:00
states_to_pop: 4,
nonterminal_produced: 12,
2021-01-22 18:54:05 +03:00
}
}
2021-02-16 09:45:33 +03:00
32 => {
2021-01-22 18:54:05 +03:00
__state_machine::SimulatedReduce::Reduce {
2021-02-18 17:30:14 +03:00
states_to_pop: 5,
nonterminal_produced: 12,
2021-01-22 18:54:05 +03:00
}
}
2021-02-16 09:45:33 +03:00
33 => {
2021-01-22 18:54:05 +03:00
__state_machine::SimulatedReduce::Reduce {
2021-02-18 17:30:14 +03:00
states_to_pop: 6,
nonterminal_produced: 12,
2021-01-22 18:54:05 +03:00
}
}
2021-02-16 09:45:33 +03:00
34 => {
2021-01-22 18:54:05 +03:00
__state_machine::SimulatedReduce::Reduce {
2021-02-18 17:30:14 +03:00
states_to_pop: 6,
nonterminal_produced: 12,
2021-01-22 18:54:05 +03:00
}
}
2021-02-16 09:45:33 +03:00
35 => {
2021-01-22 18:54:05 +03:00
__state_machine::SimulatedReduce::Reduce {
2021-01-27 00:37:58 +03:00
states_to_pop: 1,
2021-02-18 17:30:14 +03:00
nonterminal_produced: 12,
2021-01-22 18:54:05 +03:00
}
}
2021-02-16 09:45:33 +03:00
36 => {
2021-01-27 00:37:58 +03:00
__state_machine::SimulatedReduce::Reduce {
2021-02-01 18:53:00 +03:00
states_to_pop: 1,
2021-02-18 17:30:14 +03:00
nonterminal_produced: 13,
2021-01-27 00:37:58 +03:00
}
}
2021-02-16 09:45:33 +03:00
37 => {
2021-02-01 18:53:00 +03:00
__state_machine::SimulatedReduce::Reduce {
2021-02-11 15:39:37 +03:00
states_to_pop: 1,
2021-02-18 17:30:14 +03:00
nonterminal_produced: 13,
2021-02-01 18:53:00 +03:00
}
}
2021-02-16 09:45:33 +03:00
38 => {
2021-01-22 18:54:05 +03:00
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
2021-02-18 17:30:14 +03:00
nonterminal_produced: 14,
2021-01-27 00:37:58 +03:00
}
}
2021-02-16 09:45:33 +03:00
39 => {
2021-01-27 00:37:58 +03:00
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
2021-02-18 17:30:14 +03:00
nonterminal_produced: 14,
2021-01-27 00:37:58 +03:00
}
}
2021-02-16 09:45:33 +03:00
40 => {
2021-01-27 00:37:58 +03:00
__state_machine::SimulatedReduce::Reduce {
2021-02-11 15:39:37 +03:00
states_to_pop: 1,
2021-02-18 17:30:14 +03:00
nonterminal_produced: 14,
2021-01-22 18:54:05 +03:00
}
}
2021-02-16 09:45:33 +03:00
41 => {
2021-02-11 15:39:37 +03:00
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
2021-02-18 17:30:14 +03:00
nonterminal_produced: 15,
2021-02-11 15:39:37 +03:00
}
}
2021-02-16 09:45:33 +03:00
42 => {
2021-02-11 15:39:37 +03:00
__state_machine::SimulatedReduce::Reduce {
2021-02-18 17:30:14 +03:00
states_to_pop: 1,
nonterminal_produced: 15,
2021-02-11 15:39:37 +03:00
}
}
2021-02-16 09:45:33 +03:00
43 => {
2021-02-11 15:39:37 +03:00
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
2021-02-18 17:30:14 +03:00
nonterminal_produced: 16,
2021-02-11 15:39:37 +03:00
}
}
2021-02-16 09:45:33 +03:00
44 => {
2021-01-27 00:37:58 +03:00
__state_machine::SimulatedReduce::Reduce {
2021-02-18 17:30:14 +03:00
states_to_pop: 0,
2021-01-27 00:37:58 +03:00
nonterminal_produced: 16,
}
}
2021-02-16 09:45:33 +03:00
45 => {
2021-02-11 15:39:37 +03:00
__state_machine::SimulatedReduce::Reduce {
2021-02-18 17:30:14 +03:00
states_to_pop: 1,
nonterminal_produced: 17,
2021-02-11 15:39:37 +03:00
}
}
2021-02-16 09:45:33 +03:00
46 => {
2021-02-11 15:39:37 +03:00
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
2021-02-18 17:30:14 +03:00
nonterminal_produced: 18,
}
}
47 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 4,
nonterminal_produced: 18,
}
}
48 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 19,
2021-02-11 15:39:37 +03:00
}
}
2021-02-18 17:30:14 +03:00
49 => __state_machine::SimulatedReduce::Accept,
2021-01-22 18:54:05 +03:00
_ => panic!("invalid reduction index {}", __reduce_index)
}
}
pub struct AIRParser {
_priv: (),
}
impl AIRParser {
pub fn new() -> AIRParser {
AIRParser {
_priv: (),
}
}
#[allow(dead_code)]
pub fn parse<
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
__TOKEN: __ToTriple<'err, 'input, 'v, >,
2021-01-22 18:54:05 +03:00
__TOKENS: IntoIterator<Item=__TOKEN>,
>(
&self,
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
__tokens0: __TOKENS,
2021-03-19 19:15:41 +03:00
) -> Result<Box<Instruction<'input>>, __lalrpop_util::ParseError<usize, Token<'input>, ParserError>>
2021-01-22 18:54:05 +03:00
{
let __tokens = __tokens0.into_iter();
let mut __tokens = __tokens.map(|t| __ToTriple::to_triple(t));
__state_machine::Parser::drive(
__StateMachine {
input,
errors,
2021-03-19 19:15:41 +03:00
validator,
__phantom: core::marker::PhantomData::<(&(), &(), &())>,
2021-01-22 18:54:05 +03:00
},
__tokens,
)
}
}
fn __accepts<
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
__error_state: i8,
__states: & [i8],
__opt_integer: Option<usize>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-01-22 18:54:05 +03:00
) -> bool
{
let mut __states = __states.to_vec();
__states.push(__error_state);
loop {
let mut __states_len = __states.len();
let __top = __states[__states_len - 1];
let __action = match __opt_integer {
None => __EOF_ACTION[__top as usize],
Some(__integer) => __action(__top, __integer),
};
if __action == 0 { return false; }
if __action > 0 { return true; }
2021-03-19 19:15:41 +03:00
let (__to_pop, __nt) = match __simulate_reduce(-(__action + 1), core::marker::PhantomData::<(&(), &(), &())>) {
2021-01-22 18:54:05 +03:00
__state_machine::SimulatedReduce::Reduce {
states_to_pop, nonterminal_produced
} => (states_to_pop, nonterminal_produced),
__state_machine::SimulatedReduce::Accept => return true,
};
__states_len -= __to_pop;
__states.truncate(__states_len);
let __top = __states[__states_len - 1];
let __next_state = __goto(__top, __nt);
__states.push(__next_state);
}
}
pub(crate) fn __reduce<
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
__action: i8,
__lookahead_start: Option<&usize>,
__states: &mut alloc::vec::Vec<i8>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
) -> Option<Result<Box<Instruction<'input>>,__lalrpop_util::ParseError<usize, Token<'input>, ParserError>>>
2021-01-22 18:54:05 +03:00
{
let (__pop_states, __nonterminal) = match __action {
0 => {
2021-03-19 19:15:41 +03:00
__reduce0(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-01-22 18:54:05 +03:00
}
1 => {
2021-03-19 19:15:41 +03:00
__reduce1(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-01-22 18:54:05 +03:00
}
2 => {
2021-03-19 19:15:41 +03:00
__reduce2(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-01-22 18:54:05 +03:00
}
3 => {
2021-03-19 19:15:41 +03:00
__reduce3(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-01-22 18:54:05 +03:00
}
4 => {
2021-03-19 19:15:41 +03:00
__reduce4(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-01-22 18:54:05 +03:00
}
5 => {
2021-03-19 19:15:41 +03:00
__reduce5(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-01-22 18:54:05 +03:00
}
6 => {
2021-03-19 19:15:41 +03:00
__reduce6(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-01-22 18:54:05 +03:00
}
7 => {
2021-03-19 19:15:41 +03:00
__reduce7(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-01-22 18:54:05 +03:00
}
8 => {
2021-03-19 19:15:41 +03:00
__reduce8(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-01-22 18:54:05 +03:00
}
9 => {
2021-03-19 19:15:41 +03:00
__reduce9(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-01-22 18:54:05 +03:00
}
10 => {
2021-03-19 19:15:41 +03:00
__reduce10(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-01-22 18:54:05 +03:00
}
11 => {
2021-03-19 19:15:41 +03:00
__reduce11(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-01-22 18:54:05 +03:00
}
12 => {
2021-03-19 19:15:41 +03:00
__reduce12(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-01-22 18:54:05 +03:00
}
13 => {
2021-03-19 19:15:41 +03:00
__reduce13(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-01-22 18:54:05 +03:00
}
14 => {
2021-03-19 19:15:41 +03:00
__reduce14(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-01-22 18:54:05 +03:00
}
15 => {
2021-03-19 19:15:41 +03:00
__reduce15(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-01-22 18:54:05 +03:00
}
16 => {
2021-03-19 19:15:41 +03:00
__reduce16(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-01-22 18:54:05 +03:00
}
17 => {
2021-03-19 19:15:41 +03:00
__reduce17(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-01-22 18:54:05 +03:00
}
18 => {
2021-03-19 19:15:41 +03:00
__reduce18(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-01-22 18:54:05 +03:00
}
19 => {
2021-03-19 19:15:41 +03:00
__reduce19(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-01-22 18:54:05 +03:00
}
20 => {
2021-03-19 19:15:41 +03:00
__reduce20(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-01-22 18:54:05 +03:00
}
21 => {
2021-03-19 19:15:41 +03:00
__reduce21(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-01-22 18:54:05 +03:00
}
22 => {
2021-03-19 19:15:41 +03:00
__reduce22(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-01-22 18:54:05 +03:00
}
23 => {
2021-03-19 19:15:41 +03:00
__reduce23(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-01-22 18:54:05 +03:00
}
24 => {
2021-03-19 19:15:41 +03:00
__reduce24(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-01-22 18:54:05 +03:00
}
25 => {
2021-03-19 19:15:41 +03:00
__reduce25(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-01-22 18:54:05 +03:00
}
26 => {
2021-03-19 19:15:41 +03:00
__reduce26(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-01-22 18:54:05 +03:00
}
27 => {
2021-03-19 19:15:41 +03:00
__reduce27(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-01-22 18:54:05 +03:00
}
28 => {
2021-03-19 19:15:41 +03:00
__reduce28(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-01-22 18:54:05 +03:00
}
29 => {
2021-03-19 19:15:41 +03:00
__reduce29(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-01-22 18:54:05 +03:00
}
30 => {
2021-03-19 19:15:41 +03:00
__reduce30(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-01-22 18:54:05 +03:00
}
31 => {
2021-03-19 19:15:41 +03:00
__reduce31(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-01-22 18:54:05 +03:00
}
32 => {
2021-03-19 19:15:41 +03:00
__reduce32(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-01-22 18:54:05 +03:00
}
33 => {
2021-03-19 19:15:41 +03:00
__reduce33(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-01-22 18:54:05 +03:00
}
34 => {
2021-03-19 19:15:41 +03:00
__reduce34(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-01-22 18:54:05 +03:00
}
35 => {
2021-03-19 19:15:41 +03:00
__reduce35(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-01-27 00:37:58 +03:00
}
36 => {
2021-03-19 19:15:41 +03:00
__reduce36(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-01-27 00:37:58 +03:00
}
37 => {
2021-03-19 19:15:41 +03:00
__reduce37(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-01-27 00:37:58 +03:00
}
38 => {
2021-03-19 19:15:41 +03:00
__reduce38(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-01-27 00:37:58 +03:00
}
39 => {
2021-03-19 19:15:41 +03:00
__reduce39(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-02-01 18:53:00 +03:00
}
40 => {
2021-03-19 19:15:41 +03:00
__reduce40(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-02-11 15:39:37 +03:00
}
41 => {
2021-03-19 19:15:41 +03:00
__reduce41(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-02-11 15:39:37 +03:00
}
42 => {
2021-03-19 19:15:41 +03:00
__reduce42(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-02-11 15:39:37 +03:00
}
43 => {
2021-03-19 19:15:41 +03:00
__reduce43(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-02-11 15:39:37 +03:00
}
44 => {
2021-03-19 19:15:41 +03:00
__reduce44(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-02-11 15:39:37 +03:00
}
45 => {
2021-03-19 19:15:41 +03:00
__reduce45(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-02-16 09:45:33 +03:00
}
46 => {
2021-03-19 19:15:41 +03:00
__reduce46(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-02-16 09:45:33 +03:00
}
47 => {
2021-03-19 19:15:41 +03:00
__reduce47(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-02-18 17:30:14 +03:00
}
48 => {
2021-03-19 19:15:41 +03:00
__reduce48(input, errors, validator, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), &(), &())>)
2021-02-18 17:30:14 +03:00
}
49 => {
2021-01-22 18:54:05 +03:00
// __AIR = AIR => ActionFn(0);
2021-02-18 17:30:14 +03:00
let __sym0 = __pop_Variant9(__symbols);
2021-01-22 18:54:05 +03:00
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action0::<>(input, errors, validator, __sym0);
2021-01-22 18:54:05 +03:00
return Some(Ok(__nt));
}
_ => panic!("invalid action code {}", __action)
};
let __states_len = __states.len();
__states.truncate(__states_len - __pop_states);
let __state = *__states.last().unwrap();
let __next_state = __goto(__state, __nonterminal);
__states.push(__next_state);
None
}
#[inline(never)]
fn __symbol_type_mismatch() -> ! {
panic!("symbol type mismatch")
}
2021-02-16 09:45:33 +03:00
fn __pop_Variant3<
2021-01-22 18:54:05 +03:00
'input,
>(
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>
2021-02-18 17:30:14 +03:00
) -> (usize, (&'input str, usize, bool), usize)
2021-01-22 18:54:05 +03:00
{
match __symbols.pop() {
2021-02-16 09:45:33 +03:00
Some((__l, __Symbol::Variant3(__v), __r)) => (__l, __v, __r),
2021-01-22 18:54:05 +03:00
_ => __symbol_type_mismatch()
}
}
2021-02-18 17:30:14 +03:00
fn __pop_Variant9<
2021-01-22 18:54:05 +03:00
'input,
>(
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>
2021-01-22 18:54:05 +03:00
) -> (usize, Box<Instruction<'input>>, usize)
{
match __symbols.pop() {
2021-02-18 17:30:14 +03:00
Some((__l, __Symbol::Variant9(__v), __r)) => (__l, __v, __r),
2021-01-22 18:54:05 +03:00
_ => __symbol_type_mismatch()
}
}
2021-02-16 09:45:33 +03:00
fn __pop_Variant6<
2021-01-22 18:54:05 +03:00
'input,
>(
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>
2021-02-11 15:39:37 +03:00
) -> (usize, CallInstrArgValue<'input>, usize)
2021-01-22 18:54:05 +03:00
{
match __symbols.pop() {
2021-02-16 09:45:33 +03:00
Some((__l, __Symbol::Variant6(__v), __r)) => (__l, __v, __r),
2021-01-22 18:54:05 +03:00
_ => __symbol_type_mismatch()
}
}
2021-02-18 17:30:14 +03:00
fn __pop_Variant11<
2021-01-22 18:54:05 +03:00
'input,
>(
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>
2021-02-11 15:39:37 +03:00
) -> (usize, CallInstrValue<'input>, usize)
2021-01-22 18:54:05 +03:00
{
match __symbols.pop() {
2021-02-18 17:30:14 +03:00
Some((__l, __Symbol::Variant11(__v), __r)) => (__l, __v, __r),
2021-01-22 18:54:05 +03:00
_ => __symbol_type_mismatch()
}
}
2021-02-18 17:30:14 +03:00
fn __pop_Variant15<
2021-01-22 18:54:05 +03:00
'input,
>(
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>
2021-02-11 15:39:37 +03:00
) -> (usize, CallOutputValue<'input>, usize)
2021-01-22 18:54:05 +03:00
{
match __symbols.pop() {
2021-02-18 17:30:14 +03:00
Some((__l, __Symbol::Variant15(__v), __r)) => (__l, __v, __r),
2021-01-22 18:54:05 +03:00
_ => __symbol_type_mismatch()
}
}
2021-02-18 17:30:14 +03:00
fn __pop_Variant12<
2021-01-22 18:54:05 +03:00
'input,
>(
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>
2021-02-11 15:39:37 +03:00
) -> (usize, FunctionPart<'input>, usize)
2021-01-22 18:54:05 +03:00
{
match __symbols.pop() {
2021-02-18 17:30:14 +03:00
Some((__l, __Symbol::Variant12(__v), __r)) => (__l, __v, __r),
2021-01-22 18:54:05 +03:00
_ => __symbol_type_mismatch()
}
}
2021-02-18 17:30:14 +03:00
fn __pop_Variant13<
2021-01-27 00:37:58 +03:00
'input,
>(
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>
2021-02-11 15:39:37 +03:00
) -> (usize, IterableValue<'input>, usize)
2021-01-27 00:37:58 +03:00
{
match __symbols.pop() {
2021-02-18 17:30:14 +03:00
Some((__l, __Symbol::Variant13(__v), __r)) => (__l, __v, __r),
2021-01-27 00:37:58 +03:00
_ => __symbol_type_mismatch()
}
}
2021-02-18 17:30:14 +03:00
fn __pop_Variant14<
2021-02-11 15:39:37 +03:00
'input,
>(
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>
2021-02-11 15:39:37 +03:00
) -> (usize, MatchableValue<'input>, usize)
{
match __symbols.pop() {
2021-02-18 17:30:14 +03:00
Some((__l, __Symbol::Variant14(__v), __r)) => (__l, __v, __r),
2021-02-11 15:39:37 +03:00
_ => __symbol_type_mismatch()
}
}
2021-02-16 09:45:33 +03:00
fn __pop_Variant4<
'input,
>(
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>
2021-02-16 09:45:33 +03:00
) -> (usize, Number, usize)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant4(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
2021-02-18 17:30:14 +03:00
fn __pop_Variant17<
2021-01-22 18:54:05 +03:00
'input,
>(
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>
2021-01-22 18:54:05 +03:00
) -> (usize, PeerPart<'input>, usize)
{
match __symbols.pop() {
2021-02-18 17:30:14 +03:00
Some((__l, __Symbol::Variant17(__v), __r)) => (__l, __v, __r),
2021-01-22 18:54:05 +03:00
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant0<
'input,
>(
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>
2021-01-22 18:54:05 +03:00
) -> (usize, Token<'input>, usize)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant0(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
2021-02-18 17:30:14 +03:00
fn __pop_Variant10<
2021-01-22 18:54:05 +03:00
'input,
>(
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>
2021-02-11 15:39:37 +03:00
) -> (usize, Vec<CallInstrArgValue<'input>>, usize)
2021-01-22 18:54:05 +03:00
{
match __symbols.pop() {
2021-02-18 17:30:14 +03:00
Some((__l, __Symbol::Variant10(__v), __r)) => (__l, __v, __r),
2021-01-22 18:54:05 +03:00
_ => __symbol_type_mismatch()
}
}
2021-02-16 09:45:33 +03:00
fn __pop_Variant5<
2021-01-22 18:54:05 +03:00
'input,
>(
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>
2021-03-19 19:15:41 +03:00
) -> (usize, __lalrpop_util::ErrorRecovery<usize, Token<'input>, ParserError>, usize)
2021-01-22 18:54:05 +03:00
{
match __symbols.pop() {
2021-02-16 09:45:33 +03:00
Some((__l, __Symbol::Variant5(__v), __r)) => (__l, __v, __r),
2021-01-22 18:54:05 +03:00
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant7<
2021-02-16 09:45:33 +03:00
'input,
>(
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>
) -> (usize, alloc::vec::Vec<CallInstrArgValue<'input>>, usize)
2021-02-16 09:45:33 +03:00
{
match __symbols.pop() {
Some((__l, __Symbol::Variant7(__v), __r)) => (__l, __v, __r),
2021-02-16 09:45:33 +03:00
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant2<
2021-02-18 17:30:14 +03:00
'input,
>(
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>
) -> (usize, bool, usize)
2021-02-18 17:30:14 +03:00
{
match __symbols.pop() {
Some((__l, __Symbol::Variant2(__v), __r)) => (__l, __v, __r),
2021-02-18 17:30:14 +03:00
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant16<
2021-01-22 18:54:05 +03:00
'input,
>(
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>
) -> (usize, core::option::Option<CallOutputValue<'input>>, usize)
2021-01-22 18:54:05 +03:00
{
match __symbols.pop() {
2021-02-18 17:30:14 +03:00
Some((__l, __Symbol::Variant16(__v), __r)) => (__l, __v, __r),
2021-01-22 18:54:05 +03:00
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant8<
2021-01-22 18:54:05 +03:00
'input,
>(
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>
) -> (usize, usize, usize)
2021-01-22 18:54:05 +03:00
{
match __symbols.pop() {
Some((__l, __Symbol::Variant8(__v), __r)) => (__l, __v, __r),
2021-01-22 18:54:05 +03:00
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant1<
'input,
>(
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>
2021-01-22 18:54:05 +03:00
) -> (usize, &'input str, usize)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant1(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
pub(crate) fn __reduce0<
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-01-22 18:54:05 +03:00
) -> (usize, usize)
{
2021-03-19 19:15:41 +03:00
// (<Arg>) = Arg => ActionFn(41);
2021-02-16 09:45:33 +03:00
let __sym0 = __pop_Variant6(__symbols);
2021-01-22 18:54:05 +03:00
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action41::<>(input, errors, validator, __sym0);
2021-02-16 09:45:33 +03:00
__symbols.push((__start, __Symbol::Variant6(__nt), __end));
2021-01-22 18:54:05 +03:00
(1, 0)
}
pub(crate) fn __reduce1<
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-01-22 18:54:05 +03:00
) -> (usize, usize)
{
2021-03-19 19:15:41 +03:00
// (<Arg>)* = => ActionFn(39);
2021-01-22 18:54:05 +03:00
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2.clone())).unwrap_or_default();
let __end = __start.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action39::<>(input, errors, validator, &__start, &__end);
2021-02-16 09:45:33 +03:00
__symbols.push((__start, __Symbol::Variant7(__nt), __end));
2021-01-22 18:54:05 +03:00
(0, 1)
}
pub(crate) fn __reduce2<
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-01-22 18:54:05 +03:00
) -> (usize, usize)
{
2021-03-19 19:15:41 +03:00
// (<Arg>)* = (<Arg>)+ => ActionFn(40);
2021-02-16 09:45:33 +03:00
let __sym0 = __pop_Variant7(__symbols);
2021-01-22 18:54:05 +03:00
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action40::<>(input, errors, validator, __sym0);
2021-02-16 09:45:33 +03:00
__symbols.push((__start, __Symbol::Variant7(__nt), __end));
2021-01-22 18:54:05 +03:00
(1, 1)
}
pub(crate) fn __reduce3<
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-01-22 18:54:05 +03:00
) -> (usize, usize)
{
2021-02-18 17:30:14 +03:00
// (<Arg>)+ = Arg => ActionFn(48);
2021-02-16 09:45:33 +03:00
let __sym0 = __pop_Variant6(__symbols);
2021-01-22 18:54:05 +03:00
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action48::<>(input, errors, validator, __sym0);
2021-02-16 09:45:33 +03:00
__symbols.push((__start, __Symbol::Variant7(__nt), __end));
2021-01-22 18:54:05 +03:00
(1, 2)
}
pub(crate) fn __reduce4<
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-01-22 18:54:05 +03:00
) -> (usize, usize)
{
2021-02-18 17:30:14 +03:00
// (<Arg>)+ = (<Arg>)+, Arg => ActionFn(49);
2021-01-22 18:54:05 +03:00
assert!(__symbols.len() >= 2);
2021-02-16 09:45:33 +03:00
let __sym1 = __pop_Variant6(__symbols);
let __sym0 = __pop_Variant7(__symbols);
2021-01-22 18:54:05 +03:00
let __start = __sym0.0.clone();
let __end = __sym1.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action49::<>(input, errors, validator, __sym0, __sym1);
2021-02-16 09:45:33 +03:00
__symbols.push((__start, __Symbol::Variant7(__nt), __end));
2021-01-22 18:54:05 +03:00
(2, 2)
}
pub(crate) fn __reduce5<
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-01-22 18:54:05 +03:00
) -> (usize, usize)
2021-02-18 17:30:14 +03:00
{
2021-03-19 19:15:41 +03:00
// @L = => ActionFn(45);
2021-02-18 17:30:14 +03:00
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2.clone())).unwrap_or_default();
let __end = __start.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action45::<>(input, errors, validator, &__start, &__end);
2021-02-18 17:30:14 +03:00
__symbols.push((__start, __Symbol::Variant8(__nt), __end));
(0, 3)
}
pub(crate) fn __reduce6<
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-02-18 17:30:14 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-02-18 17:30:14 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-02-18 17:30:14 +03:00
) -> (usize, usize)
{
2021-03-19 19:15:41 +03:00
// @R = => ActionFn(42);
2021-02-18 17:30:14 +03:00
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2.clone())).unwrap_or_default();
let __end = __start.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action42::<>(input, errors, validator, &__start, &__end);
2021-02-18 17:30:14 +03:00
__symbols.push((__start, __Symbol::Variant8(__nt), __end));
(0, 4)
}
pub(crate) fn __reduce7<
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-02-18 17:30:14 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-02-18 17:30:14 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-02-18 17:30:14 +03:00
) -> (usize, usize)
2021-01-22 18:54:05 +03:00
{
// AIR = Instr => ActionFn(1);
2021-02-18 17:30:14 +03:00
let __sym0 = __pop_Variant9(__symbols);
2021-01-22 18:54:05 +03:00
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action1::<>(input, errors, validator, __sym0);
2021-02-18 17:30:14 +03:00
__symbols.push((__start, __Symbol::Variant9(__nt), __end));
(1, 5)
2021-01-22 18:54:05 +03:00
}
2021-02-18 17:30:14 +03:00
pub(crate) fn __reduce8<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-01-22 18:54:05 +03:00
) -> (usize, usize)
{
2021-02-11 15:39:37 +03:00
// Arg = CallInstrArgValue => ActionFn(26);
2021-02-16 09:45:33 +03:00
let __sym0 = __pop_Variant6(__symbols);
2021-01-22 18:54:05 +03:00
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action26::<>(input, errors, validator, __sym0);
2021-02-16 09:45:33 +03:00
__symbols.push((__start, __Symbol::Variant6(__nt), __end));
2021-02-18 17:30:14 +03:00
(1, 6)
2021-01-22 18:54:05 +03:00
}
2021-02-18 17:30:14 +03:00
pub(crate) fn __reduce9<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-01-22 18:54:05 +03:00
) -> (usize, usize)
{
2021-02-18 17:30:14 +03:00
// Args = "[", "]" => ActionFn(50);
2021-01-22 18:54:05 +03:00
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym1.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action50::<>(input, errors, validator, __sym0, __sym1);
2021-02-18 17:30:14 +03:00
__symbols.push((__start, __Symbol::Variant10(__nt), __end));
(2, 7)
2021-01-22 18:54:05 +03:00
}
2021-02-18 17:30:14 +03:00
pub(crate) fn __reduce10<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-01-22 18:54:05 +03:00
) -> (usize, usize)
{
2021-02-18 17:30:14 +03:00
// Args = "[", (<Arg>)+, "]" => ActionFn(51);
2021-01-22 18:54:05 +03:00
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant0(__symbols);
2021-02-16 09:45:33 +03:00
let __sym1 = __pop_Variant7(__symbols);
2021-01-22 18:54:05 +03:00
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym2.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action51::<>(input, errors, validator, __sym0, __sym1, __sym2);
2021-02-18 17:30:14 +03:00
__symbols.push((__start, __Symbol::Variant10(__nt), __end));
(3, 7)
2021-01-22 18:54:05 +03:00
}
2021-02-18 17:30:14 +03:00
pub(crate) fn __reduce11<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-01-22 18:54:05 +03:00
) -> (usize, usize)
{
2021-02-11 15:39:37 +03:00
// CallInstrArgValue = Literal => ActionFn(27);
2021-01-22 18:54:05 +03:00
let __sym0 = __pop_Variant1(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action27::<>(input, errors, validator, __sym0);
2021-02-16 09:45:33 +03:00
__symbols.push((__start, __Symbol::Variant6(__nt), __end));
2021-02-18 17:30:14 +03:00
(1, 8)
2021-01-22 18:54:05 +03:00
}
2021-02-18 17:30:14 +03:00
pub(crate) fn __reduce12<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-01-22 18:54:05 +03:00
) -> (usize, usize)
{
2021-02-11 15:39:37 +03:00
// CallInstrArgValue = Alphanumeric => ActionFn(28);
2021-01-22 18:54:05 +03:00
let __sym0 = __pop_Variant1(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action28::<>(input, errors, validator, __sym0);
2021-02-16 09:45:33 +03:00
__symbols.push((__start, __Symbol::Variant6(__nt), __end));
2021-02-18 17:30:14 +03:00
(1, 8)
2021-01-22 18:54:05 +03:00
}
2021-02-18 17:30:14 +03:00
pub(crate) fn __reduce13<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-01-22 18:54:05 +03:00
) -> (usize, usize)
{
2021-02-11 15:39:37 +03:00
// CallInstrArgValue = JsonPath => ActionFn(29);
2021-02-16 09:45:33 +03:00
let __sym0 = __pop_Variant3(__symbols);
2021-01-22 18:54:05 +03:00
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action29::<>(input, errors, validator, __sym0);
2021-02-16 09:45:33 +03:00
__symbols.push((__start, __Symbol::Variant6(__nt), __end));
2021-02-18 17:30:14 +03:00
(1, 8)
2021-01-22 18:54:05 +03:00
}
2021-02-18 17:30:14 +03:00
pub(crate) fn __reduce14<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-01-22 18:54:05 +03:00
) -> (usize, usize)
{
2021-02-16 09:45:33 +03:00
// CallInstrArgValue = Number => ActionFn(30);
let __sym0 = __pop_Variant4(__symbols);
2021-01-22 18:54:05 +03:00
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action30::<>(input, errors, validator, __sym0);
2021-02-16 09:45:33 +03:00
__symbols.push((__start, __Symbol::Variant6(__nt), __end));
2021-02-18 17:30:14 +03:00
(1, 8)
2021-01-22 18:54:05 +03:00
}
2021-02-18 17:30:14 +03:00
pub(crate) fn __reduce15<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-01-22 18:54:05 +03:00
) -> (usize, usize)
{
2021-02-16 09:45:33 +03:00
// CallInstrArgValue = Boolean => ActionFn(31);
let __sym0 = __pop_Variant2(__symbols);
2021-01-22 18:54:05 +03:00
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action31::<>(input, errors, validator, __sym0);
2021-02-16 09:45:33 +03:00
__symbols.push((__start, __Symbol::Variant6(__nt), __end));
2021-02-18 17:30:14 +03:00
(1, 8)
2021-02-11 15:39:37 +03:00
}
2021-02-18 17:30:14 +03:00
pub(crate) fn __reduce16<
2021-02-11 15:39:37 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-02-11 15:39:37 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-02-11 15:39:37 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-02-11 15:39:37 +03:00
) -> (usize, usize)
2021-02-16 09:45:33 +03:00
{
// CallInstrArgValue = InitPeerId => ActionFn(32);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action32::<>(input, errors, validator, __sym0);
2021-02-16 09:45:33 +03:00
__symbols.push((__start, __Symbol::Variant6(__nt), __end));
2021-02-18 17:30:14 +03:00
(1, 8)
2021-02-16 09:45:33 +03:00
}
2021-02-18 17:30:14 +03:00
pub(crate) fn __reduce17<
2021-02-16 09:45:33 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-02-16 09:45:33 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-02-16 09:45:33 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-02-16 09:45:33 +03:00
) -> (usize, usize)
{
// CallInstrArgValue = LastError => ActionFn(33);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action33::<>(input, errors, validator, __sym0);
2021-02-16 09:45:33 +03:00
__symbols.push((__start, __Symbol::Variant6(__nt), __end));
2021-02-18 17:30:14 +03:00
(1, 8)
2021-02-16 09:45:33 +03:00
}
2021-02-18 17:30:14 +03:00
pub(crate) fn __reduce18<
2021-02-16 09:45:33 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-02-16 09:45:33 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-02-16 09:45:33 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-02-16 09:45:33 +03:00
) -> (usize, usize)
2021-02-11 15:39:37 +03:00
{
// CallInstrValue = Literal => ActionFn(22);
let __sym0 = __pop_Variant1(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action22::<>(input, errors, validator, __sym0);
2021-02-18 17:30:14 +03:00
__symbols.push((__start, __Symbol::Variant11(__nt), __end));
(1, 9)
2021-01-22 18:54:05 +03:00
}
2021-02-18 17:30:14 +03:00
pub(crate) fn __reduce19<
2021-02-11 15:39:37 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-02-11 15:39:37 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-02-11 15:39:37 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-02-11 15:39:37 +03:00
) -> (usize, usize)
{
// CallInstrValue = Alphanumeric => ActionFn(23);
let __sym0 = __pop_Variant1(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action23::<>(input, errors, validator, __sym0);
2021-02-18 17:30:14 +03:00
__symbols.push((__start, __Symbol::Variant11(__nt), __end));
(1, 9)
2021-02-11 15:39:37 +03:00
}
2021-02-18 17:30:14 +03:00
pub(crate) fn __reduce20<
2021-02-11 15:39:37 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-02-11 15:39:37 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-02-11 15:39:37 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-02-11 15:39:37 +03:00
) -> (usize, usize)
{
2021-03-19 19:15:41 +03:00
// CallInstrValue = JsonPath => ActionFn(56);
2021-02-16 09:45:33 +03:00
let __sym0 = __pop_Variant3(__symbols);
2021-02-11 15:39:37 +03:00
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action56::<>(input, errors, validator, __sym0);
2021-02-18 17:30:14 +03:00
__symbols.push((__start, __Symbol::Variant11(__nt), __end));
(1, 9)
2021-02-11 15:39:37 +03:00
}
2021-02-18 17:30:14 +03:00
pub(crate) fn __reduce21<
2021-02-11 15:39:37 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-02-11 15:39:37 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-02-11 15:39:37 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-02-11 15:39:37 +03:00
) -> (usize, usize)
{
// CallInstrValue = InitPeerId => ActionFn(25);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action25::<>(input, errors, validator, __sym0);
2021-02-18 17:30:14 +03:00
__symbols.push((__start, __Symbol::Variant11(__nt), __end));
(1, 9)
2021-02-11 15:39:37 +03:00
}
2021-02-18 17:30:14 +03:00
pub(crate) fn __reduce22<
2021-02-11 15:39:37 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-02-11 15:39:37 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-02-11 15:39:37 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-02-11 15:39:37 +03:00
) -> (usize, usize)
{
// FPart = Function => ActionFn(13);
2021-02-18 17:30:14 +03:00
let __sym0 = __pop_Variant11(__symbols);
2021-02-11 15:39:37 +03:00
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action13::<>(input, errors, validator, __sym0);
2021-02-18 17:30:14 +03:00
__symbols.push((__start, __Symbol::Variant12(__nt), __end));
(1, 10)
2021-02-11 15:39:37 +03:00
}
2021-02-18 17:30:14 +03:00
pub(crate) fn __reduce23<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-01-22 18:54:05 +03:00
) -> (usize, usize)
{
2021-02-01 18:53:00 +03:00
// FPart = "(", ServiceId, Function, ")" => ActionFn(14);
2021-01-22 18:54:05 +03:00
assert!(__symbols.len() >= 4);
let __sym3 = __pop_Variant0(__symbols);
2021-02-18 17:30:14 +03:00
let __sym2 = __pop_Variant11(__symbols);
let __sym1 = __pop_Variant11(__symbols);
2021-01-22 18:54:05 +03:00
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym3.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action14::<>(input, errors, validator, __sym0, __sym1, __sym2, __sym3);
2021-02-18 17:30:14 +03:00
__symbols.push((__start, __Symbol::Variant12(__nt), __end));
(4, 10)
2021-01-22 18:54:05 +03:00
}
2021-02-18 17:30:14 +03:00
pub(crate) fn __reduce24<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-01-22 18:54:05 +03:00
) -> (usize, usize)
{
2021-02-11 15:39:37 +03:00
// Function = CallInstrValue => ActionFn(19);
2021-02-18 17:30:14 +03:00
let __sym0 = __pop_Variant11(__symbols);
2021-01-22 18:54:05 +03:00
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action19::<>(input, errors, validator, __sym0);
2021-02-18 17:30:14 +03:00
__symbols.push((__start, __Symbol::Variant11(__nt), __end));
(1, 11)
2021-01-22 18:54:05 +03:00
}
2021-02-18 17:30:14 +03:00
pub(crate) fn __reduce25<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-01-22 18:54:05 +03:00
) -> (usize, usize)
{
2021-03-19 19:15:41 +03:00
// Instr = "(", call, PeerPart, FPart, Args, Output, ")" => ActionFn(60);
2021-01-22 18:54:05 +03:00
assert!(__symbols.len() >= 7);
let __sym6 = __pop_Variant0(__symbols);
2021-02-18 17:30:14 +03:00
let __sym5 = __pop_Variant15(__symbols);
let __sym4 = __pop_Variant10(__symbols);
let __sym3 = __pop_Variant12(__symbols);
let __sym2 = __pop_Variant17(__symbols);
2021-01-22 18:54:05 +03:00
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym6.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action60::<>(input, errors, validator, __sym0, __sym1, __sym2, __sym3, __sym4, __sym5, __sym6);
2021-02-18 17:30:14 +03:00
__symbols.push((__start, __Symbol::Variant9(__nt), __end));
(7, 12)
2021-01-22 18:54:05 +03:00
}
2021-02-18 17:30:14 +03:00
pub(crate) fn __reduce26<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-01-22 18:54:05 +03:00
) -> (usize, usize)
{
2021-03-19 19:15:41 +03:00
// Instr = "(", call, PeerPart, FPart, Args, ")" => ActionFn(61);
2021-01-22 18:54:05 +03:00
assert!(__symbols.len() >= 6);
let __sym5 = __pop_Variant0(__symbols);
2021-02-18 17:30:14 +03:00
let __sym4 = __pop_Variant10(__symbols);
let __sym3 = __pop_Variant12(__symbols);
let __sym2 = __pop_Variant17(__symbols);
2021-01-22 18:54:05 +03:00
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym5.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action61::<>(input, errors, validator, __sym0, __sym1, __sym2, __sym3, __sym4, __sym5);
2021-02-18 17:30:14 +03:00
__symbols.push((__start, __Symbol::Variant9(__nt), __end));
(6, 12)
2021-01-22 18:54:05 +03:00
}
2021-02-18 17:30:14 +03:00
pub(crate) fn __reduce27<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-01-22 18:54:05 +03:00
) -> (usize, usize)
{
// Instr = "(", seq, Instr, Instr, ")" => ActionFn(3);
assert!(__symbols.len() >= 5);
let __sym4 = __pop_Variant0(__symbols);
2021-02-18 17:30:14 +03:00
let __sym3 = __pop_Variant9(__symbols);
let __sym2 = __pop_Variant9(__symbols);
2021-01-22 18:54:05 +03:00
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym4.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action3::<>(input, errors, validator, __sym0, __sym1, __sym2, __sym3, __sym4);
2021-02-18 17:30:14 +03:00
__symbols.push((__start, __Symbol::Variant9(__nt), __end));
(5, 12)
2021-01-22 18:54:05 +03:00
}
2021-02-18 17:30:14 +03:00
pub(crate) fn __reduce28<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-01-22 18:54:05 +03:00
) -> (usize, usize)
{
// Instr = "(", par, Instr, Instr, ")" => ActionFn(4);
assert!(__symbols.len() >= 5);
let __sym4 = __pop_Variant0(__symbols);
2021-02-18 17:30:14 +03:00
let __sym3 = __pop_Variant9(__symbols);
let __sym2 = __pop_Variant9(__symbols);
2021-01-22 18:54:05 +03:00
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym4.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action4::<>(input, errors, validator, __sym0, __sym1, __sym2, __sym3, __sym4);
2021-02-18 17:30:14 +03:00
__symbols.push((__start, __Symbol::Variant9(__nt), __end));
(5, 12)
2021-01-22 18:54:05 +03:00
}
2021-02-18 17:30:14 +03:00
pub(crate) fn __reduce29<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-01-22 18:54:05 +03:00
) -> (usize, usize)
{
// Instr = "(", null, ")" => ActionFn(5);
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant0(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym2.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action5::<>(input, errors, validator, __sym0, __sym1, __sym2);
2021-02-18 17:30:14 +03:00
__symbols.push((__start, __Symbol::Variant9(__nt), __end));
(3, 12)
2021-01-22 18:54:05 +03:00
}
2021-02-18 17:30:14 +03:00
pub(crate) fn __reduce30<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-01-22 18:54:05 +03:00
) -> (usize, usize)
{
2021-03-19 19:15:41 +03:00
// Instr = "(", fold, Iterable, Alphanumeric, Instr, ")" => ActionFn(58);
2021-01-22 18:54:05 +03:00
assert!(__symbols.len() >= 6);
let __sym5 = __pop_Variant0(__symbols);
2021-02-18 17:30:14 +03:00
let __sym4 = __pop_Variant9(__symbols);
2021-01-22 18:54:05 +03:00
let __sym3 = __pop_Variant1(__symbols);
2021-02-18 17:30:14 +03:00
let __sym2 = __pop_Variant13(__symbols);
2021-01-22 18:54:05 +03:00
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym5.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action58::<>(input, errors, validator, __sym0, __sym1, __sym2, __sym3, __sym4, __sym5);
2021-02-18 17:30:14 +03:00
__symbols.push((__start, __Symbol::Variant9(__nt), __end));
(6, 12)
2021-01-22 18:54:05 +03:00
}
2021-02-18 17:30:14 +03:00
pub(crate) fn __reduce31<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-01-22 18:54:05 +03:00
) -> (usize, usize)
{
2021-03-19 19:15:41 +03:00
// Instr = "(", next, Alphanumeric, ")" => ActionFn(59);
2021-01-22 18:54:05 +03:00
assert!(__symbols.len() >= 4);
let __sym3 = __pop_Variant0(__symbols);
let __sym2 = __pop_Variant1(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym3.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action59::<>(input, errors, validator, __sym0, __sym1, __sym2, __sym3);
2021-02-18 17:30:14 +03:00
__symbols.push((__start, __Symbol::Variant9(__nt), __end));
(4, 12)
2021-01-22 18:54:05 +03:00
}
2021-02-18 17:30:14 +03:00
pub(crate) fn __reduce32<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-01-22 18:54:05 +03:00
) -> (usize, usize)
{
// Instr = "(", xor, Instr, Instr, ")" => ActionFn(8);
assert!(__symbols.len() >= 5);
let __sym4 = __pop_Variant0(__symbols);
2021-02-18 17:30:14 +03:00
let __sym3 = __pop_Variant9(__symbols);
let __sym2 = __pop_Variant9(__symbols);
2021-01-22 18:54:05 +03:00
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym4.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action8::<>(input, errors, validator, __sym0, __sym1, __sym2, __sym3, __sym4);
2021-02-18 17:30:14 +03:00
__symbols.push((__start, __Symbol::Variant9(__nt), __end));
(5, 12)
2021-01-22 18:54:05 +03:00
}
2021-02-18 17:30:14 +03:00
pub(crate) fn __reduce33<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-01-22 18:54:05 +03:00
) -> (usize, usize)
{
2021-01-27 00:37:58 +03:00
// Instr = "(", match_, Matchable, Matchable, Instr, ")" => ActionFn(9);
assert!(__symbols.len() >= 6);
let __sym5 = __pop_Variant0(__symbols);
2021-02-18 17:30:14 +03:00
let __sym4 = __pop_Variant9(__symbols);
let __sym3 = __pop_Variant14(__symbols);
let __sym2 = __pop_Variant14(__symbols);
2021-01-27 00:37:58 +03:00
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym5.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action9::<>(input, errors, validator, __sym0, __sym1, __sym2, __sym3, __sym4, __sym5);
2021-02-18 17:30:14 +03:00
__symbols.push((__start, __Symbol::Variant9(__nt), __end));
(6, 12)
2021-01-27 00:37:58 +03:00
}
2021-02-18 17:30:14 +03:00
pub(crate) fn __reduce34<
2021-01-27 00:37:58 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-27 00:37:58 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-27 00:37:58 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-01-27 00:37:58 +03:00
) -> (usize, usize)
{
2021-02-01 18:53:00 +03:00
// Instr = "(", mismatch, Matchable, Matchable, Instr, ")" => ActionFn(10);
assert!(__symbols.len() >= 6);
let __sym5 = __pop_Variant0(__symbols);
2021-02-18 17:30:14 +03:00
let __sym4 = __pop_Variant9(__symbols);
let __sym3 = __pop_Variant14(__symbols);
let __sym2 = __pop_Variant14(__symbols);
2021-02-01 18:53:00 +03:00
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym5.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action10::<>(input, errors, validator, __sym0, __sym1, __sym2, __sym3, __sym4, __sym5);
2021-02-18 17:30:14 +03:00
__symbols.push((__start, __Symbol::Variant9(__nt), __end));
(6, 12)
2021-02-01 18:53:00 +03:00
}
2021-02-18 17:30:14 +03:00
pub(crate) fn __reduce35<
2021-02-01 18:53:00 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-02-01 18:53:00 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-02-01 18:53:00 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-02-01 18:53:00 +03:00
) -> (usize, usize)
{
// Instr = error => ActionFn(11);
2021-02-16 09:45:33 +03:00
let __sym0 = __pop_Variant5(__symbols);
2021-01-22 18:54:05 +03:00
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action11::<>(input, errors, validator, __sym0);
2021-02-18 17:30:14 +03:00
__symbols.push((__start, __Symbol::Variant9(__nt), __end));
(1, 12)
2021-01-22 18:54:05 +03:00
}
2021-02-18 17:30:14 +03:00
pub(crate) fn __reduce36<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-01-22 18:54:05 +03:00
) -> (usize, usize)
{
2021-02-16 09:45:33 +03:00
// Iterable = Alphanumeric => ActionFn(34);
2021-01-22 18:54:05 +03:00
let __sym0 = __pop_Variant1(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action34::<>(input, errors, validator, __sym0);
2021-02-18 17:30:14 +03:00
__symbols.push((__start, __Symbol::Variant13(__nt), __end));
(1, 13)
2021-01-22 18:54:05 +03:00
}
2021-02-18 17:30:14 +03:00
pub(crate) fn __reduce37<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-01-22 18:54:05 +03:00
) -> (usize, usize)
{
2021-02-16 09:45:33 +03:00
// Iterable = JsonPath => ActionFn(35);
let __sym0 = __pop_Variant3(__symbols);
2021-01-22 18:54:05 +03:00
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action35::<>(input, errors, validator, __sym0);
2021-02-18 17:30:14 +03:00
__symbols.push((__start, __Symbol::Variant13(__nt), __end));
(1, 13)
2021-01-22 18:54:05 +03:00
}
2021-02-18 17:30:14 +03:00
pub(crate) fn __reduce38<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-01-22 18:54:05 +03:00
) -> (usize, usize)
{
2021-02-16 09:45:33 +03:00
// Matchable = Alphanumeric => ActionFn(36);
2021-01-22 18:54:05 +03:00
let __sym0 = __pop_Variant1(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action36::<>(input, errors, validator, __sym0);
2021-02-18 17:30:14 +03:00
__symbols.push((__start, __Symbol::Variant14(__nt), __end));
(1, 14)
2021-01-22 18:54:05 +03:00
}
2021-02-18 17:30:14 +03:00
pub(crate) fn __reduce39<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-01-22 18:54:05 +03:00
) -> (usize, usize)
{
2021-02-16 09:45:33 +03:00
// Matchable = Literal => ActionFn(37);
2021-01-22 18:54:05 +03:00
let __sym0 = __pop_Variant1(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action37::<>(input, errors, validator, __sym0);
2021-02-18 17:30:14 +03:00
__symbols.push((__start, __Symbol::Variant14(__nt), __end));
(1, 14)
2021-01-22 18:54:05 +03:00
}
2021-02-18 17:30:14 +03:00
pub(crate) fn __reduce40<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-01-22 18:54:05 +03:00
) -> (usize, usize)
{
2021-02-16 09:45:33 +03:00
// Matchable = JsonPath => ActionFn(38);
let __sym0 = __pop_Variant3(__symbols);
2021-01-22 18:54:05 +03:00
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action38::<>(input, errors, validator, __sym0);
2021-02-18 17:30:14 +03:00
__symbols.push((__start, __Symbol::Variant14(__nt), __end));
(1, 14)
2021-01-27 00:37:58 +03:00
}
2021-02-18 17:30:14 +03:00
pub(crate) fn __reduce41<
2021-01-27 00:37:58 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-27 00:37:58 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-27 00:37:58 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-01-27 00:37:58 +03:00
) -> (usize, usize)
{
2021-02-01 18:53:00 +03:00
// Output = Alphanumeric => ActionFn(17);
2021-01-27 00:37:58 +03:00
let __sym0 = __pop_Variant1(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action17::<>(input, errors, validator, __sym0);
2021-02-18 17:30:14 +03:00
__symbols.push((__start, __Symbol::Variant15(__nt), __end));
(1, 15)
2021-01-22 18:54:05 +03:00
}
2021-02-18 17:30:14 +03:00
pub(crate) fn __reduce42<
2021-01-27 00:37:58 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-27 00:37:58 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-27 00:37:58 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-01-27 00:37:58 +03:00
) -> (usize, usize)
{
2021-02-01 18:53:00 +03:00
// Output = Accumulator => ActionFn(18);
2021-01-27 00:37:58 +03:00
let __sym0 = __pop_Variant1(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action18::<>(input, errors, validator, __sym0);
2021-02-18 17:30:14 +03:00
__symbols.push((__start, __Symbol::Variant15(__nt), __end));
(1, 15)
2021-01-27 00:37:58 +03:00
}
2021-02-18 17:30:14 +03:00
pub(crate) fn __reduce43<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-01-22 18:54:05 +03:00
) -> (usize, usize)
{
2021-03-19 19:15:41 +03:00
// Output? = Output => ActionFn(43);
2021-02-18 17:30:14 +03:00
let __sym0 = __pop_Variant15(__symbols);
2021-01-27 00:37:58 +03:00
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action43::<>(input, errors, validator, __sym0);
2021-02-18 17:30:14 +03:00
__symbols.push((__start, __Symbol::Variant16(__nt), __end));
(1, 16)
2021-01-27 00:37:58 +03:00
}
2021-02-18 17:30:14 +03:00
pub(crate) fn __reduce44<
2021-01-27 00:37:58 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-27 00:37:58 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-27 00:37:58 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-01-27 00:37:58 +03:00
) -> (usize, usize)
{
2021-03-19 19:15:41 +03:00
// Output? = => ActionFn(44);
2021-01-22 18:54:05 +03:00
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2.clone())).unwrap_or_default();
let __end = __start.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action44::<>(input, errors, validator, &__start, &__end);
2021-02-18 17:30:14 +03:00
__symbols.push((__start, __Symbol::Variant16(__nt), __end));
(0, 16)
2021-01-22 18:54:05 +03:00
}
2021-02-18 17:30:14 +03:00
pub(crate) fn __reduce45<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-01-22 18:54:05 +03:00
) -> (usize, usize)
{
2021-02-11 15:39:37 +03:00
// PeerId = CallInstrValue => ActionFn(20);
2021-02-18 17:30:14 +03:00
let __sym0 = __pop_Variant11(__symbols);
2021-01-22 18:54:05 +03:00
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action20::<>(input, errors, validator, __sym0);
2021-02-18 17:30:14 +03:00
__symbols.push((__start, __Symbol::Variant11(__nt), __end));
(1, 17)
2021-01-22 18:54:05 +03:00
}
2021-02-18 17:30:14 +03:00
pub(crate) fn __reduce46<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-01-22 18:54:05 +03:00
) -> (usize, usize)
{
2021-02-01 18:53:00 +03:00
// PeerPart = PeerId => ActionFn(15);
2021-02-18 17:30:14 +03:00
let __sym0 = __pop_Variant11(__symbols);
2021-01-22 18:54:05 +03:00
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action15::<>(input, errors, validator, __sym0);
2021-02-18 17:30:14 +03:00
__symbols.push((__start, __Symbol::Variant17(__nt), __end));
(1, 18)
2021-01-22 18:54:05 +03:00
}
2021-02-18 17:30:14 +03:00
pub(crate) fn __reduce47<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-01-22 18:54:05 +03:00
) -> (usize, usize)
{
2021-02-01 18:53:00 +03:00
// PeerPart = "(", PeerId, ServiceId, ")" => ActionFn(16);
2021-01-22 18:54:05 +03:00
assert!(__symbols.len() >= 4);
let __sym3 = __pop_Variant0(__symbols);
2021-02-18 17:30:14 +03:00
let __sym2 = __pop_Variant11(__symbols);
let __sym1 = __pop_Variant11(__symbols);
2021-01-22 18:54:05 +03:00
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym3.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action16::<>(input, errors, validator, __sym0, __sym1, __sym2, __sym3);
2021-02-18 17:30:14 +03:00
__symbols.push((__start, __Symbol::Variant17(__nt), __end));
(4, 18)
2021-01-22 18:54:05 +03:00
}
2021-02-18 17:30:14 +03:00
pub(crate) fn __reduce48<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
2021-03-19 19:15:41 +03:00
_: core::marker::PhantomData<(&'err (), &'input (), &'v ())>,
2021-01-22 18:54:05 +03:00
) -> (usize, usize)
{
2021-02-11 15:39:37 +03:00
// ServiceId = CallInstrValue => ActionFn(21);
2021-02-18 17:30:14 +03:00
let __sym0 = __pop_Variant11(__symbols);
2021-01-22 18:54:05 +03:00
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
2021-03-19 19:15:41 +03:00
let __nt = super::__action21::<>(input, errors, validator, __sym0);
2021-02-18 17:30:14 +03:00
__symbols.push((__start, __Symbol::Variant11(__nt), __end));
(1, 19)
2021-01-22 18:54:05 +03:00
}
}
pub use self::__parse__AIR::AIRParser;
#[allow(unused_variables)]
fn __action0<
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
(_, __0, _): (usize, Box<Instruction<'input>>, usize),
) -> Box<Instruction<'input>>
{
__0
}
#[allow(unused_variables)]
fn __action1<
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
(_, __0, _): (usize, Box<Instruction<'input>>, usize),
) -> Box<Instruction<'input>>
{
__0
}
#[allow(unused_variables)]
fn __action2<
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
(_, left, _): (usize, usize, usize),
2021-01-22 18:54:05 +03:00
(_, _, _): (usize, Token<'input>, usize),
(_, _, _): (usize, Token<'input>, usize),
(_, p, _): (usize, PeerPart<'input>, usize),
(_, f, _): (usize, FunctionPart<'input>, usize),
2021-02-11 15:39:37 +03:00
(_, args, _): (usize, Vec<CallInstrArgValue<'input>>, usize),
(_, output, _): (usize, core::option::Option<CallOutputValue<'input>>, usize),
2021-01-22 18:54:05 +03:00
(_, _, _): (usize, Token<'input>, usize),
2021-03-19 19:15:41 +03:00
(_, right, _): (usize, usize, usize),
2021-01-22 18:54:05 +03:00
) -> Box<Instruction<'input>>
{
{
2021-01-27 00:37:58 +03:00
let output = output.unwrap_or(CallOutputValue::None);
2021-01-22 18:54:05 +03:00
let args = Rc::new(args);
2021-03-19 19:15:41 +03:00
let call = Call { peer_part: p, function_part: f, args, output };
let span = Span { left, right };
validator.met_call(&call, span);
Box::new(Instruction::Call(call))
2021-01-22 18:54:05 +03:00
}
}
#[allow(unused_variables)]
fn __action3<
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
(_, _, _): (usize, Token<'input>, usize),
(_, _, _): (usize, Token<'input>, usize),
(_, l, _): (usize, Box<Instruction<'input>>, usize),
(_, r, _): (usize, Box<Instruction<'input>>, usize),
(_, _, _): (usize, Token<'input>, usize),
) -> Box<Instruction<'input>>
{
Box::new(Instruction::Seq(Seq(l, r)))
}
#[allow(unused_variables)]
fn __action4<
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
(_, _, _): (usize, Token<'input>, usize),
(_, _, _): (usize, Token<'input>, usize),
(_, l, _): (usize, Box<Instruction<'input>>, usize),
(_, r, _): (usize, Box<Instruction<'input>>, usize),
(_, _, _): (usize, Token<'input>, usize),
) -> Box<Instruction<'input>>
{
Box::new(Instruction::Par(Par(l, r)))
}
#[allow(unused_variables)]
fn __action5<
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
(_, __0, _): (usize, Token<'input>, usize),
(_, __1, _): (usize, Token<'input>, usize),
(_, __2, _): (usize, Token<'input>, usize),
) -> Box<Instruction<'input>>
{
Box::new(Instruction::Null(Null))
}
#[allow(unused_variables)]
fn __action6<
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
(_, left, _): (usize, usize, usize),
2021-01-22 18:54:05 +03:00
(_, _, _): (usize, Token<'input>, usize),
(_, _, _): (usize, Token<'input>, usize),
(_, iterable, _): (usize, IterableValue<'input>, usize),
(_, iterator, _): (usize, &'input str, usize),
(_, i, _): (usize, Box<Instruction<'input>>, usize),
(_, _, _): (usize, Token<'input>, usize),
2021-03-19 19:15:41 +03:00
(_, right, _): (usize, usize, usize),
2021-01-22 18:54:05 +03:00
) -> Box<Instruction<'input>>
{
{
let instruction = Rc::new(*i);
2021-03-19 19:15:41 +03:00
let fold = Fold { iterable, iterator, instruction };
let span = Span { left, right };
validator.met_fold(&fold, span);
Box::new(Instruction::Fold(fold))
2021-01-22 18:54:05 +03:00
}
}
#[allow(unused_variables)]
fn __action7<
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
(_, left, _): (usize, usize, usize),
2021-01-22 18:54:05 +03:00
(_, _, _): (usize, Token<'input>, usize),
(_, _, _): (usize, Token<'input>, usize),
(_, i, _): (usize, &'input str, usize),
(_, _, _): (usize, Token<'input>, usize),
2021-03-19 19:15:41 +03:00
(_, right, _): (usize, usize, usize),
2021-01-22 18:54:05 +03:00
) -> Box<Instruction<'input>>
{
2021-03-19 19:15:41 +03:00
{
let next = Next(i);
let span = Span { left, right };
validator.met_next(&next, span);
Box::new(Instruction::Next(next))
}
2021-01-22 18:54:05 +03:00
}
#[allow(unused_variables)]
fn __action8<
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
(_, _, _): (usize, Token<'input>, usize),
(_, _, _): (usize, Token<'input>, usize),
(_, l, _): (usize, Box<Instruction<'input>>, usize),
(_, r, _): (usize, Box<Instruction<'input>>, usize),
(_, _, _): (usize, Token<'input>, usize),
) -> Box<Instruction<'input>>
{
Box::new(Instruction::Xor(Xor(l, r)))
}
#[allow(unused_variables)]
fn __action9<
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-27 00:37:58 +03:00
(_, _, _): (usize, Token<'input>, usize),
(_, _, _): (usize, Token<'input>, usize),
(_, l, _): (usize, MatchableValue<'input>, usize),
(_, r, _): (usize, MatchableValue<'input>, usize),
(_, i, _): (usize, Box<Instruction<'input>>, usize),
(_, _, _): (usize, Token<'input>, usize),
2021-01-22 18:54:05 +03:00
) -> Box<Instruction<'input>>
{
2021-02-01 18:53:00 +03:00
{
let match_ = Match { left_value: l, right_value: r, instruction: i};
Box::new(Instruction::Match(match_))
}
2021-01-22 18:54:05 +03:00
}
#[allow(unused_variables)]
fn __action10<
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-02-01 18:53:00 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-02-01 18:53:00 +03:00
(_, _, _): (usize, Token<'input>, usize),
(_, _, _): (usize, Token<'input>, usize),
(_, l, _): (usize, MatchableValue<'input>, usize),
(_, r, _): (usize, MatchableValue<'input>, usize),
(_, i, _): (usize, Box<Instruction<'input>>, usize),
(_, _, _): (usize, Token<'input>, usize),
) -> Box<Instruction<'input>>
{
{
let mismatch = MisMatch { left_value: l, right_value: r, instruction: i};
Box::new(Instruction::MisMatch(mismatch))
}
}
#[allow(unused_variables)]
fn __action11<
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
(_, __0, _): (usize, __lalrpop_util::ErrorRecovery<usize, Token<'input>, ParserError>, usize),
2021-01-27 00:37:58 +03:00
) -> Box<Instruction<'input>>
2021-01-22 18:54:05 +03:00
{
2021-01-27 00:37:58 +03:00
{ errors.push(__0); Box::new(Instruction::Error) }
2021-01-22 18:54:05 +03:00
}
#[allow(unused_variables)]
2021-02-01 18:53:00 +03:00
fn __action12<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-27 00:37:58 +03:00
(_, _, _): (usize, Token<'input>, usize),
(_, args, _): (usize, alloc::vec::Vec<CallInstrArgValue<'input>>, usize),
2021-01-27 00:37:58 +03:00
(_, _, _): (usize, Token<'input>, usize),
2021-02-11 15:39:37 +03:00
) -> Vec<CallInstrArgValue<'input>>
2021-01-22 18:54:05 +03:00
{
2021-01-27 00:37:58 +03:00
args
2021-01-22 18:54:05 +03:00
}
#[allow(unused_variables)]
2021-02-01 18:53:00 +03:00
fn __action13<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-02-11 15:39:37 +03:00
(_, f, _): (usize, CallInstrValue<'input>, usize),
2021-01-22 18:54:05 +03:00
) -> FunctionPart<'input>
{
2021-01-27 00:37:58 +03:00
FunctionPart::FuncName(f)
2021-01-22 18:54:05 +03:00
}
#[allow(unused_variables)]
2021-02-01 18:53:00 +03:00
fn __action14<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-27 00:37:58 +03:00
(_, _, _): (usize, Token<'input>, usize),
2021-02-11 15:39:37 +03:00
(_, sid, _): (usize, CallInstrValue<'input>, usize),
(_, f, _): (usize, CallInstrValue<'input>, usize),
2021-01-27 00:37:58 +03:00
(_, _, _): (usize, Token<'input>, usize),
) -> FunctionPart<'input>
2021-01-22 18:54:05 +03:00
{
2021-01-27 00:37:58 +03:00
FunctionPart::ServiceIdWithFuncName(sid, f)
2021-01-22 18:54:05 +03:00
}
#[allow(unused_variables)]
2021-02-01 18:53:00 +03:00
fn __action15<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-02-11 15:39:37 +03:00
(_, pid, _): (usize, CallInstrValue<'input>, usize),
2021-01-22 18:54:05 +03:00
) -> PeerPart<'input>
{
2021-01-27 00:37:58 +03:00
PeerPart::PeerPk(pid)
2021-01-22 18:54:05 +03:00
}
#[allow(unused_variables)]
2021-02-01 18:53:00 +03:00
fn __action16<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-27 00:37:58 +03:00
(_, _, _): (usize, Token<'input>, usize),
2021-02-11 15:39:37 +03:00
(_, pid, _): (usize, CallInstrValue<'input>, usize),
(_, sid, _): (usize, CallInstrValue<'input>, usize),
2021-01-27 00:37:58 +03:00
(_, _, _): (usize, Token<'input>, usize),
) -> PeerPart<'input>
2021-01-22 18:54:05 +03:00
{
2021-01-27 00:37:58 +03:00
PeerPart::PeerPkWithServiceId(pid, sid)
2021-01-22 18:54:05 +03:00
}
#[allow(unused_variables)]
2021-02-01 18:53:00 +03:00
fn __action17<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-27 00:37:58 +03:00
(_, s, _): (usize, &'input str, usize),
) -> CallOutputValue<'input>
2021-01-22 18:54:05 +03:00
{
2021-01-27 00:37:58 +03:00
CallOutputValue::Scalar(s)
2021-01-22 18:54:05 +03:00
}
#[allow(unused_variables)]
2021-02-01 18:53:00 +03:00
fn __action18<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-27 00:37:58 +03:00
(_, a, _): (usize, &'input str, usize),
) -> CallOutputValue<'input>
2021-01-22 18:54:05 +03:00
{
2021-01-27 00:37:58 +03:00
CallOutputValue::Accumulator(a)
2021-01-22 18:54:05 +03:00
}
#[allow(unused_variables)]
2021-02-01 18:53:00 +03:00
fn __action19<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-02-11 15:39:37 +03:00
(_, __0, _): (usize, CallInstrValue<'input>, usize),
) -> CallInstrValue<'input>
2021-01-22 18:54:05 +03:00
{
2021-01-27 00:37:58 +03:00
__0
2021-01-22 18:54:05 +03:00
}
#[allow(unused_variables)]
2021-02-01 18:53:00 +03:00
fn __action20<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-02-11 15:39:37 +03:00
(_, __0, _): (usize, CallInstrValue<'input>, usize),
) -> CallInstrValue<'input>
2021-01-22 18:54:05 +03:00
{
__0
}
#[allow(unused_variables)]
2021-02-01 18:53:00 +03:00
fn __action21<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-02-11 15:39:37 +03:00
(_, __0, _): (usize, CallInstrValue<'input>, usize),
) -> CallInstrValue<'input>
2021-01-22 18:54:05 +03:00
{
__0
}
#[allow(unused_variables)]
2021-02-01 18:53:00 +03:00
fn __action22<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-02-11 15:39:37 +03:00
(_, s, _): (usize, &'input str, usize),
) -> CallInstrValue<'input>
2021-01-22 18:54:05 +03:00
{
2021-02-11 15:39:37 +03:00
CallInstrValue::Literal(s)
2021-01-22 18:54:05 +03:00
}
#[allow(unused_variables)]
2021-02-01 18:53:00 +03:00
fn __action23<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-27 00:37:58 +03:00
(_, s, _): (usize, &'input str, usize),
2021-02-11 15:39:37 +03:00
) -> CallInstrValue<'input>
2021-01-22 18:54:05 +03:00
{
2021-02-11 15:39:37 +03:00
CallInstrValue::Variable(s)
2021-01-22 18:54:05 +03:00
}
#[allow(unused_variables)]
2021-02-01 18:53:00 +03:00
fn __action24<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-02-18 17:30:14 +03:00
(_, l, _): (usize, usize, usize),
(_, v, _): (usize, (&'input str, usize, bool), usize),
(_, r, _): (usize, usize, usize),
2021-02-11 15:39:37 +03:00
) -> CallInstrValue<'input>
2021-01-22 18:54:05 +03:00
{
2021-02-11 15:39:37 +03:00
{
2021-02-18 17:30:14 +03:00
let (variable, path) = into_variable_and_path(v.0, v.1, v.2);
let should_flatten = v.2;
if !should_flatten {
let token = Token::JsonPath(v.0, v.1, v.2);
errors.push(make_flattened_error(l, token, r));
}
CallInstrValue::JsonPath { variable, path, should_flatten }
2021-02-11 15:39:37 +03:00
}
2021-01-22 18:54:05 +03:00
}
#[allow(unused_variables)]
2021-02-01 18:53:00 +03:00
fn __action25<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-02-11 15:39:37 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-02-11 15:39:37 +03:00
(_, __0, _): (usize, Token<'input>, usize),
) -> CallInstrValue<'input>
{
CallInstrValue::InitPeerId
}
#[allow(unused_variables)]
fn __action26<
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-02-11 15:39:37 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-02-11 15:39:37 +03:00
(_, __0, _): (usize, CallInstrArgValue<'input>, usize),
) -> CallInstrArgValue<'input>
{
__0
}
#[allow(unused_variables)]
fn __action27<
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-02-11 15:39:37 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-02-11 15:39:37 +03:00
(_, s, _): (usize, &'input str, usize),
) -> CallInstrArgValue<'input>
{
CallInstrArgValue::Literal(s)
}
#[allow(unused_variables)]
fn __action28<
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-02-11 15:39:37 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-02-11 15:39:37 +03:00
(_, s, _): (usize, &'input str, usize),
) -> CallInstrArgValue<'input>
{
CallInstrArgValue::Variable(s)
}
#[allow(unused_variables)]
fn __action29<
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-02-18 17:30:14 +03:00
(_, v, _): (usize, (&'input str, usize, bool), usize),
2021-02-11 15:39:37 +03:00
) -> CallInstrArgValue<'input>
2021-01-22 18:54:05 +03:00
{
2021-01-27 00:37:58 +03:00
{
2021-02-18 17:30:14 +03:00
let (variable, path) = into_variable_and_path(v.0, v.1, v.2);
let should_flatten = v.2;
CallInstrArgValue::JsonPath { variable, path, should_flatten }
2021-01-27 00:37:58 +03:00
}
2021-01-22 18:54:05 +03:00
}
#[allow(unused_variables)]
2021-02-11 15:39:37 +03:00
fn __action30<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-02-16 09:45:33 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-02-16 09:45:33 +03:00
(_, n, _): (usize, Number, usize),
) -> CallInstrArgValue<'input>
{
CallInstrArgValue::Number(n)
}
#[allow(unused_variables)]
fn __action31<
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-02-16 09:45:33 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-02-16 09:45:33 +03:00
(_, b, _): (usize, bool, usize),
) -> CallInstrArgValue<'input>
{
CallInstrArgValue::Boolean(b)
}
#[allow(unused_variables)]
fn __action32<
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-27 00:37:58 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-27 00:37:58 +03:00
(_, __0, _): (usize, Token<'input>, usize),
2021-02-11 15:39:37 +03:00
) -> CallInstrArgValue<'input>
2021-01-27 00:37:58 +03:00
{
2021-02-11 15:39:37 +03:00
CallInstrArgValue::InitPeerId
2021-01-27 00:37:58 +03:00
}
#[allow(unused_variables)]
2021-02-16 09:45:33 +03:00
fn __action33<
2021-02-11 15:39:37 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-02-11 15:39:37 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-02-11 15:39:37 +03:00
(_, __0, _): (usize, Token<'input>, usize),
) -> CallInstrArgValue<'input>
{
CallInstrArgValue::LastError
}
#[allow(unused_variables)]
2021-02-16 09:45:33 +03:00
fn __action34<
2021-01-27 00:37:58 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-27 00:37:58 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-27 00:37:58 +03:00
(_, s, _): (usize, &'input str, usize),
) -> IterableValue<'input>
{
IterableValue::Variable(s)
}
#[allow(unused_variables)]
2021-02-16 09:45:33 +03:00
fn __action35<
2021-01-27 00:37:58 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-02-18 17:30:14 +03:00
(_, v, _): (usize, (&'input str, usize, bool), usize),
2021-01-27 00:37:58 +03:00
) -> IterableValue<'input>
2021-01-22 18:54:05 +03:00
{
{
2021-02-18 17:30:14 +03:00
let (variable, path) = into_variable_and_path(v.0, v.1, v.2);
2021-03-19 19:15:41 +03:00
2021-02-18 17:30:14 +03:00
let should_flatten = v.2;
IterableValue::JsonPath { variable, path, should_flatten }
2021-01-22 18:54:05 +03:00
}
}
#[allow(unused_variables)]
2021-02-16 09:45:33 +03:00
fn __action36<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-27 00:37:58 +03:00
(_, s, _): (usize, &'input str, usize),
) -> MatchableValue<'input>
2021-01-22 18:54:05 +03:00
{
2021-01-27 00:37:58 +03:00
MatchableValue::Variable(s)
2021-01-22 18:54:05 +03:00
}
#[allow(unused_variables)]
2021-02-16 09:45:33 +03:00
fn __action37<
2021-01-27 00:37:58 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-27 00:37:58 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-27 00:37:58 +03:00
(_, s, _): (usize, &'input str, usize),
) -> MatchableValue<'input>
{
MatchableValue::Literal(s)
}
#[allow(unused_variables)]
2021-02-16 09:45:33 +03:00
fn __action38<
2021-01-27 00:37:58 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-27 00:37:58 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-02-18 17:30:14 +03:00
(_, v, _): (usize, (&'input str, usize, bool), usize),
2021-01-27 00:37:58 +03:00
) -> MatchableValue<'input>
{
{
2021-02-18 17:30:14 +03:00
let (variable, path) = into_variable_and_path(v.0, v.1, v.2);
let should_flatten = v.2;
MatchableValue::JsonPath { variable, path, should_flatten }
2021-01-27 00:37:58 +03:00
}
}
#[allow(unused_variables)]
2021-02-16 09:45:33 +03:00
fn __action39<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
__lookbehind: &usize,
__lookahead: &usize,
2021-03-19 19:15:41 +03:00
) -> alloc::vec::Vec<CallInstrArgValue<'input>>
2021-02-18 17:30:14 +03:00
{
2021-03-19 19:15:41 +03:00
alloc::vec![]
2021-02-18 17:30:14 +03:00
}
#[allow(unused_variables)]
fn __action40<
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-02-18 17:30:14 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
(_, v, _): (usize, alloc::vec::Vec<CallInstrArgValue<'input>>, usize),
) -> alloc::vec::Vec<CallInstrArgValue<'input>>
2021-02-18 17:30:14 +03:00
{
2021-03-19 19:15:41 +03:00
v
2021-02-18 17:30:14 +03:00
}
#[allow(unused_variables)]
fn __action41<
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-02-18 17:30:14 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
(_, __0, _): (usize, CallInstrArgValue<'input>, usize),
) -> CallInstrArgValue<'input>
2021-01-22 18:54:05 +03:00
{
2021-03-19 19:15:41 +03:00
__0
2021-01-22 18:54:05 +03:00
}
#[allow(unused_variables)]
2021-02-18 17:30:14 +03:00
fn __action42<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
__lookbehind: &usize,
__lookahead: &usize,
) -> usize
2021-01-22 18:54:05 +03:00
{
2021-03-19 19:15:41 +03:00
__lookbehind.clone()
2021-01-22 18:54:05 +03:00
}
#[allow(unused_variables)]
2021-02-18 17:30:14 +03:00
fn __action43<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
(_, __0, _): (usize, CallOutputValue<'input>, usize),
) -> core::option::Option<CallOutputValue<'input>>
2021-01-22 18:54:05 +03:00
{
2021-03-19 19:15:41 +03:00
Some(__0)
2021-01-22 18:54:05 +03:00
}
#[allow(unused_variables)]
2021-02-18 17:30:14 +03:00
fn __action44<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
__lookbehind: &usize,
__lookahead: &usize,
) -> core::option::Option<CallOutputValue<'input>>
2021-01-22 18:54:05 +03:00
{
2021-03-19 19:15:41 +03:00
None
2021-01-22 18:54:05 +03:00
}
#[allow(unused_variables)]
2021-02-18 17:30:14 +03:00
fn __action45<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
__lookbehind: &usize,
__lookahead: &usize,
2021-03-19 19:15:41 +03:00
) -> usize
2021-01-22 18:54:05 +03:00
{
2021-03-19 19:15:41 +03:00
__lookahead.clone()
2021-01-22 18:54:05 +03:00
}
#[allow(unused_variables)]
2021-02-18 17:30:14 +03:00
fn __action46<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-02-11 15:39:37 +03:00
(_, __0, _): (usize, CallInstrArgValue<'input>, usize),
) -> alloc::vec::Vec<CallInstrArgValue<'input>>
2021-01-22 18:54:05 +03:00
{
alloc::vec![__0]
2021-01-22 18:54:05 +03:00
}
#[allow(unused_variables)]
2021-02-18 17:30:14 +03:00
fn __action47<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
(_, v, _): (usize, alloc::vec::Vec<CallInstrArgValue<'input>>, usize),
2021-02-11 15:39:37 +03:00
(_, e, _): (usize, CallInstrArgValue<'input>, usize),
) -> alloc::vec::Vec<CallInstrArgValue<'input>>
2021-01-22 18:54:05 +03:00
{
{ let mut v = v; v.push(e); v }
}
#[allow(unused_variables)]
2021-02-18 17:30:14 +03:00
fn __action48<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-02-11 15:39:37 +03:00
__0: (usize, CallInstrArgValue<'input>, usize),
) -> alloc::vec::Vec<CallInstrArgValue<'input>>
2021-01-22 18:54:05 +03:00
{
let __start0 = __0.0.clone();
let __end0 = __0.2.clone();
2021-03-19 19:15:41 +03:00
let __temp0 = __action41(
2021-01-22 18:54:05 +03:00
input,
errors,
2021-03-19 19:15:41 +03:00
validator,
2021-01-22 18:54:05 +03:00
__0,
);
let __temp0 = (__start0, __temp0, __end0);
2021-02-18 17:30:14 +03:00
__action46(
2021-01-22 18:54:05 +03:00
input,
errors,
2021-03-19 19:15:41 +03:00
validator,
2021-01-22 18:54:05 +03:00
__temp0,
)
}
#[allow(unused_variables)]
2021-02-18 17:30:14 +03:00
fn __action49<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
__0: (usize, alloc::vec::Vec<CallInstrArgValue<'input>>, usize),
2021-02-11 15:39:37 +03:00
__1: (usize, CallInstrArgValue<'input>, usize),
) -> alloc::vec::Vec<CallInstrArgValue<'input>>
2021-01-22 18:54:05 +03:00
{
let __start0 = __1.0.clone();
let __end0 = __1.2.clone();
2021-03-19 19:15:41 +03:00
let __temp0 = __action41(
2021-01-22 18:54:05 +03:00
input,
errors,
2021-03-19 19:15:41 +03:00
validator,
2021-01-22 18:54:05 +03:00
__1,
);
let __temp0 = (__start0, __temp0, __end0);
2021-02-18 17:30:14 +03:00
__action47(
2021-01-22 18:54:05 +03:00
input,
errors,
2021-03-19 19:15:41 +03:00
validator,
2021-01-22 18:54:05 +03:00
__0,
__temp0,
)
}
#[allow(unused_variables)]
2021-02-18 17:30:14 +03:00
fn __action50<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
__0: (usize, Token<'input>, usize),
__1: (usize, Token<'input>, usize),
2021-02-11 15:39:37 +03:00
) -> Vec<CallInstrArgValue<'input>>
2021-01-22 18:54:05 +03:00
{
let __start0 = __0.2.clone();
let __end0 = __1.0.clone();
2021-03-19 19:15:41 +03:00
let __temp0 = __action39(
2021-01-22 18:54:05 +03:00
input,
errors,
2021-03-19 19:15:41 +03:00
validator,
2021-01-22 18:54:05 +03:00
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
2021-02-01 18:53:00 +03:00
__action12(
2021-01-22 18:54:05 +03:00
input,
errors,
2021-03-19 19:15:41 +03:00
validator,
2021-01-22 18:54:05 +03:00
__0,
__temp0,
__1,
)
}
#[allow(unused_variables)]
2021-02-18 17:30:14 +03:00
fn __action51<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
__0: (usize, Token<'input>, usize),
__1: (usize, alloc::vec::Vec<CallInstrArgValue<'input>>, usize),
2021-01-22 18:54:05 +03:00
__2: (usize, Token<'input>, usize),
2021-02-11 15:39:37 +03:00
) -> Vec<CallInstrArgValue<'input>>
2021-01-22 18:54:05 +03:00
{
let __start0 = __1.0.clone();
let __end0 = __1.2.clone();
2021-03-19 19:15:41 +03:00
let __temp0 = __action40(
2021-01-22 18:54:05 +03:00
input,
errors,
2021-03-19 19:15:41 +03:00
validator,
2021-01-22 18:54:05 +03:00
__1,
);
let __temp0 = (__start0, __temp0, __end0);
2021-02-01 18:53:00 +03:00
__action12(
2021-01-22 18:54:05 +03:00
input,
errors,
2021-03-19 19:15:41 +03:00
validator,
2021-01-22 18:54:05 +03:00
__0,
__temp0,
__2,
)
}
#[allow(unused_variables)]
2021-02-18 17:30:14 +03:00
fn __action52<
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-02-18 17:30:14 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-02-18 17:30:14 +03:00
__0: (usize, (&'input str, usize, bool), usize),
__1: (usize, usize, usize),
) -> CallInstrValue<'input>
{
let __start0 = __0.0.clone();
let __end0 = __0.0.clone();
2021-03-19 19:15:41 +03:00
let __temp0 = __action45(
2021-02-18 17:30:14 +03:00
input,
errors,
2021-03-19 19:15:41 +03:00
validator,
2021-02-18 17:30:14 +03:00
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action24(
input,
errors,
2021-03-19 19:15:41 +03:00
validator,
2021-02-18 17:30:14 +03:00
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
fn __action53<
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
>(
input: &'input str,
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
__0: (usize, Token<'input>, usize),
__1: (usize, Token<'input>, usize),
__2: (usize, PeerPart<'input>, usize),
__3: (usize, FunctionPart<'input>, usize),
__4: (usize, Vec<CallInstrArgValue<'input>>, usize),
__5: (usize, core::option::Option<CallOutputValue<'input>>, usize),
__6: (usize, Token<'input>, usize),
__7: (usize, usize, usize),
) -> Box<Instruction<'input>>
{
let __start0 = __0.0.clone();
let __end0 = __0.0.clone();
let __temp0 = __action45(
input,
errors,
validator,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action2(
input,
errors,
validator,
__temp0,
__0,
__1,
__2,
__3,
__4,
__5,
__6,
__7,
)
}
#[allow(unused_variables)]
fn __action54<
'err,
'input,
'v,
>(
input: &'input str,
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
__0: (usize, Token<'input>, usize),
__1: (usize, Token<'input>, usize),
__2: (usize, IterableValue<'input>, usize),
__3: (usize, &'input str, usize),
__4: (usize, Box<Instruction<'input>>, usize),
__5: (usize, Token<'input>, usize),
__6: (usize, usize, usize),
) -> Box<Instruction<'input>>
{
let __start0 = __0.0.clone();
let __end0 = __0.0.clone();
let __temp0 = __action45(
input,
errors,
validator,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action6(
input,
errors,
validator,
__temp0,
__0,
__1,
__2,
__3,
__4,
__5,
__6,
)
}
#[allow(unused_variables)]
fn __action55<
'err,
'input,
'v,
>(
input: &'input str,
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
__0: (usize, Token<'input>, usize),
__1: (usize, Token<'input>, usize),
__2: (usize, &'input str, usize),
__3: (usize, Token<'input>, usize),
__4: (usize, usize, usize),
) -> Box<Instruction<'input>>
{
let __start0 = __0.0.clone();
let __end0 = __0.0.clone();
let __temp0 = __action45(
input,
errors,
validator,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action7(
input,
errors,
validator,
__temp0,
__0,
__1,
__2,
__3,
__4,
)
}
#[allow(unused_variables)]
fn __action56<
'err,
'input,
'v,
2021-02-18 17:30:14 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-02-18 17:30:14 +03:00
__0: (usize, (&'input str, usize, bool), usize),
) -> CallInstrValue<'input>
{
let __start0 = __0.2.clone();
let __end0 = __0.2.clone();
2021-03-19 19:15:41 +03:00
let __temp0 = __action42(
2021-02-18 17:30:14 +03:00
input,
errors,
2021-03-19 19:15:41 +03:00
validator,
2021-02-18 17:30:14 +03:00
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action52(
input,
errors,
2021-03-19 19:15:41 +03:00
validator,
2021-02-18 17:30:14 +03:00
__0,
__temp0,
)
}
#[allow(unused_variables)]
2021-03-19 19:15:41 +03:00
fn __action57<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
__0: (usize, Token<'input>, usize),
__1: (usize, Token<'input>, usize),
__2: (usize, PeerPart<'input>, usize),
__3: (usize, FunctionPart<'input>, usize),
__4: (usize, Vec<CallInstrArgValue<'input>>, usize),
__5: (usize, core::option::Option<CallOutputValue<'input>>, usize),
__6: (usize, Token<'input>, usize),
) -> Box<Instruction<'input>>
{
let __start0 = __6.2.clone();
let __end0 = __6.2.clone();
let __temp0 = __action42(
input,
errors,
validator,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action53(
input,
errors,
validator,
__0,
__1,
__2,
__3,
__4,
__5,
__6,
__temp0,
)
}
#[allow(unused_variables)]
fn __action58<
'err,
'input,
'v,
>(
input: &'input str,
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
__0: (usize, Token<'input>, usize),
__1: (usize, Token<'input>, usize),
__2: (usize, IterableValue<'input>, usize),
__3: (usize, &'input str, usize),
__4: (usize, Box<Instruction<'input>>, usize),
__5: (usize, Token<'input>, usize),
) -> Box<Instruction<'input>>
{
let __start0 = __5.2.clone();
let __end0 = __5.2.clone();
let __temp0 = __action42(
input,
errors,
validator,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action54(
input,
errors,
validator,
__0,
__1,
__2,
__3,
__4,
__5,
__temp0,
)
}
#[allow(unused_variables)]
fn __action59<
'err,
'input,
'v,
>(
input: &'input str,
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
__0: (usize, Token<'input>, usize),
__1: (usize, Token<'input>, usize),
__2: (usize, &'input str, usize),
__3: (usize, Token<'input>, usize),
) -> Box<Instruction<'input>>
{
let __start0 = __3.2.clone();
let __end0 = __3.2.clone();
let __temp0 = __action42(
input,
errors,
validator,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action55(
input,
errors,
validator,
__0,
__1,
__2,
__3,
__temp0,
)
}
#[allow(unused_variables)]
fn __action60<
'err,
'input,
'v,
>(
input: &'input str,
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
__0: (usize, Token<'input>, usize),
__1: (usize, Token<'input>, usize),
__2: (usize, PeerPart<'input>, usize),
__3: (usize, FunctionPart<'input>, usize),
2021-02-11 15:39:37 +03:00
__4: (usize, Vec<CallInstrArgValue<'input>>, usize),
2021-01-27 00:37:58 +03:00
__5: (usize, CallOutputValue<'input>, usize),
2021-01-22 18:54:05 +03:00
__6: (usize, Token<'input>, usize),
) -> Box<Instruction<'input>>
{
let __start0 = __5.0.clone();
let __end0 = __5.2.clone();
2021-03-19 19:15:41 +03:00
let __temp0 = __action43(
2021-01-22 18:54:05 +03:00
input,
errors,
2021-03-19 19:15:41 +03:00
validator,
2021-01-22 18:54:05 +03:00
__5,
);
let __temp0 = (__start0, __temp0, __end0);
2021-03-19 19:15:41 +03:00
__action57(
2021-01-22 18:54:05 +03:00
input,
errors,
2021-03-19 19:15:41 +03:00
validator,
2021-01-22 18:54:05 +03:00
__0,
__1,
__2,
__3,
__4,
__temp0,
__6,
)
}
#[allow(unused_variables)]
2021-03-19 19:15:41 +03:00
fn __action61<
2021-01-22 18:54:05 +03:00
'err,
'input,
2021-03-19 19:15:41 +03:00
'v,
2021-01-22 18:54:05 +03:00
>(
input: &'input str,
2021-03-19 19:15:41 +03:00
errors: &'err mut Vec<ErrorRecovery<usize, Token<'input>, ParserError>>,
validator: &'v mut VariableValidator<'input>,
2021-01-22 18:54:05 +03:00
__0: (usize, Token<'input>, usize),
__1: (usize, Token<'input>, usize),
__2: (usize, PeerPart<'input>, usize),
__3: (usize, FunctionPart<'input>, usize),
2021-02-11 15:39:37 +03:00
__4: (usize, Vec<CallInstrArgValue<'input>>, usize),
2021-01-22 18:54:05 +03:00
__5: (usize, Token<'input>, usize),
) -> Box<Instruction<'input>>
{
let __start0 = __4.2.clone();
let __end0 = __5.0.clone();
2021-03-19 19:15:41 +03:00
let __temp0 = __action44(
2021-01-22 18:54:05 +03:00
input,
errors,
2021-03-19 19:15:41 +03:00
validator,
2021-01-22 18:54:05 +03:00
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
2021-03-19 19:15:41 +03:00
__action57(
2021-01-22 18:54:05 +03:00
input,
errors,
2021-03-19 19:15:41 +03:00
validator,
2021-01-22 18:54:05 +03:00
__0,
__1,
__2,
__3,
__4,
__temp0,
__5,
)
}
2021-03-19 19:15:41 +03:00
pub trait __ToTriple<'err, 'input, 'v, > {
fn to_triple(value: Self) -> Result<(usize,Token<'input>,usize), __lalrpop_util::ParseError<usize, Token<'input>, ParserError>>;
2021-01-22 18:54:05 +03:00
}
2021-03-19 19:15:41 +03:00
impl<'err, 'input, 'v, > __ToTriple<'err, 'input, 'v, > for (usize, Token<'input>, usize) {
fn to_triple(value: Self) -> Result<(usize,Token<'input>,usize), __lalrpop_util::ParseError<usize, Token<'input>, ParserError>> {
2021-01-22 18:54:05 +03:00
Ok(value)
}
}
2021-03-19 19:15:41 +03:00
impl<'err, 'input, 'v, > __ToTriple<'err, 'input, 'v, > for Result<(usize, Token<'input>, usize), ParserError> {
fn to_triple(value: Self) -> Result<(usize,Token<'input>,usize), __lalrpop_util::ParseError<usize, Token<'input>, ParserError>> {
2021-01-22 18:54:05 +03:00
match value {
Ok(v) => Ok(v),
Err(error) => Err(__lalrpop_util::ParseError::User { error }),
}
}
}