use crate::diagrams::er::{Action, Attribute, RelSpec, SpannedIdList, Tok};
#[allow(unused_extern_crates)]
extern crate lalrpop_util as __lalrpop_util;
#[allow(unused_imports)]
use self::__lalrpop_util::state_machine as __state_machine;
#[allow(unused_extern_crates)]
extern crate alloc;
#[rustfmt::skip]
#[allow(explicit_outlives_requirements, non_snake_case, non_camel_case_types, unused_mut, unused_variables, unused_imports, unused_parens, clippy::needless_lifetimes, clippy::type_complexity, clippy::needless_return, clippy::too_many_arguments, clippy::match_single_binding, clippy::clone_on_copy, clippy::unit_arg)]
mod __parse__Actions {
use crate::diagrams::er::{Action, Attribute, RelSpec, SpannedIdList, Tok};
#[allow(unused_extern_crates)]
extern crate lalrpop_util as __lalrpop_util;
#[allow(unused_imports)]
use self::__lalrpop_util::state_machine as __state_machine;
#[allow(unused_extern_crates)]
extern crate alloc;
use super::__ToTriple;
#[allow(dead_code)]
pub(crate) enum __Symbol<>
{
Variant0(Tok),
Variant1(String),
Variant2(SpannedIdList),
Variant3(Action),
Variant4(Vec<Action>),
Variant5(Attribute),
Variant6(Vec<String>),
Variant7(Vec<Attribute>),
Variant8(()),
Variant9(RelSpec),
}
const __ACTION: &[i8] = &[
2, -32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2, -32, -32, 0, 0, 0, -32, -32, -32, -32, 0, 0, 0, 0, 0, 0, 0, 0, -32, -32, -32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 10, 0, 0, 0, 43, 41, 42, 44, 0, 0, 0, 0, 0, 0, 0, 0, 9, 8, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2, 0, -32, 0, 0, 0, -32, -32, -32, -32, 0, 0, 0, 0, 0, 0, 0, 0, -32, -32, -32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2, 0, -32, 0, 0, 0, -32, -32, -32, -32, 0, 0, 0, 0, 0, 0, 0, 0, -32, -32, -32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 46, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 46, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 46, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-26, 0, -26, 0, 0, 0, -26, -26, -26, -26, 14, 0, 53, 0, 15, 0, 0, 0, -26, -26, -26, 55, 54, 51, 52, 50, 0, 0, 0, 0, 0,
0, 0, 10, 0, 0, 0, 43, 41, 42, 44, 0, 0, 0, 0, 0, 0, 0, 0, 9, 8, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 46, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 60, 61, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 65, 0, 0,
0, 0, 0, 0, 46, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 55, 54, 51, 52, 50, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 65, 0, 0,
-25, 0, -25, 0, 0, 0, -25, -25, -25, -25, 22, 0, 0, 0, 0, 0, 0, 0, -25, -25, -25, 55, 54, 51, 52, 50, 0, 0, 0, 0, 0,
0, 0, 74, 75, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 46, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -5, 78, 79,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 65, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 65, 0, 0,
0, 0, 0, 0, 46, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 74, 75, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 74, 75, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 46, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 65, 0, 0,
0, 0, 74, 75, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, -33, -33, 0, 0, 0, -33, -33, -33, -33, 0, 0, 0, 0, 0, 0, 0, 0, -33, -33, -33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-46, 0, -46, 0, 0, 0, -46, -46, -46, -46, 0, 0, 0, 0, 0, 0, 0, 0, -46, -46, -46, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-48, 0, -48, 0, 0, 0, -48, -48, -48, -48, 0, 0, 0, 0, 0, 0, 0, 0, -48, -48, -48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-49, 0, -49, 0, 0, 0, -49, -49, -49, -49, 0, 0, 0, 0, 0, 0, 0, 0, -49, -49, -49, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-47, 0, -47, 0, 0, 0, -47, -47, -47, -47, 0, 0, 0, 0, 0, 0, 0, 0, -47, -47, -47, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-45, 0, -45, 0, 0, 0, -45, -45, -45, -45, 0, 0, 0, 0, 0, 0, 0, 0, -45, -45, -45, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-44, 0, -44, 0, 0, 0, -44, -44, -44, -44, 0, 0, 0, 0, 0, 0, 0, 0, -44, -44, -44, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-50, 0, -50, 0, 0, 0, -50, -50, -50, -50, 0, 0, 0, 0, 0, 0, 0, 0, -50, -50, -50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-2, 0, -2, 0, 0, 0, -2, -2, -2, -2, 0, 0, 0, 0, 0, 0, 0, 0, -2, -2, -2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-3, 0, -3, 0, 0, 0, -3, -3, -3, -3, 0, 0, 0, 0, 0, 0, 0, 0, -3, -3, -3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-1, 0, -1, 0, 0, 0, -1, -1, -1, -1, 0, 0, 0, 0, 0, 0, 0, 0, -1, -1, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-22, 0, -22, 0, 0, 0, -22, -22, -22, -22, 0, 0, 0, 0, 0, 0, 0, 0, -22, -22, -22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, -34, 0, 0, 0, -34, -34, -34, -34, 0, 0, 0, 0, 0, 0, 0, 0, -34, -34, -34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-31, 0, -31, 0, -31, -31, -31, -31, -31, -31, -31, 0, 0, 0, 0, -31, 0, 0, -31, -31, -31, -31, -31, -31, -31, -31, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 59, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 62, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, -19, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -19, -19, 0, 0, 0,
0, 0, -17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -17, -17, 0, 0, 0,
0, 0, -18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -18, -18, 0, 0, 0,
0, 0, 66, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, -16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -16, -16, 0, 0, 0,
0, 0, -15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -15, -15, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-21, 0, -21, 0, 0, 0, -21, -21, -21, -21, 0, 0, 0, 0, 0, 0, 0, 0, -21, -21, -21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-20, 0, -20, 0, 0, 0, -20, -20, -20, -20, 0, 0, 0, 0, 0, 0, 0, 0, -20, -20, -20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-53, 0, -53, 0, 0, 0, -53, -53, -53, -53, 0, 0, 0, 0, 0, 0, 0, 0, -53, -53, -53, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -36, -36, -36, -36, -36, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -37, -37, -37, -37, -37, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 19, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 69, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -11, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 71, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, -35, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-23, 0, -23, 0, 0, 0, -23, -23, -23, -23, 0, 0, 0, 0, 0, 0, 0, 0, -23, -23, -23, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -12, 0, 0,
-28, 0, -28, 0, 0, 0, -28, -28, -28, -28, 23, 0, 0, 0, 24, 0, 0, 0, -28, -28, -28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-38, 0, -38, 0, 0, 0, -38, -38, -38, -38, 0, 0, 0, 0, 0, 0, 0, 0, -38, -38, -38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-42, 0, -42, 0, 0, 0, -42, -42, -42, -42, 0, 0, 0, 0, 0, 0, 0, 0, -42, -42, -42, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-43, 0, -43, 0, 0, 0, -43, -43, -43, -43, 0, 0, 0, 0, 0, 0, 0, 0, -43, -43, -43, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 25, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -6, 0, 0, 0, 0, 82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -6, 0, 83,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -9, 0, 0, 0, 0, -9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -9, 0, -9,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -7, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 88, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -8, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 89, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-30, 0, -30, 0, 0, 0, -30, -30, -30, -30, 28, 0, 0, 0, 0, 0, 0, 0, -30, -30, -30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-24, 0, -24, 0, 0, 0, -24, -24, -24, -24, 0, 0, 0, 0, 0, 0, 0, 0, -24, -24, -24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-41, 0, -41, 0, 0, 0, -41, -41, -41, -41, 0, 0, 0, 0, 0, 0, 0, 0, -41, -41, -41, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -10, 0, 0, 0, 0, -10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -10, 0, -10,
-27, 0, -27, 0, 0, 0, -27, -27, -27, -27, 0, 0, 0, 0, 0, 0, 0, 0, -27, -27, -27, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-40, 0, -40, 0, 0, 0, -40, -40, -40, -40, 0, 0, 0, 0, 0, 0, 0, 0, -40, -40, -40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 29, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 93, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-29, 0, -29, 0, 0, 0, -29, -29, -29, -29, 0, 0, 0, 0, 0, 0, 0, 0, -29, -29, -29, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-39, 0, -39, 0, 0, 0, -39, -39, -39, -39, 0, 0, 0, 0, 0, 0, 0, 0, -39, -39, -39, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
];
fn __action(state: i8, integer: usize) -> i8 {
__ACTION[(state as usize) * 31 + integer]
}
const __EOF_ACTION: &[i8] = &[
0,
-32,
0,
-51,
-32,
-32,
0,
0,
0,
-26,
-51,
0,
0,
0,
0,
0,
0,
-25,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
-54,
0,
-33,
-46,
-48,
-49,
-47,
-45,
-44,
-4,
-50,
-2,
-3,
-1,
-22,
-34,
-31,
0,
0,
0,
0,
0,
0,
0,
0,
0,
-52,
-21,
-20,
-53,
0,
0,
0,
0,
0,
0,
0,
0,
0,
-23,
0,
-28,
0,
-38,
-42,
-43,
0,
0,
0,
0,
0,
0,
0,
0,
0,
-30,
-24,
-41,
0,
-27,
-40,
0,
0,
-29,
-39,
];
fn __goto(state: i8, nt: usize) -> i8 {
match nt {
0 => 32,
1 => 29,
2 => 16,
3 => 76,
4 => 62,
5 => match state {
16 => 67,
21 => 80,
22 => 83,
27 => 91,
_ => 63,
},
6 => match state {
15 => 66,
_ => 12,
},
7 => 33,
8 => 34,
9 => 35,
10 => 36,
11 => match state {
14 => 17,
7 => 46,
8 => 47,
11 => 56,
19 => 75,
23 => 84,
26 => 90,
_ => 11,
},
12 => match state {
0 => 30,
1 => 31,
4 => 44,
_ => 10,
},
13 => 3,
14 => match state {
17 => 71,
_ => 48,
},
15 => 15,
16 => 37,
17 => match state {
24 => 86,
25 => 89,
28 => 93,
_ => 72,
},
18 => 5,
19 => match state {
10 => 55,
_ => 38,
},
20 => 39,
_ => 0,
}
}
#[allow(clippy::needless_raw_string_hashes)]
const __TERMINAL: &[&str] = &[
r###"Newline"###,
r###""erDiagram""###,
r###"Name"###,
r###"Str"###,
r###"IdList"###,
r###"RestOfLine"###,
r###"AccTitle"###,
r###"AccDescr"###,
r###"AccDescrMultiline"###,
r###"Direction"###,
r###"BlockStart"###,
r###"BlockStop"###,
r###"SquareStart"###,
r###"SquareStop"###,
r###"StyleSeparator"###,
r###"Colon"###,
r###"Comma"###,
r###"Question"###,
r###""style""###,
r###""classDef""###,
r###""class""###,
r###"ZeroOrOne"###,
r###"ZeroOrMore"###,
r###"OneOrMore"###,
r###"OnlyOne"###,
r###"MdParent"###,
r###"Identifying"###,
r###"NonIdentifying"###,
r###"AttrWord"###,
r###"AttrKey"###,
r###"Comment"###,
];
fn __expected_tokens(__state: i8) -> alloc::vec::Vec<alloc::string::String> {
__TERMINAL.iter().enumerate().filter_map(|(index, terminal)| {
let next_state = __action(__state, index);
if next_state == 0 {
None
} else {
Some(alloc::string::ToString::to_string(terminal))
}
}).collect()
}
fn __expected_tokens_from_states<
>(
__states: &[i8],
_: core::marker::PhantomData<()>,
) -> alloc::vec::Vec<alloc::string::String>
{
__TERMINAL.iter().enumerate().filter_map(|(index, terminal)| {
if __accepts(None, __states, Some(index), core::marker::PhantomData::<()>) {
Some(alloc::string::ToString::to_string(terminal))
} else {
None
}
}).collect()
}
struct __StateMachine<>
where
{
__phantom: core::marker::PhantomData<()>,
}
impl<> __state_machine::ParserDefinition for __StateMachine<>
where
{
type Location = usize;
type Error = crate::diagrams::er::LexError;
type Token = Tok;
type TokenIndex = usize;
type Symbol = __Symbol<>;
type Success = Vec<Action>;
type StateIndex = i8;
type Action = i8;
type ReduceIndex = i8;
type NonterminalIndex = usize;
#[inline]
fn start_location(&self) -> Self::Location {
Default::default()
}
#[inline]
fn start_state(&self) -> Self::StateIndex {
0
}
#[inline]
fn token_to_index(&self, token: &Self::Token) -> Option<usize> {
__token_to_integer(token, core::marker::PhantomData::<()>)
}
#[inline]
fn action(&self, state: i8, integer: usize) -> i8 {
__action(state, integer)
}
#[inline]
fn error_action(&self, state: i8) -> i8 {
__action(state, 31 - 1)
}
#[inline]
fn eof_action(&self, state: i8) -> i8 {
__EOF_ACTION[state as usize]
}
#[inline]
fn goto(&self, state: i8, nt: usize) -> i8 {
__goto(state, nt)
}
fn token_to_symbol(&self, token_index: usize, token: Self::Token) -> Self::Symbol {
__token_to_symbol(token_index, token, core::marker::PhantomData::<()>)
}
fn expected_tokens(&self, state: i8) -> alloc::vec::Vec<alloc::string::String> {
__expected_tokens(state)
}
fn expected_tokens_from_states(&self, states: &[i8]) -> alloc::vec::Vec<alloc::string::String> {
__expected_tokens_from_states(states, core::marker::PhantomData::<()>)
}
#[inline]
fn uses_error_recovery(&self) -> bool {
false
}
#[inline]
fn error_recovery_symbol(
&self,
recovery: __state_machine::ErrorRecovery<Self>,
) -> Self::Symbol {
panic!("error recovery not enabled for this grammar")
}
fn reduce(
&mut self,
action: i8,
start_location: Option<&Self::Location>,
states: &mut alloc::vec::Vec<i8>,
symbols: &mut alloc::vec::Vec<__state_machine::SymbolTriple<Self>>,
) -> Option<__state_machine::ParseResult<Self>> {
__reduce(
action,
start_location,
states,
symbols,
core::marker::PhantomData::<()>,
)
}
fn simulate_reduce(&self, action: i8) -> __state_machine::SimulatedReduce<Self> {
__simulate_reduce(action, core::marker::PhantomData::<()>)
}
}
fn __token_to_integer<
>(
__token: &Tok,
_: core::marker::PhantomData<()>,
) -> Option<usize>
{
#[warn(unused_variables)]
match __token {
Tok::Newline if true => Some(0),
Tok::ErDiagram if true => Some(1),
Tok::Name(_) if true => Some(2),
Tok::Str(_) if true => Some(3),
Tok::IdList(_) if true => Some(4),
Tok::RestOfLine(_) if true => Some(5),
Tok::AccTitle(_) if true => Some(6),
Tok::AccDescr(_) if true => Some(7),
Tok::AccDescrMultiline(_) if true => Some(8),
Tok::Direction(_) if true => Some(9),
Tok::BlockStart if true => Some(10),
Tok::BlockStop if true => Some(11),
Tok::SquareStart if true => Some(12),
Tok::SquareStop if true => Some(13),
Tok::StyleSeparator if true => Some(14),
Tok::Colon if true => Some(15),
Tok::Comma if true => Some(16),
Tok::Question if true => Some(17),
Tok::StyleKw if true => Some(18),
Tok::ClassDefKw if true => Some(19),
Tok::ClassKw if true => Some(20),
Tok::ZeroOrOne if true => Some(21),
Tok::ZeroOrMore if true => Some(22),
Tok::OneOrMore if true => Some(23),
Tok::OnlyOne if true => Some(24),
Tok::MdParent if true => Some(25),
Tok::Identifying if true => Some(26),
Tok::NonIdentifying if true => Some(27),
Tok::AttrWord(_) if true => Some(28),
Tok::AttrKey(_) if true => Some(29),
Tok::Comment(_) if true => Some(30),
_ => None,
}
}
fn __token_to_symbol<
>(
__token_index: usize,
__token: Tok,
_: core::marker::PhantomData<()>,
) -> __Symbol<>
{
#[allow(clippy::manual_range_patterns)]match __token_index {
0 | 1 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 => __Symbol::Variant0(__token),
2 | 3 | 5 | 6 | 7 | 8 | 9 | 28 | 29 | 30 => match __token {
Tok::Name(__tok0) | Tok::Str(__tok0) | Tok::RestOfLine(__tok0) | Tok::AccTitle(__tok0) | Tok::AccDescr(__tok0) | Tok::AccDescrMultiline(__tok0) | Tok::Direction(__tok0) | Tok::AttrWord(__tok0) | Tok::AttrKey(__tok0) | Tok::Comment(__tok0) if true => __Symbol::Variant1(__tok0),
_ => unreachable!(),
},
4 => match __token {
Tok::IdList(__tok0) if true => __Symbol::Variant2(__tok0),
_ => unreachable!(),
},
_ => unreachable!(),
}
}
fn __simulate_reduce<
>(
__reduce_index: i8,
_: core::marker::PhantomData<()>,
) -> __state_machine::SimulatedReduce<__StateMachine<>>
{
match __reduce_index {
0 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 0,
}
}
1 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 0,
}
}
2 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 0,
}
}
3 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 4,
nonterminal_produced: 1,
}
}
4 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 2,
}
}
5 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 2,
}
}
6 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 2,
}
}
7 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 4,
nonterminal_produced: 2,
}
}
8 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 3,
}
}
9 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 3,
}
}
10 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 4,
}
}
11 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 4,
}
}
12 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 5,
}
}
13 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 5,
}
}
14 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 6,
}
}
15 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 6,
}
}
16 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 6,
}
}
17 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 6,
}
}
18 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 6,
}
}
19 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 7,
}
}
20 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 8,
}
}
21 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 9,
}
}
22 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 4,
nonterminal_produced: 10,
}
}
23 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 6,
nonterminal_produced: 10,
}
}
24 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 10,
}
}
25 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 10,
}
}
26 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 7,
nonterminal_produced: 10,
}
}
27 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 4,
nonterminal_produced: 10,
}
}
28 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 9,
nonterminal_produced: 10,
}
}
29 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 6,
nonterminal_produced: 10,
}
}
30 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 11,
}
}
31 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 12,
}
}
32 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 12,
}
}
33 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 13,
}
}
34 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 14,
}
}
35 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 15,
}
}
36 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 15,
}
}
37 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 5,
nonterminal_produced: 16,
}
}
38 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 9,
nonterminal_produced: 16,
}
}
39 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 7,
nonterminal_produced: 16,
}
}
40 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 7,
nonterminal_produced: 16,
}
}
41 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 17,
}
}
42 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 17,
}
}
43 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 18,
}
}
44 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 18,
}
}
45 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 18,
}
}
46 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 18,
}
}
47 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 18,
}
}
48 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 18,
}
}
49 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 18,
}
}
50 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 19,
}
}
51 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 19,
}
}
52 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 20,
}
}
53 => __state_machine::SimulatedReduce::Accept,
_ => panic!("invalid reduction index {__reduce_index}")
}
}
pub struct ActionsParser {
_priv: (),
}
impl Default for ActionsParser { fn default() -> Self { Self::new() } }
impl ActionsParser {
pub fn new() -> ActionsParser {
ActionsParser {
_priv: (),
}
}
#[allow(dead_code)]
pub fn parse<
__TOKEN: __ToTriple<>,
__TOKENS: IntoIterator<Item=__TOKEN>,
>(
&self,
__tokens0: __TOKENS,
) -> Result<Vec<Action>, __lalrpop_util::ParseError<usize, Tok, crate::diagrams::er::LexError>>
{
let __tokens = __tokens0.into_iter();
let mut __tokens = __tokens.map(|t| __ToTriple::to_triple(t));
__state_machine::Parser::drive(
__StateMachine {
__phantom: core::marker::PhantomData::<()>,
},
__tokens,
)
}
}
fn __accepts<
>(
__error_state: Option<i8>,
__states: &[i8],
__opt_integer: Option<usize>,
_: core::marker::PhantomData<()>,
) -> bool
{
let mut __states = __states.to_vec();
__states.extend(__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; }
let (__to_pop, __nt) = match __simulate_reduce(-(__action + 1), core::marker::PhantomData::<()>) {
__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);
}
}
fn __reduce<
>(
__action: i8,
__lookahead_start: Option<&usize>,
__states: &mut alloc::vec::Vec<i8>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> Option<Result<Vec<Action>,__lalrpop_util::ParseError<usize, Tok, crate::diagrams::er::LexError>>>
{
let (__pop_states, __nonterminal) = match __action {
0 => {
__reduce0(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
1 => {
__reduce1(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
2 => {
__reduce2(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
3 => {
__reduce3(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
4 => {
__reduce4(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
5 => {
__reduce5(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
6 => {
__reduce6(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
7 => {
__reduce7(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
8 => {
__reduce8(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
9 => {
__reduce9(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
10 => {
__reduce10(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
11 => {
__reduce11(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
12 => {
__reduce12(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
13 => {
__reduce13(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
14 => {
__reduce14(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
15 => {
__reduce15(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
16 => {
__reduce16(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
17 => {
__reduce17(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
18 => {
__reduce18(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
19 => {
__reduce19(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
20 => {
__reduce20(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
21 => {
__reduce21(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
22 => {
__reduce22(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
23 => {
__reduce23(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
24 => {
__reduce24(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
25 => {
__reduce25(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
26 => {
__reduce26(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
27 => {
__reduce27(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
28 => {
__reduce28(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
29 => {
__reduce29(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
30 => {
__reduce30(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
31 => {
__reduce31(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
32 => {
__reduce32(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
33 => {
__reduce33(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
34 => {
__reduce34(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
35 => {
__reduce35(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
36 => {
__reduce36(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
37 => {
__reduce37(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
38 => {
__reduce38(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
39 => {
__reduce39(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
40 => {
__reduce40(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
41 => {
__reduce41(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
42 => {
__reduce42(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
43 => {
__reduce43(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
44 => {
__reduce44(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
45 => {
__reduce45(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
46 => {
__reduce46(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
47 => {
__reduce47(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
48 => {
__reduce48(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
49 => {
__reduce49(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
50 => {
__reduce50(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
51 => {
__reduce51(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
52 => {
__reduce52(__lookahead_start, __symbols, core::marker::PhantomData::<()>)
}
53 => {
let __sym0 = __pop_Variant4(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action0::<>(__sym0);
return Some(Ok(__nt));
}
_ => panic!("invalid action code {__action}")
};
let __states_len = __states.len();
__states.truncate(__states_len - __pop_states);
let __state = *__states.last().unwrap();
let __next_state = __goto(__state, __nonterminal);
__states.push(__next_state);
None
}
#[inline(never)]
fn __symbol_type_mismatch() -> ! {
panic!("symbol type mismatch")
}
fn __pop_Variant8<
>(
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>
) -> (usize, (), usize)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant8(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant3<
>(
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>
) -> (usize, Action, usize)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant3(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant5<
>(
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>
) -> (usize, Attribute, usize)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant5(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant9<
>(
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>
) -> (usize, RelSpec, usize)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant9(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant2<
>(
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>
) -> (usize, SpannedIdList, usize)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant2(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant1<
>(
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>
) -> (usize, String, usize)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant1(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant0<
>(
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>
) -> (usize, Tok, usize)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant0(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant4<
>(
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>
) -> (usize, Vec<Action>, usize)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant4(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant7<
>(
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>
) -> (usize, Vec<Attribute>, usize)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant7(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant6<
>(
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>
) -> (usize, Vec<String>, usize)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant6(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __reduce0<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
let __sym0 = __pop_Variant1(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action14::<>(__sym0);
__symbols.push((__start, __Symbol::Variant3(__nt), __end));
(1, 0)
}
fn __reduce1<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
let __sym0 = __pop_Variant1(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action15::<>(__sym0);
__symbols.push((__start, __Symbol::Variant3(__nt), __end));
(1, 0)
}
fn __reduce2<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
let __sym0 = __pop_Variant1(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action16::<>(__sym0);
__symbols.push((__start, __Symbol::Variant3(__nt), __end));
(1, 0)
}
fn __reduce3<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
assert!(__symbols.len() >= 4);
let __sym3 = __pop_Variant4(__symbols);
let __sym2 = __pop_Variant8(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant8(__symbols);
let __start = __sym0.0.clone();
let __end = __sym3.2.clone();
let __nt = super::__action1::<>(__sym0, __sym1, __sym2, __sym3);
__symbols.push((__start, __Symbol::Variant4(__nt), __end));
(4, 1)
}
fn __reduce4<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant1(__symbols);
let __sym0 = __pop_Variant1(__symbols);
let __start = __sym0.0.clone();
let __end = __sym1.2.clone();
let __nt = super::__action46::<>(__sym0, __sym1);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(2, 2)
}
fn __reduce5<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant6(__symbols);
let __sym1 = __pop_Variant1(__symbols);
let __sym0 = __pop_Variant1(__symbols);
let __start = __sym0.0.clone();
let __end = __sym2.2.clone();
let __nt = super::__action47::<>(__sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(3, 2)
}
fn __reduce6<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant1(__symbols);
let __sym1 = __pop_Variant1(__symbols);
let __sym0 = __pop_Variant1(__symbols);
let __start = __sym0.0.clone();
let __end = __sym2.2.clone();
let __nt = super::__action48::<>(__sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(3, 2)
}
fn __reduce7<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
assert!(__symbols.len() >= 4);
let __sym3 = __pop_Variant1(__symbols);
let __sym2 = __pop_Variant6(__symbols);
let __sym1 = __pop_Variant1(__symbols);
let __sym0 = __pop_Variant1(__symbols);
let __start = __sym0.0.clone();
let __end = __sym3.2.clone();
let __nt = super::__action49::<>(__sym0, __sym1, __sym2, __sym3);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(4, 2)
}
fn __reduce8<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
let __sym0 = __pop_Variant1(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action52::<>(__sym0);
__symbols.push((__start, __Symbol::Variant6(__nt), __end));
(1, 3)
}
fn __reduce9<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant1(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant6(__symbols);
let __start = __sym0.0.clone();
let __end = __sym2.2.clone();
let __nt = super::__action53::<>(__sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant6(__nt), __end));
(3, 3)
}
fn __reduce10<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
let __sym0 = __pop_Variant1(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action50::<>(__sym0);
__symbols.push((__start, __Symbol::Variant1(__nt), __end));
(1, 4)
}
fn __reduce11<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant1(__symbols);
let __start = __sym0.0.clone();
let __end = __sym1.2.clone();
let __nt = super::__action51::<>(__sym0, __sym1);
__symbols.push((__start, __Symbol::Variant1(__nt), __end));
(2, 4)
}
fn __reduce12<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2)).unwrap_or_default();
let __end = __start;
let __nt = super::__action44::<>(&__start, &__end);
__symbols.push((__start, __Symbol::Variant7(__nt), __end));
(0, 5)
}
fn __reduce13<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant7(__symbols);
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0.clone();
let __end = __sym1.2.clone();
let __nt = super::__action45::<>(__sym0, __sym1);
__symbols.push((__start, __Symbol::Variant7(__nt), __end));
(2, 5)
}
fn __reduce14<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action37::<>(__sym0);
__symbols.push((__start, __Symbol::Variant1(__nt), __end));
(1, 6)
}
fn __reduce15<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action38::<>(__sym0);
__symbols.push((__start, __Symbol::Variant1(__nt), __end));
(1, 6)
}
fn __reduce16<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action39::<>(__sym0);
__symbols.push((__start, __Symbol::Variant1(__nt), __end));
(1, 6)
}
fn __reduce17<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action40::<>(__sym0);
__symbols.push((__start, __Symbol::Variant1(__nt), __end));
(1, 6)
}
fn __reduce18<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action41::<>(__sym0);
__symbols.push((__start, __Symbol::Variant1(__nt), __end));
(1, 6)
}
fn __reduce19<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant1(__symbols);
let __sym1 = __pop_Variant6(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym2.2.clone();
let __nt = super::__action19::<>(__sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant3(__nt), __end));
(3, 7)
}
fn __reduce20<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant6(__symbols);
let __sym1 = __pop_Variant6(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym2.2.clone();
let __nt = super::__action20::<>(__sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant3(__nt), __end));
(3, 8)
}
fn __reduce21<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
let __sym0 = __pop_Variant1(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action17::<>(__sym0);
__symbols.push((__start, __Symbol::Variant3(__nt), __end));
(1, 9)
}
fn __reduce22<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
assert!(__symbols.len() >= 4);
let __sym3 = __pop_Variant0(__symbols);
let __sym2 = __pop_Variant7(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant1(__symbols);
let __start = __sym0.0.clone();
let __end = __sym3.2.clone();
let __nt = super::__action25::<>(__sym0, __sym1, __sym2, __sym3);
__symbols.push((__start, __Symbol::Variant4(__nt), __end));
(4, 10)
}
fn __reduce23<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
assert!(__symbols.len() >= 6);
let __sym5 = __pop_Variant0(__symbols);
let __sym4 = __pop_Variant7(__symbols);
let __sym3 = __pop_Variant0(__symbols);
let __sym2 = __pop_Variant6(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant1(__symbols);
let __start = __sym0.0.clone();
let __end = __sym5.2.clone();
let __nt = super::__action26::<>(__sym0, __sym1, __sym2, __sym3, __sym4, __sym5);
__symbols.push((__start, __Symbol::Variant4(__nt), __end));
(6, 10)
}
fn __reduce24<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant6(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant1(__symbols);
let __start = __sym0.0.clone();
let __end = __sym2.2.clone();
let __nt = super::__action27::<>(__sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant4(__nt), __end));
(3, 10)
}
fn __reduce25<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
let __sym0 = __pop_Variant1(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action28::<>(__sym0);
__symbols.push((__start, __Symbol::Variant4(__nt), __end));
(1, 10)
}
fn __reduce26<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
assert!(__symbols.len() >= 7);
let __sym6 = __pop_Variant0(__symbols);
let __sym5 = __pop_Variant7(__symbols);
let __sym4 = __pop_Variant0(__symbols);
let __sym3 = __pop_Variant0(__symbols);
let __sym2 = __pop_Variant1(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant1(__symbols);
let __start = __sym0.0.clone();
let __end = __sym6.2.clone();
let __nt = super::__action29::<>(__sym0, __sym1, __sym2, __sym3, __sym4, __sym5, __sym6);
__symbols.push((__start, __Symbol::Variant4(__nt), __end));
(7, 10)
}
fn __reduce27<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
assert!(__symbols.len() >= 4);
let __sym3 = __pop_Variant0(__symbols);
let __sym2 = __pop_Variant1(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant1(__symbols);
let __start = __sym0.0.clone();
let __end = __sym3.2.clone();
let __nt = super::__action30::<>(__sym0, __sym1, __sym2, __sym3);
__symbols.push((__start, __Symbol::Variant4(__nt), __end));
(4, 10)
}
fn __reduce28<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
assert!(__symbols.len() >= 9);
let __sym8 = __pop_Variant0(__symbols);
let __sym7 = __pop_Variant7(__symbols);
let __sym6 = __pop_Variant0(__symbols);
let __sym5 = __pop_Variant6(__symbols);
let __sym4 = __pop_Variant0(__symbols);
let __sym3 = __pop_Variant0(__symbols);
let __sym2 = __pop_Variant1(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant1(__symbols);
let __start = __sym0.0.clone();
let __end = __sym8.2.clone();
let __nt = super::__action31::<>(__sym0, __sym1, __sym2, __sym3, __sym4, __sym5, __sym6, __sym7, __sym8);
__symbols.push((__start, __Symbol::Variant4(__nt), __end));
(9, 10)
}
fn __reduce29<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
assert!(__symbols.len() >= 6);
let __sym5 = __pop_Variant6(__symbols);
let __sym4 = __pop_Variant0(__symbols);
let __sym3 = __pop_Variant0(__symbols);
let __sym2 = __pop_Variant1(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant1(__symbols);
let __start = __sym0.0.clone();
let __end = __sym5.2.clone();
let __nt = super::__action32::<>(__sym0, __sym1, __sym2, __sym3, __sym4, __sym5);
__symbols.push((__start, __Symbol::Variant4(__nt), __end));
(6, 10)
}
fn __reduce30<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
let __sym0 = __pop_Variant2(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action33::<>(__sym0);
__symbols.push((__start, __Symbol::Variant6(__nt), __end));
(1, 11)
}
fn __reduce31<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2)).unwrap_or_default();
let __end = __start;
let __nt = super::__action2::<>(&__start, &__end);
__symbols.push((__start, __Symbol::Variant8(__nt), __end));
(0, 12)
}
fn __reduce32<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant8(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym1.2.clone();
let __nt = super::__action3::<>(__sym0, __sym1);
__symbols.push((__start, __Symbol::Variant8(__nt), __end));
(2, 12)
}
fn __reduce33<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant8(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym1.2.clone();
let __nt = super::__action4::<>(__sym0, __sym1);
__symbols.push((__start, __Symbol::Variant8(__nt), __end));
(2, 13)
}
fn __reduce34<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant1(__symbols);
let __sym1 = __pop_Variant1(__symbols);
let __sym0 = __pop_Variant1(__symbols);
let __start = __sym0.0.clone();
let __end = __sym2.2.clone();
let __nt = super::__action36::<>(__sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant9(__nt), __end));
(3, 14)
}
fn __reduce35<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action42::<>(__sym0);
__symbols.push((__start, __Symbol::Variant1(__nt), __end));
(1, 15)
}
fn __reduce36<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action43::<>(__sym0);
__symbols.push((__start, __Symbol::Variant1(__nt), __end));
(1, 15)
}
fn __reduce37<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
assert!(__symbols.len() >= 5);
let __sym4 = __pop_Variant1(__symbols);
let __sym3 = __pop_Variant0(__symbols);
let __sym2 = __pop_Variant1(__symbols);
let __sym1 = __pop_Variant9(__symbols);
let __sym0 = __pop_Variant1(__symbols);
let __start = __sym0.0.clone();
let __end = __sym4.2.clone();
let __nt = super::__action21::<>(__sym0, __sym1, __sym2, __sym3, __sym4);
__symbols.push((__start, __Symbol::Variant4(__nt), __end));
(5, 16)
}
fn __reduce38<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
assert!(__symbols.len() >= 9);
let __sym8 = __pop_Variant1(__symbols);
let __sym7 = __pop_Variant0(__symbols);
let __sym6 = __pop_Variant6(__symbols);
let __sym5 = __pop_Variant0(__symbols);
let __sym4 = __pop_Variant1(__symbols);
let __sym3 = __pop_Variant9(__symbols);
let __sym2 = __pop_Variant6(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant1(__symbols);
let __start = __sym0.0.clone();
let __end = __sym8.2.clone();
let __nt = super::__action22::<>(__sym0, __sym1, __sym2, __sym3, __sym4, __sym5, __sym6, __sym7, __sym8);
__symbols.push((__start, __Symbol::Variant4(__nt), __end));
(9, 16)
}
fn __reduce39<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
assert!(__symbols.len() >= 7);
let __sym6 = __pop_Variant1(__symbols);
let __sym5 = __pop_Variant0(__symbols);
let __sym4 = __pop_Variant1(__symbols);
let __sym3 = __pop_Variant9(__symbols);
let __sym2 = __pop_Variant6(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant1(__symbols);
let __start = __sym0.0.clone();
let __end = __sym6.2.clone();
let __nt = super::__action23::<>(__sym0, __sym1, __sym2, __sym3, __sym4, __sym5, __sym6);
__symbols.push((__start, __Symbol::Variant4(__nt), __end));
(7, 16)
}
fn __reduce40<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
assert!(__symbols.len() >= 7);
let __sym6 = __pop_Variant1(__symbols);
let __sym5 = __pop_Variant0(__symbols);
let __sym4 = __pop_Variant6(__symbols);
let __sym3 = __pop_Variant0(__symbols);
let __sym2 = __pop_Variant1(__symbols);
let __sym1 = __pop_Variant9(__symbols);
let __sym0 = __pop_Variant1(__symbols);
let __start = __sym0.0.clone();
let __end = __sym6.2.clone();
let __nt = super::__action24::<>(__sym0, __sym1, __sym2, __sym3, __sym4, __sym5, __sym6);
__symbols.push((__start, __Symbol::Variant4(__nt), __end));
(7, 16)
}
fn __reduce41<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
let __sym0 = __pop_Variant1(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action34::<>(__sym0);
__symbols.push((__start, __Symbol::Variant1(__nt), __end));
(1, 17)
}
fn __reduce42<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
let __sym0 = __pop_Variant1(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action35::<>(__sym0);
__symbols.push((__start, __Symbol::Variant1(__nt), __end));
(1, 17)
}
fn __reduce43<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
let __sym0 = __pop_Variant4(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action7::<>(__sym0);
__symbols.push((__start, __Symbol::Variant4(__nt), __end));
(1, 18)
}
fn __reduce44<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
let __sym0 = __pop_Variant4(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action8::<>(__sym0);
__symbols.push((__start, __Symbol::Variant4(__nt), __end));
(1, 18)
}
fn __reduce45<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
let __sym0 = __pop_Variant3(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action9::<>(__sym0);
__symbols.push((__start, __Symbol::Variant4(__nt), __end));
(1, 18)
}
fn __reduce46<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
let __sym0 = __pop_Variant3(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action10::<>(__sym0);
__symbols.push((__start, __Symbol::Variant4(__nt), __end));
(1, 18)
}
fn __reduce47<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
let __sym0 = __pop_Variant3(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action11::<>(__sym0);
__symbols.push((__start, __Symbol::Variant4(__nt), __end));
(1, 18)
}
fn __reduce48<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
let __sym0 = __pop_Variant3(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action12::<>(__sym0);
__symbols.push((__start, __Symbol::Variant4(__nt), __end));
(1, 18)
}
fn __reduce49<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
let __sym0 = __pop_Variant3(__symbols);
let __start = __sym0.0.clone();
let __end = __sym0.2.clone();
let __nt = super::__action13::<>(__sym0);
__symbols.push((__start, __Symbol::Variant4(__nt), __end));
(1, 18)
}
fn __reduce50<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2)).unwrap_or_default();
let __end = __start;
let __nt = super::__action5::<>(&__start, &__end);
__symbols.push((__start, __Symbol::Variant4(__nt), __end));
(0, 19)
}
fn __reduce51<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant4(__symbols);
let __sym1 = __pop_Variant8(__symbols);
let __sym0 = __pop_Variant4(__symbols);
let __start = __sym0.0.clone();
let __end = __sym2.2.clone();
let __nt = super::__action6::<>(__sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant4(__nt), __end));
(3, 19)
}
fn __reduce52<
>(
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<>,usize)>,
_: core::marker::PhantomData<()>,
) -> (usize, usize)
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant1(__symbols);
let __sym1 = __pop_Variant6(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0.clone();
let __end = __sym2.2.clone();
let __nt = super::__action18::<>(__sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant3(__nt), __end));
(3, 20)
}
}
#[allow(unused_imports)]
pub use self::__parse__Actions::ActionsParser;
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action0<
>(
(_, __0, _): (usize, Vec<Action>, usize),
) -> Vec<Action>
{
__0
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action1<
>(
(_, _n, _): (usize, (), usize),
(_, _, _): (usize, Tok, usize),
(_, _n1, _): (usize, (), usize),
(_, s, _): (usize, Vec<Action>, usize),
) -> Vec<Action>
{
s
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action2<
>(
__lookbehind: &usize,
__lookahead: &usize,
)
{
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action3<
>(
(_, _, _): (usize, Tok, usize),
(_, rest, _): (usize, (), usize),
)
{
rest
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action4<
>(
(_, _, _): (usize, Tok, usize),
(_, _n, _): (usize, (), usize),
)
{
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action5<
>(
__lookbehind: &usize,
__lookahead: &usize,
) -> Vec<Action>
{
Vec::new()
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action6<
>(
(_, s, _): (usize, Vec<Action>, usize),
(_, _n, _): (usize, (), usize),
(_, rest, _): (usize, Vec<Action>, usize),
) -> Vec<Action>
{
{
let mut v = s;
v.extend(rest);
v
}
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action7<
>(
(_, v, _): (usize, Vec<Action>, usize),
) -> Vec<Action>
{
v
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action8<
>(
(_, v, _): (usize, Vec<Action>, usize),
) -> Vec<Action>
{
v
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action9<
>(
(_, a, _): (usize, Action, usize),
) -> Vec<Action>
{
vec![a]
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action10<
>(
(_, a, _): (usize, Action, usize),
) -> Vec<Action>
{
vec![a]
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action11<
>(
(_, a, _): (usize, Action, usize),
) -> Vec<Action>
{
vec![a]
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action12<
>(
(_, a, _): (usize, Action, usize),
) -> Vec<Action>
{
vec![a]
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action13<
>(
(_, a, _): (usize, Action, usize),
) -> Vec<Action>
{
vec![a]
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action14<
>(
(_, __0, _): (usize, String, usize),
) -> Action
{
Action::SetAccTitle(__0)
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action15<
>(
(_, __0, _): (usize, String, usize),
) -> Action
{
Action::SetAccDescr(__0)
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action16<
>(
(_, __0, _): (usize, String, usize),
) -> Action
{
Action::SetAccDescr(__0)
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action17<
>(
(_, __0, _): (usize, String, usize),
) -> Action
{
Action::SetDirection(__0)
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action18<
>(
(_, _, _): (usize, Tok, usize),
(_, ids, _): (usize, Vec<String>, usize),
(_, raw, _): (usize, String, usize),
) -> Action
{
Action::AddCssStyles { entities: ids, raw }
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action19<
>(
(_, _, _): (usize, Tok, usize),
(_, ids, _): (usize, Vec<String>, usize),
(_, raw, _): (usize, String, usize),
) -> Action
{
Action::AddClassDef { classes: ids, raw }
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action20<
>(
(_, _, _): (usize, Tok, usize),
(_, entities, _): (usize, Vec<String>, usize),
(_, classes, _): (usize, Vec<String>, usize),
) -> Action
{
Action::SetClass { entities, classes }
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action21<
>(
(_, a, _): (usize, String, usize),
(_, spec, _): (usize, RelSpec, usize),
(_, b, _): (usize, String, usize),
(_, _, _): (usize, Tok, usize),
(_, role, _): (usize, String, usize),
) -> Vec<Action>
{
vec![
Action::AddEntity { name: a.clone(), alias: None },
Action::AddEntity { name: b.clone(), alias: None },
Action::AddRelationship { a, role, b, spec },
]
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action22<
>(
(_, a, _): (usize, String, usize),
(_, _, _): (usize, Tok, usize),
(_, classes_a, _): (usize, Vec<String>, usize),
(_, spec, _): (usize, RelSpec, usize),
(_, b, _): (usize, String, usize),
(_, _, _): (usize, Tok, usize),
(_, classes_b, _): (usize, Vec<String>, usize),
(_, _, _): (usize, Tok, usize),
(_, role, _): (usize, String, usize),
) -> Vec<Action>
{
vec![
Action::AddEntity { name: a.clone(), alias: None },
Action::AddEntity { name: b.clone(), alias: None },
Action::AddRelationship { a: a.clone(), role, b: b.clone(), spec },
Action::SetClass { entities: vec![a], classes: classes_a },
Action::SetClass { entities: vec![b], classes: classes_b },
]
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action23<
>(
(_, a, _): (usize, String, usize),
(_, _, _): (usize, Tok, usize),
(_, classes_a, _): (usize, Vec<String>, usize),
(_, spec, _): (usize, RelSpec, usize),
(_, b, _): (usize, String, usize),
(_, _, _): (usize, Tok, usize),
(_, role, _): (usize, String, usize),
) -> Vec<Action>
{
vec![
Action::AddEntity { name: a.clone(), alias: None },
Action::AddEntity { name: b.clone(), alias: None },
Action::AddRelationship { a: a.clone(), role, b: b.clone(), spec },
Action::SetClass { entities: vec![a], classes: classes_a },
]
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action24<
>(
(_, a, _): (usize, String, usize),
(_, spec, _): (usize, RelSpec, usize),
(_, b, _): (usize, String, usize),
(_, _, _): (usize, Tok, usize),
(_, classes_b, _): (usize, Vec<String>, usize),
(_, _, _): (usize, Tok, usize),
(_, role, _): (usize, String, usize),
) -> Vec<Action>
{
vec![
Action::AddEntity { name: a.clone(), alias: None },
Action::AddEntity { name: b.clone(), alias: None },
Action::AddRelationship { a: a.clone(), role, b: b.clone(), spec },
Action::SetClass { entities: vec![b], classes: classes_b },
]
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action25<
>(
(_, name, _): (usize, String, usize),
(_, _, _): (usize, Tok, usize),
(_, attrs, _): (usize, Vec<Attribute>, usize),
(_, _, _): (usize, Tok, usize),
) -> Vec<Action>
{
vec![
Action::AddEntity { name: name.clone(), alias: None },
Action::AddAttributes { entity: name, attributes: attrs },
]
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action26<
>(
(_, name, _): (usize, String, usize),
(_, _, _): (usize, Tok, usize),
(_, classes, _): (usize, Vec<String>, usize),
(_, _, _): (usize, Tok, usize),
(_, attrs, _): (usize, Vec<Attribute>, usize),
(_, _, _): (usize, Tok, usize),
) -> Vec<Action>
{
vec![
Action::AddEntity { name: name.clone(), alias: None },
Action::AddAttributes { entity: name.clone(), attributes: attrs },
Action::SetClass { entities: vec![name], classes },
]
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action27<
>(
(_, name, _): (usize, String, usize),
(_, _, _): (usize, Tok, usize),
(_, classes, _): (usize, Vec<String>, usize),
) -> Vec<Action>
{
vec![
Action::AddEntity { name: name.clone(), alias: None },
Action::SetClass { entities: vec![name], classes },
]
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action28<
>(
(_, name, _): (usize, String, usize),
) -> Vec<Action>
{
vec![
Action::AddEntity { name, alias: None },
]
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action29<
>(
(_, name, _): (usize, String, usize),
(_, _, _): (usize, Tok, usize),
(_, alias, _): (usize, String, usize),
(_, _, _): (usize, Tok, usize),
(_, _, _): (usize, Tok, usize),
(_, attrs, _): (usize, Vec<Attribute>, usize),
(_, _, _): (usize, Tok, usize),
) -> Vec<Action>
{
vec![
Action::AddEntity { name: name.clone(), alias: Some(alias) },
Action::AddAttributes { entity: name, attributes: attrs },
]
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action30<
>(
(_, name, _): (usize, String, usize),
(_, _, _): (usize, Tok, usize),
(_, alias, _): (usize, String, usize),
(_, _, _): (usize, Tok, usize),
) -> Vec<Action>
{
vec![
Action::AddEntity { name, alias: Some(alias) },
]
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action31<
>(
(_, name, _): (usize, String, usize),
(_, _, _): (usize, Tok, usize),
(_, alias, _): (usize, String, usize),
(_, _, _): (usize, Tok, usize),
(_, _, _): (usize, Tok, usize),
(_, classes, _): (usize, Vec<String>, usize),
(_, _, _): (usize, Tok, usize),
(_, attrs, _): (usize, Vec<Attribute>, usize),
(_, _, _): (usize, Tok, usize),
) -> Vec<Action>
{
vec![
Action::AddEntity { name: name.clone(), alias: Some(alias) },
Action::AddAttributes { entity: name.clone(), attributes: attrs },
Action::SetClass { entities: vec![name], classes },
]
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action32<
>(
(_, name, _): (usize, String, usize),
(_, _, _): (usize, Tok, usize),
(_, alias, _): (usize, String, usize),
(_, _, _): (usize, Tok, usize),
(_, _, _): (usize, Tok, usize),
(_, classes, _): (usize, Vec<String>, usize),
) -> Vec<Action>
{
vec![
Action::AddEntity { name: name.clone(), alias: Some(alias) },
Action::SetClass { entities: vec![name], classes },
]
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action33<
>(
(_, ids, _): (usize, SpannedIdList, usize),
) -> Vec<String>
{
ids.into_names()
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action34<
>(
(_, __0, _): (usize, String, usize),
) -> String
{
__0
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action35<
>(
(_, __0, _): (usize, String, usize),
) -> String
{
__0
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action36<
>(
(_, left, _): (usize, String, usize),
(_, t, _): (usize, String, usize),
(_, right, _): (usize, String, usize),
) -> RelSpec
{
RelSpec { card_a: right, card_b: left, rel_type: t }
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action37<
>(
(_, __0, _): (usize, Tok, usize),
) -> String
{
"ZERO_OR_ONE".to_string()
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action38<
>(
(_, __0, _): (usize, Tok, usize),
) -> String
{
"ZERO_OR_MORE".to_string()
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action39<
>(
(_, __0, _): (usize, Tok, usize),
) -> String
{
"ONE_OR_MORE".to_string()
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action40<
>(
(_, __0, _): (usize, Tok, usize),
) -> String
{
"ONLY_ONE".to_string()
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action41<
>(
(_, __0, _): (usize, Tok, usize),
) -> String
{
"MD_PARENT".to_string()
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action42<
>(
(_, __0, _): (usize, Tok, usize),
) -> String
{
"IDENTIFYING".to_string()
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action43<
>(
(_, __0, _): (usize, Tok, usize),
) -> String
{
"NON_IDENTIFYING".to_string()
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action44<
>(
__lookbehind: &usize,
__lookahead: &usize,
) -> Vec<Attribute>
{
Vec::new()
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action45<
>(
(_, a, _): (usize, Attribute, usize),
(_, rest, _): (usize, Vec<Attribute>, usize),
) -> Vec<Attribute>
{
{
let mut v = vec![a];
v.extend(rest);
v
}
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action46<
>(
(_, ty, _): (usize, String, usize),
(_, name, _): (usize, String, usize),
) -> Attribute
{
Attribute { ty, name, keys: Vec::new(), comment: String::new() }
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action47<
>(
(_, ty, _): (usize, String, usize),
(_, name, _): (usize, String, usize),
(_, keys, _): (usize, Vec<String>, usize),
) -> Attribute
{
Attribute { ty, name, keys, comment: String::new() }
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action48<
>(
(_, ty, _): (usize, String, usize),
(_, name, _): (usize, String, usize),
(_, c, _): (usize, String, usize),
) -> Attribute
{
Attribute { ty, name, keys: Vec::new(), comment: c }
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action49<
>(
(_, ty, _): (usize, String, usize),
(_, name, _): (usize, String, usize),
(_, keys, _): (usize, Vec<String>, usize),
(_, c, _): (usize, String, usize),
) -> Attribute
{
Attribute { ty, name, keys, comment: c }
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action50<
>(
(_, __0, _): (usize, String, usize),
) -> String
{
__0
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action51<
>(
(_, w, _): (usize, String, usize),
(_, _, _): (usize, Tok, usize),
) -> String
{
format!("{w}?")
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action52<
>(
(_, k, _): (usize, String, usize),
) -> Vec<String>
{
vec![k]
}
#[allow(clippy::too_many_arguments, clippy::needless_lifetimes, clippy::just_underscores_and_digits)]
fn __action53<
>(
(_, ks, _): (usize, Vec<String>, usize),
(_, _, _): (usize, Tok, usize),
(_, k, _): (usize, String, usize),
) -> Vec<String>
{
{ let mut v = ks; v.push(k); v }
}
#[allow(clippy::type_complexity, dead_code)]
pub trait __ToTriple<>
{
fn to_triple(self) -> Result<(usize,Tok,usize), __lalrpop_util::ParseError<usize, Tok, crate::diagrams::er::LexError>>;
}
impl<> __ToTriple<> for (usize, Tok, usize)
{
fn to_triple(self) -> Result<(usize,Tok,usize), __lalrpop_util::ParseError<usize, Tok, crate::diagrams::er::LexError>> {
Ok(self)
}
}
impl<> __ToTriple<> for Result<(usize, Tok, usize), crate::diagrams::er::LexError>
{
fn to_triple(self) -> Result<(usize,Tok,usize), __lalrpop_util::ParseError<usize, Tok, crate::diagrams::er::LexError>> {
self.map_err(|error| __lalrpop_util::ParseError::User { error })
}
}