// auto-generated: "lalrpop 0.22.2"
// sha3: daae2255ae6fb8407d740035d9cf1a33a65b3032d5e553afec2c5b65943448e9
use crate::bearilog::helpers::*;
use crate::schema::{
BrdbStructPropRaw, PlaintextEnumBody as EnumBody, PlaintextStructBody as StructBody,
};
#[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)]
mod __parse__Meta {
use crate::schema::{BrdbStructPropRaw, PlaintextEnumBody as EnumBody, PlaintextStructBody as StructBody};
use crate::bearilog::helpers::*;
#[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 self::__lalrpop_util::lexer::Token;
#[allow(dead_code)]
pub(crate) enum __Symbol<'input>
{
Variant0(&'input str),
Variant1(Option<&'input str>),
Variant2(()),
Variant3((String, i32)),
Variant4(alloc::vec::Vec<(String, i32)>),
Variant5((String, BrdbStructPropRaw)),
Variant6(alloc::vec::Vec<(String, BrdbStructPropRaw)>),
Variant7(i32),
Variant8(Vec<(String, i32)>),
Variant9(Vec<(String, BrdbStructPropRaw)>),
Variant10((String, EnumBody)),
Variant11(String),
Variant12((Vec<(String, EnumBody)>, Vec<(String, StructBody)>)),
Variant13((String, StructBody)),
Variant14((Option<(String, EnumBody)>, Option<(String, StructBody)>)),
Variant15(alloc::vec::Vec<(Option<(String, EnumBody)>, Option<(String, StructBody)>)>),
Variant16(BrdbStructPropRaw),
}
const __ACTION: &[i8] = &[
// State 0
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 4, 0, 0,
// State 1
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 4, 0, 0,
// State 2
0, 0, 0, 19, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
// State 3
0, 0, 0, 19, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
// State 4
0, 0, 0, 19, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -15,
// State 5
0, 0, 0, 19, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -20,
// State 6
0, 0, 0, 19, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
// State 7
0, 0, 0, 19, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
// State 8
38, 39, 40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
// State 9
0, 0, 0, 19, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11, 0,
// State 10
0, 0, 0, 19, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
// State 11
0, 0, 0, 19, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
// State 12
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -36, 0, -36, 0, 0,
// State 13
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
// State 14
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -37, 0, -37, 0, 0,
// State 15
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -38, 0, -38, 0, 0,
// State 16
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -39, 0, -39, 0, 0,
// State 17
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0,
// State 18
0, 0, 0, 0, -29, -29, -29, -29, -29, 0, 0, 0, 0, -29, -29,
// State 19
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0,
// State 20
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28,
// State 21
0, 0, 0, 0, 29, 0, 0, 0, 0, 0, 0, 0, 0, 0, -18,
// State 22
0, 0, 0, 0, 0, 0, 9, 0, 0, 0, 0, 0, 0, 0, 0,
// State 23
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31,
// State 24
0, 0, 0, 0, 0, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0,
// State 25
0, 0, 0, 0, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, -23,
// State 26
0, 0, 0, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, -19,
// State 27
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -25, 0, -25, 0, 0,
// State 28
0, 0, 0, -7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -16,
// State 29
0, 0, 0, 0, 41, 0, 0, 0, 0, 0, 0, 0, 0, 0, -24,
// State 30
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -34, 0, -34, 0, 0,
// State 31
0, 0, 0, -12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -21,
// State 32
0, 0, 0, -8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -17,
// State 33
0, 0, 0, 0, -31, 0, 0, 0, 0, 0, 0, 0, 0, 0, -31,
// State 34
0, 0, 0, 0, -32, 0, 0, 0, 0, 0, 0, 0, 0, 0, -32,
// State 35
0, 0, 0, 0, -30, 0, 0, 0, 0, 0, 0, 0, 0, 0, -30,
// State 36
0, 0, 0, 0, -26, 0, 0, 0, 0, 0, 0, 0, 0, 0, -26,
// State 37
0, 0, 0, 0, -28, 0, 0, 0, 0, 0, 0, 0, 0, 0, -28,
// State 38
0, 0, 0, 0, -14, 0, 0, 0, 0, 0, 0, 0, 0, 0, -14,
// State 39
0, 0, 0, 0, -27, 0, 0, 0, 0, 0, 0, 0, 0, 0, -27,
// State 40
0, 0, 0, -13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -22,
// State 41
0, 0, 0, 0, -40, 0, 0, 44, 45, 0, 0, 0, 0, 0, -40,
// State 42
0, 0, 0, 0, -35, 0, 0, 0, 0, 0, 0, 0, 0, 0, -35,
// State 43
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 47, 0, 0, 0,
// State 44
0, 0, 0, 0, -41, 0, 0, 0, 0, 0, 0, 0, 0, 0, -41,
// State 45
0, 0, 0, 0, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0,
// State 46
0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 0, 0, 0, 0, 0,
// State 47
0, 0, 0, 0, -42, 0, 0, 0, 0, 0, 0, 0, 0, 0, -42,
// State 48
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50,
// State 49
0, 0, 0, 0, -43, 0, 0, 0, 0, 0, 0, 0, 0, 0, -43,
];
fn __action(state: i8, integer: usize) -> i8 {
__ACTION[(state as usize) * 15 + integer]
}
const __EOF_ACTION: &[i8] = &[
// State 0
0,
// State 1
-33,
// 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
-36,
// State 13
-44,
// State 14
-37,
// State 15
-38,
// State 16
-39,
// State 17
0,
// State 18
0,
// State 19
0,
// State 20
0,
// State 21
0,
// State 22
0,
// State 23
0,
// State 24
0,
// State 25
0,
// State 26
0,
// State 27
-25,
// State 28
0,
// State 29
0,
// State 30
-34,
// State 31
0,
// State 32
0,
// State 33
0,
// State 34
0,
// State 35
0,
// State 36
0,
// State 37
0,
// State 38
0,
// State 39
0,
// State 40
0,
// State 41
0,
// State 42
0,
// State 43
0,
// State 44
0,
// State 45
0,
// State 46
0,
// State 47
0,
// State 48
0,
// State 49
0,
];
fn __goto(state: i8, nt: usize) -> i8 {
match nt {
4 => 6,
7 => 7,
8 => 33,
9 => 20,
10 => 23,
11 => 12,
12 => match state {
6 => 26,
_ => 21,
},
13 => 34,
14 => 35,
15 => match state {
2 => 17,
3 => 19,
5 | 7 => 24,
9 => 41,
10 => 45,
11 => 48,
_ => 22,
},
16 => 36,
17 => 13,
18 => 14,
19 => match state {
7 => 29,
_ => 25,
},
20 => match state {
1 => 16,
_ => 15,
},
21 => 1,
22 => 42,
_ => 0,
}
}
#[allow(clippy::needless_raw_string_hashes)]
const __TERMINAL: &[&str] = &[
r###"r#"-?\\d+(_\\d+)*"#"###,
r###"r#"0b[01]+(_[01]+)*"#"###,
r###"r#"0x[0-9a-fA-F]+(_[0-9a-fA-F]+)*"#"###,
r###"r#"[a-zA-Z_](\\w|\\w::\\w)*"#"###,
r###"",""###,
r###"":""###,
r###""=""###,
r###""[""###,
r###""[]""###,
r###""]""###,
r###""enum""###,
r###""flat""###,
r###""struct""###,
r###""{""###,
r###""}""###,
];
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<
'input,
>(
__states: &[i8],
_: core::marker::PhantomData<(&'input ())>,
) -> 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<'input>
where
{
input: &'input str,
__phantom: core::marker::PhantomData<(&'input ())>,
}
impl<'input> __state_machine::ParserDefinition for __StateMachine<'input>
where
{
type Location = usize;
type Error = &'static str;
type Token = Token<'input>;
type TokenIndex = usize;
type Symbol = __Symbol<'input>;
type Success = (Vec<(String, EnumBody)>, Vec<(String, StructBody)>);
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, 15 - 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(
self.input,
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<
'input,
>(
__token: &Token<'input>,
_: core::marker::PhantomData<(&'input ())>,
) -> Option<usize>
{
#[warn(unused_variables)]
match __token {
Token(0, _) if true => Some(0),
Token(1, _) if true => Some(1),
Token(2, _) if true => Some(2),
Token(3, _) if true => Some(3),
Token(4, _) if true => Some(4),
Token(5, _) if true => Some(5),
Token(6, _) if true => Some(6),
Token(7, _) if true => Some(7),
Token(8, _) if true => Some(8),
Token(9, _) if true => Some(9),
Token(10, _) if true => Some(10),
Token(11, _) if true => Some(11),
Token(12, _) if true => Some(12),
Token(13, _) if true => Some(13),
Token(14, _) if true => Some(14),
_ => None,
}
}
fn __token_to_symbol<
'input,
>(
__token_index: usize,
__token: Token<'input>,
_: core::marker::PhantomData<(&'input ())>,
) -> __Symbol<'input>
{
#[allow(clippy::manual_range_patterns)]match __token_index {
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 => match __token {
Token(0, __tok0) | Token(1, __tok0) | Token(2, __tok0) | Token(3, __tok0) | Token(4, __tok0) | Token(5, __tok0) | Token(6, __tok0) | Token(7, __tok0) | Token(8, __tok0) | Token(9, __tok0) | Token(10, __tok0) | Token(11, __tok0) | Token(12, __tok0) | Token(13, __tok0) | Token(14, __tok0) if true => __Symbol::Variant0(__tok0),
_ => unreachable!(),
},
_ => unreachable!(),
}
}
fn __simulate_reduce<
'input,
>(
__reduce_index: i8,
_: core::marker::PhantomData<(&'input ())>,
) -> __state_machine::SimulatedReduce<__StateMachine<'input>>
{
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: 0,
}
}
2 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 1,
}
}
3 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 2,
}
}
4 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 3,
}
}
5 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 3,
}
}
6 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 4,
}
}
7 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 4,
}
}
8 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 5,
}
}
9 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 6,
}
}
10 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 6,
}
}
11 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 7,
}
}
12 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 7,
}
}
13 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 8,
}
}
14 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 9,
}
}
15 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 9,
}
}
16 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 9,
}
}
17 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 9,
}
}
18 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 9,
}
}
19 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 10,
}
}
20 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 10,
}
}
21 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 10,
}
}
22 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 10,
}
}
23 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 10,
}
}
24 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 5,
nonterminal_produced: 11,
}
}
25 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 12,
}
}
26 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 13,
}
}
27 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 14,
}
}
28 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 15,
}
}
29 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 16,
}
}
30 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 16,
}
}
31 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 16,
}
}
32 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 17,
}
}
33 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 5,
nonterminal_produced: 18,
}
}
34 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 19,
}
}
35 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 20,
}
}
36 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 20,
}
}
37 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 21,
}
}
38 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 21,
}
}
39 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 22,
}
}
40 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 22,
}
}
41 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 4,
nonterminal_produced: 22,
}
}
42 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 5,
nonterminal_produced: 22,
}
}
43 => __state_machine::SimulatedReduce::Accept,
_ => panic!("invalid reduction index {__reduce_index}",)
}
}
pub struct MetaParser {
builder: __lalrpop_util::lexer::MatcherBuilder,
_priv: (),
}
impl Default for MetaParser { fn default() -> Self { Self::new() } }
impl MetaParser {
pub fn new() -> MetaParser {
let __builder = super::__intern_token::new_builder();
MetaParser {
builder: __builder,
_priv: (),
}
}
#[allow(dead_code)]
pub fn parse<
'input,
>(
&self,
input: &'input str,
) -> Result<(Vec<(String, EnumBody)>, Vec<(String, StructBody)>), __lalrpop_util::ParseError<usize, Token<'input>, &'static str>>
{
let mut __tokens = self.builder.matcher(input);
__state_machine::Parser::drive(
__StateMachine {
input,
__phantom: core::marker::PhantomData::<(&())>,
},
__tokens,
)
}
}
fn __accepts<
'input,
>(
__error_state: Option<i8>,
__states: &[i8],
__opt_integer: Option<usize>,
_: core::marker::PhantomData<(&'input ())>,
) -> 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<
'input,
>(
input: &'input str,
__action: i8,
__lookahead_start: Option<&usize>,
__states: &mut alloc::vec::Vec<i8>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> Option<Result<(Vec<(String, EnumBody)>, Vec<(String, StructBody)>),__lalrpop_util::ParseError<usize, Token<'input>, &'static str>>>
{
let (__pop_states, __nonterminal) = match __action {
0 => {
__reduce0(input, __lookahead_start, __symbols, core::marker::PhantomData::<(&())>)
}
1 => {
__reduce1(input, __lookahead_start, __symbols, core::marker::PhantomData::<(&())>)
}
2 => {
__reduce2(input, __lookahead_start, __symbols, core::marker::PhantomData::<(&())>)
}
3 => {
__reduce3(input, __lookahead_start, __symbols, core::marker::PhantomData::<(&())>)
}
4 => {
__reduce4(input, __lookahead_start, __symbols, core::marker::PhantomData::<(&())>)
}
5 => {
__reduce5(input, __lookahead_start, __symbols, core::marker::PhantomData::<(&())>)
}
6 => {
__reduce6(input, __lookahead_start, __symbols, core::marker::PhantomData::<(&())>)
}
7 => {
__reduce7(input, __lookahead_start, __symbols, core::marker::PhantomData::<(&())>)
}
8 => {
__reduce8(input, __lookahead_start, __symbols, core::marker::PhantomData::<(&())>)
}
9 => {
__reduce9(input, __lookahead_start, __symbols, core::marker::PhantomData::<(&())>)
}
10 => {
__reduce10(input, __lookahead_start, __symbols, core::marker::PhantomData::<(&())>)
}
11 => {
__reduce11(input, __lookahead_start, __symbols, core::marker::PhantomData::<(&())>)
}
12 => {
__reduce12(input, __lookahead_start, __symbols, core::marker::PhantomData::<(&())>)
}
13 => {
__reduce13(input, __lookahead_start, __symbols, core::marker::PhantomData::<(&())>)
}
14 => {
__reduce14(input, __lookahead_start, __symbols, core::marker::PhantomData::<(&())>)
}
15 => {
__reduce15(input, __lookahead_start, __symbols, core::marker::PhantomData::<(&())>)
}
16 => {
__reduce16(input, __lookahead_start, __symbols, core::marker::PhantomData::<(&())>)
}
17 => {
__reduce17(input, __lookahead_start, __symbols, core::marker::PhantomData::<(&())>)
}
18 => {
__reduce18(input, __lookahead_start, __symbols, core::marker::PhantomData::<(&())>)
}
19 => {
__reduce19(input, __lookahead_start, __symbols, core::marker::PhantomData::<(&())>)
}
20 => {
__reduce20(input, __lookahead_start, __symbols, core::marker::PhantomData::<(&())>)
}
21 => {
__reduce21(input, __lookahead_start, __symbols, core::marker::PhantomData::<(&())>)
}
22 => {
__reduce22(input, __lookahead_start, __symbols, core::marker::PhantomData::<(&())>)
}
23 => {
__reduce23(input, __lookahead_start, __symbols, core::marker::PhantomData::<(&())>)
}
24 => {
__reduce24(input, __lookahead_start, __symbols, core::marker::PhantomData::<(&())>)
}
25 => {
__reduce25(input, __lookahead_start, __symbols, core::marker::PhantomData::<(&())>)
}
26 => {
__reduce26(input, __lookahead_start, __symbols, core::marker::PhantomData::<(&())>)
}
27 => {
__reduce27(input, __lookahead_start, __symbols, core::marker::PhantomData::<(&())>)
}
28 => {
__reduce28(input, __lookahead_start, __symbols, core::marker::PhantomData::<(&())>)
}
29 => {
__reduce29(input, __lookahead_start, __symbols, core::marker::PhantomData::<(&())>)
}
30 => {
__reduce30(input, __lookahead_start, __symbols, core::marker::PhantomData::<(&())>)
}
31 => {
__reduce31(input, __lookahead_start, __symbols, core::marker::PhantomData::<(&())>)
}
32 => {
__reduce32(input, __lookahead_start, __symbols, core::marker::PhantomData::<(&())>)
}
33 => {
__reduce33(input, __lookahead_start, __symbols, core::marker::PhantomData::<(&())>)
}
34 => {
__reduce34(input, __lookahead_start, __symbols, core::marker::PhantomData::<(&())>)
}
35 => {
__reduce35(input, __lookahead_start, __symbols, core::marker::PhantomData::<(&())>)
}
36 => {
__reduce36(input, __lookahead_start, __symbols, core::marker::PhantomData::<(&())>)
}
37 => {
__reduce37(input, __lookahead_start, __symbols, core::marker::PhantomData::<(&())>)
}
38 => {
__reduce38(input, __lookahead_start, __symbols, core::marker::PhantomData::<(&())>)
}
39 => {
__reduce39(input, __lookahead_start, __symbols, core::marker::PhantomData::<(&())>)
}
40 => {
__reduce40(input, __lookahead_start, __symbols, core::marker::PhantomData::<(&())>)
}
41 => {
__reduce41(input, __lookahead_start, __symbols, core::marker::PhantomData::<(&())>)
}
42 => {
__reduce42(input, __lookahead_start, __symbols, core::marker::PhantomData::<(&())>)
}
43 => {
// __Meta = Meta => ActionFn(0);
let __sym0 = __pop_Variant12(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action0::<>(input, __sym0);
return Some(Ok(__nt));
}
_ => panic!("invalid action code {__action}")
};
let __states_len = __states.len();
__states.truncate(__states_len - __pop_states);
let __state = *__states.last().unwrap();
let __next_state = __goto(__state, __nonterminal);
__states.push(__next_state);
None
}
#[inline(never)]
fn __symbol_type_mismatch() -> ! {
panic!("symbol type mismatch")
}
fn __pop_Variant2<
'input,
>(
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>
) -> (usize, (), usize)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant2(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant14<
'input,
>(
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>
) -> (usize, (Option<(String, EnumBody)>, Option<(String, StructBody)>), usize)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant14(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant5<
'input,
>(
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>
) -> (usize, (String, BrdbStructPropRaw), usize)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant5(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant10<
'input,
>(
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>
) -> (usize, (String, EnumBody), usize)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant10(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant13<
'input,
>(
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>
) -> (usize, (String, StructBody), usize)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant13(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant3<
'input,
>(
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>
) -> (usize, (String, i32), usize)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant3(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant12<
'input,
>(
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>
) -> (usize, (Vec<(String, EnumBody)>, Vec<(String, StructBody)>), usize)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant12(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant16<
'input,
>(
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>
) -> (usize, BrdbStructPropRaw, usize)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant16(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant1<
'input,
>(
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>
) -> (usize, Option<&'input str>, usize)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant1(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant11<
'input,
>(
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>
) -> (usize, String, usize)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant11(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant9<
'input,
>(
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>
) -> (usize, Vec<(String, BrdbStructPropRaw)>, usize)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant9(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant8<
'input,
>(
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>
) -> (usize, Vec<(String, i32)>, usize)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant8(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant15<
'input,
>(
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>
) -> (usize, alloc::vec::Vec<(Option<(String, EnumBody)>, Option<(String, StructBody)>)>, usize)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant15(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant6<
'input,
>(
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>
) -> (usize, alloc::vec::Vec<(String, BrdbStructPropRaw)>, usize)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant6(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant4<
'input,
>(
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>
) -> (usize, alloc::vec::Vec<(String, i32)>, usize)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant4(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant7<
'input,
>(
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>
) -> (usize, i32, usize)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant7(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant0<
'input,
>(
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>
) -> (usize, &'input str, usize)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant0(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __reduce0<
'input,
>(
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize)
{
// ","? = "," => ActionFn(28);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action28::<>(input, __sym0);
__symbols.push((__start, __Symbol::Variant1(__nt), __end));
(1, 0)
}
fn __reduce1<
'input,
>(
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize)
{
// ","? = => ActionFn(29);
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2)).unwrap_or_default();
let __end = __start;
let __nt = super::__action29::<>(input, &__start, &__end);
__symbols.push((__start, __Symbol::Variant1(__nt), __end));
(0, 0)
}
fn __reduce2<
'input,
>(
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize)
{
// () = => ActionFn(33);
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2)).unwrap_or_default();
let __end = __start;
let __nt = super::__action33::<>(input, &__start, &__end);
__symbols.push((__start, __Symbol::Variant2(__nt), __end));
(0, 1)
}
fn __reduce3<
'input,
>(
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize)
{
// (<EnumVariant> ",") = EnumVariant, "," => ActionFn(27);
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant3(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action27::<>(input, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant3(__nt), __end));
(2, 2)
}
fn __reduce4<
'input,
>(
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize)
{
// (<EnumVariant> ",")* = => ActionFn(25);
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2)).unwrap_or_default();
let __end = __start;
let __nt = super::__action25::<>(input, &__start, &__end);
__symbols.push((__start, __Symbol::Variant4(__nt), __end));
(0, 3)
}
fn __reduce5<
'input,
>(
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize)
{
// (<EnumVariant> ",")* = (<EnumVariant> ",")+ => ActionFn(26);
let __sym0 = __pop_Variant4(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action26::<>(input, __sym0);
__symbols.push((__start, __Symbol::Variant4(__nt), __end));
(1, 3)
}
fn __reduce6<
'input,
>(
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize)
{
// (<EnumVariant> ",")+ = EnumVariant, "," => ActionFn(44);
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant3(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action44::<>(input, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant4(__nt), __end));
(2, 4)
}
fn __reduce7<
'input,
>(
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize)
{
// (<EnumVariant> ",")+ = (<EnumVariant> ",")+, EnumVariant, "," => ActionFn(45);
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant0(__symbols);
let __sym1 = __pop_Variant3(__symbols);
let __sym0 = __pop_Variant4(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action45::<>(input, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant4(__nt), __end));
(3, 4)
}
fn __reduce8<
'input,
>(
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize)
{
// (<StructField> ",") = StructField, "," => ActionFn(32);
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action32::<>(input, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(2, 5)
}
fn __reduce9<
'input,
>(
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize)
{
// (<StructField> ",")* = => ActionFn(30);
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2)).unwrap_or_default();
let __end = __start;
let __nt = super::__action30::<>(input, &__start, &__end);
__symbols.push((__start, __Symbol::Variant6(__nt), __end));
(0, 6)
}
fn __reduce10<
'input,
>(
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize)
{
// (<StructField> ",")* = (<StructField> ",")+ => ActionFn(31);
let __sym0 = __pop_Variant6(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action31::<>(input, __sym0);
__symbols.push((__start, __Symbol::Variant6(__nt), __end));
(1, 6)
}
fn __reduce11<
'input,
>(
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize)
{
// (<StructField> ",")+ = StructField, "," => ActionFn(50);
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action50::<>(input, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant6(__nt), __end));
(2, 7)
}
fn __reduce12<
'input,
>(
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize)
{
// (<StructField> ",")+ = (<StructField> ",")+, StructField, "," => ActionFn(51);
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant0(__symbols);
let __sym1 = __pop_Variant5(__symbols);
let __sym0 = __pop_Variant6(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action51::<>(input, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant6(__nt), __end));
(3, 7)
}
fn __reduce13<
'input,
>(
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize)
{
// Binary = r#"0b[01]+(_[01]+)*"# => ActionFn(10);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action10::<>(input, __sym0);
__symbols.push((__start, __Symbol::Variant7(__nt), __end));
(1, 8)
}
fn __reduce14<
'input,
>(
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize)
{
// Comma<EnumVariant> = => ActionFn(42);
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2)).unwrap_or_default();
let __end = __start;
let __nt = super::__action42::<>(input, &__start, &__end);
__symbols.push((__start, __Symbol::Variant8(__nt), __end));
(0, 9)
}
fn __reduce15<
'input,
>(
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize)
{
// Comma<EnumVariant> = EnumVariant, "," => ActionFn(46);
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant3(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action46::<>(input, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant8(__nt), __end));
(2, 9)
}
fn __reduce16<
'input,
>(
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize)
{
// Comma<EnumVariant> = (<EnumVariant> ",")+, EnumVariant, "," => ActionFn(47);
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant0(__symbols);
let __sym1 = __pop_Variant3(__symbols);
let __sym0 = __pop_Variant4(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action47::<>(input, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant8(__nt), __end));
(3, 9)
}
fn __reduce17<
'input,
>(
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize)
{
// Comma<EnumVariant> = EnumVariant => ActionFn(48);
let __sym0 = __pop_Variant3(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action48::<>(input, __sym0);
__symbols.push((__start, __Symbol::Variant8(__nt), __end));
(1, 9)
}
fn __reduce18<
'input,
>(
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize)
{
// Comma<EnumVariant> = (<EnumVariant> ",")+, EnumVariant => ActionFn(49);
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant3(__symbols);
let __sym0 = __pop_Variant4(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action49::<>(input, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant8(__nt), __end));
(2, 9)
}
fn __reduce19<
'input,
>(
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize)
{
// Comma<StructField> = => ActionFn(43);
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2)).unwrap_or_default();
let __end = __start;
let __nt = super::__action43::<>(input, &__start, &__end);
__symbols.push((__start, __Symbol::Variant9(__nt), __end));
(0, 10)
}
fn __reduce20<
'input,
>(
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize)
{
// Comma<StructField> = StructField, "," => ActionFn(52);
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action52::<>(input, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant9(__nt), __end));
(2, 10)
}
fn __reduce21<
'input,
>(
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize)
{
// Comma<StructField> = (<StructField> ",")+, StructField, "," => ActionFn(53);
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant0(__symbols);
let __sym1 = __pop_Variant5(__symbols);
let __sym0 = __pop_Variant6(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action53::<>(input, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant9(__nt), __end));
(3, 10)
}
fn __reduce22<
'input,
>(
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize)
{
// Comma<StructField> = StructField => ActionFn(54);
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action54::<>(input, __sym0);
__symbols.push((__start, __Symbol::Variant9(__nt), __end));
(1, 10)
}
fn __reduce23<
'input,
>(
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize)
{
// Comma<StructField> = (<StructField> ",")+, StructField => ActionFn(55);
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant5(__symbols);
let __sym0 = __pop_Variant6(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action55::<>(input, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant9(__nt), __end));
(2, 10)
}
fn __reduce24<
'input,
>(
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize)
{
// Enum = "enum", Ident, "{", Comma<EnumVariant>, "}" => ActionFn(4);
assert!(__symbols.len() >= 5);
let __sym4 = __pop_Variant0(__symbols);
let __sym3 = __pop_Variant8(__symbols);
let __sym2 = __pop_Variant0(__symbols);
let __sym1 = __pop_Variant11(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym4.2;
let __nt = super::__action4::<>(input, __sym0, __sym1, __sym2, __sym3, __sym4);
__symbols.push((__start, __Symbol::Variant10(__nt), __end));
(5, 11)
}
fn __reduce25<
'input,
>(
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize)
{
// EnumVariant = Ident, "=", Integer => ActionFn(5);
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant7(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant11(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action5::<>(input, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant3(__nt), __end));
(3, 12)
}
fn __reduce26<
'input,
>(
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize)
{
// Hex = r#"0x[0-9a-fA-F]+(_[0-9a-fA-F]+)*"# => ActionFn(11);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action11::<>(input, __sym0);
__symbols.push((__start, __Symbol::Variant7(__nt), __end));
(1, 13)
}
fn __reduce27<
'input,
>(
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize)
{
// I32 = r#"-?\\d+(_\\d+)*"# => ActionFn(9);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action9::<>(input, __sym0);
__symbols.push((__start, __Symbol::Variant7(__nt), __end));
(1, 14)
}
fn __reduce28<
'input,
>(
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize)
{
// Ident = r#"[a-zA-Z_](\\w|\\w::\\w)*"# => ActionFn(18);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action18::<>(input, __sym0);
__symbols.push((__start, __Symbol::Variant11(__nt), __end));
(1, 15)
}
fn __reduce29<
'input,
>(
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize)
{
// Integer = I32 => ActionFn(6);
let __sym0 = __pop_Variant7(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action6::<>(input, __sym0);
__symbols.push((__start, __Symbol::Variant7(__nt), __end));
(1, 16)
}
fn __reduce30<
'input,
>(
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize)
{
// Integer = Binary => ActionFn(7);
let __sym0 = __pop_Variant7(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action7::<>(input, __sym0);
__symbols.push((__start, __Symbol::Variant7(__nt), __end));
(1, 16)
}
fn __reduce31<
'input,
>(
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize)
{
// Integer = Hex => ActionFn(8);
let __sym0 = __pop_Variant7(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action8::<>(input, __sym0);
__symbols.push((__start, __Symbol::Variant7(__nt), __end));
(1, 16)
}
fn __reduce32<
'input,
>(
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize)
{
// Meta = StructOrEnum+ => ActionFn(1);
let __sym0 = __pop_Variant15(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action1::<>(input, __sym0);
__symbols.push((__start, __Symbol::Variant12(__nt), __end));
(1, 17)
}
fn __reduce33<
'input,
>(
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize)
{
// Struct = "struct", Ident, "{", Comma<StructField>, "}" => ActionFn(12);
assert!(__symbols.len() >= 5);
let __sym4 = __pop_Variant0(__symbols);
let __sym3 = __pop_Variant9(__symbols);
let __sym2 = __pop_Variant0(__symbols);
let __sym1 = __pop_Variant11(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym4.2;
let __nt = super::__action12::<>(input, __sym0, __sym1, __sym2, __sym3, __sym4);
__symbols.push((__start, __Symbol::Variant13(__nt), __end));
(5, 18)
}
fn __reduce34<
'input,
>(
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize)
{
// StructField = Ident, ":", StructProp => ActionFn(13);
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant16(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant11(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action13::<>(input, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(3, 19)
}
fn __reduce35<
'input,
>(
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize)
{
// StructOrEnum = Enum => ActionFn(2);
let __sym0 = __pop_Variant10(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action2::<>(input, __sym0);
__symbols.push((__start, __Symbol::Variant14(__nt), __end));
(1, 20)
}
fn __reduce36<
'input,
>(
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize)
{
// StructOrEnum = Struct => ActionFn(3);
let __sym0 = __pop_Variant13(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action3::<>(input, __sym0);
__symbols.push((__start, __Symbol::Variant14(__nt), __end));
(1, 20)
}
fn __reduce37<
'input,
>(
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize)
{
// StructOrEnum+ = StructOrEnum => ActionFn(23);
let __sym0 = __pop_Variant14(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action23::<>(input, __sym0);
__symbols.push((__start, __Symbol::Variant15(__nt), __end));
(1, 21)
}
fn __reduce38<
'input,
>(
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize)
{
// StructOrEnum+ = StructOrEnum+, StructOrEnum => ActionFn(24);
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant14(__symbols);
let __sym0 = __pop_Variant15(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action24::<>(input, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant15(__nt), __end));
(2, 21)
}
fn __reduce39<
'input,
>(
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize)
{
// StructProp = Ident => ActionFn(14);
let __sym0 = __pop_Variant11(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action14::<>(input, __sym0);
__symbols.push((__start, __Symbol::Variant16(__nt), __end));
(1, 22)
}
fn __reduce40<
'input,
>(
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize)
{
// StructProp = Ident, "[]" => ActionFn(15);
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant11(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action15::<>(input, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant16(__nt), __end));
(2, 22)
}
fn __reduce41<
'input,
>(
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize)
{
// StructProp = Ident, "[", "flat", "]" => ActionFn(16);
assert!(__symbols.len() >= 4);
let __sym3 = __pop_Variant0(__symbols);
let __sym2 = __pop_Variant0(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant11(__symbols);
let __start = __sym0.0;
let __end = __sym3.2;
let __nt = super::__action16::<>(input, __sym0, __sym1, __sym2, __sym3);
__symbols.push((__start, __Symbol::Variant16(__nt), __end));
(4, 22)
}
fn __reduce42<
'input,
>(
input: &'input str,
__lookahead_start: Option<&usize>,
__symbols: &mut alloc::vec::Vec<(usize,__Symbol<'input>,usize)>,
_: core::marker::PhantomData<(&'input ())>,
) -> (usize, usize)
{
// StructProp = "{", Ident, ":", Ident, "}" => ActionFn(17);
assert!(__symbols.len() >= 5);
let __sym4 = __pop_Variant0(__symbols);
let __sym3 = __pop_Variant11(__symbols);
let __sym2 = __pop_Variant0(__symbols);
let __sym1 = __pop_Variant11(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym4.2;
let __nt = super::__action17::<>(input, __sym0, __sym1, __sym2, __sym3, __sym4);
__symbols.push((__start, __Symbol::Variant16(__nt), __end));
(5, 22)
}
}
#[allow(unused_imports)]
pub use self::__parse__Meta::MetaParser;
#[rustfmt::skip]
mod __intern_token {
#![allow(unused_imports)]
use crate::schema::{BrdbStructPropRaw, PlaintextEnumBody as EnumBody, PlaintextStructBody as StructBody};
use crate::bearilog::helpers::*;
#[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;
pub fn new_builder() -> __lalrpop_util::lexer::MatcherBuilder {
let __strs: &[(&str, bool)] = &[
("(?:\\-?[0-9٠-٩۰-۹߀-߉०-९০-৯੦-੯૦-૯୦-୯௦-௯౦-౯೦-೯൦-൯෦-෯๐-๙໐-໙༠-༩၀-၉႐-႙០-៩᠐-᠙᥆-᥏᧐-᧙᪀-᪉᪐-᪙᭐-᭙᮰-᮹᱀-᱉᱐-᱙꘠-꘩꣐-꣙꤀-꤉꧐-꧙꧰-꧹꩐-꩙꯰-꯹0-9𐒠-𐒩𐴰-𐴹-𑁦-𑁯𑃰-𑃹𑄶-𑄿𑇐-𑇙𑋰-𑋹𑑐-𑑙𑓐-𑓙𑙐-𑙙𑛀-𑛉-𑜰-𑜹𑣠-𑣩𑥐-𑥙-𑱐-𑱙𑵐-𑵙𑶠-𑶩𑽐-𑽙-𖩠-𖩩𖫀-𖫉𖭐-𖭙--𝟎-𝟿𞅀-𞅉𞋰-𞋹𞓰-𞓹-𞥐-𞥙🯰-🯹]+((?:_[0-9٠-٩۰-۹߀-߉०-९০-৯੦-੯૦-૯୦-୯௦-௯౦-౯೦-೯൦-൯෦-෯๐-๙໐-໙༠-༩၀-၉႐-႙០-៩᠐-᠙᥆-᥏᧐-᧙᪀-᪉᪐-᪙᭐-᭙᮰-᮹᱀-᱉᱐-᱙꘠-꘩꣐-꣙꤀-꤉꧐-꧙꧰-꧹꩐-꩙꯰-꯹0-9𐒠-𐒩𐴰-𐴹-𑁦-𑁯𑃰-𑃹𑄶-𑄿𑇐-𑇙𑋰-𑋹𑑐-𑑙𑓐-𑓙𑙐-𑙙𑛀-𑛉-𑜰-𑜹𑣠-𑣩𑥐-𑥙-𑱐-𑱙𑵐-𑵙𑶠-𑶩𑽐-𑽙-𖩠-𖩩𖫀-𖫉𖭐-𖭙--𝟎-𝟿𞅀-𞅉𞋰-𞋹𞓰-𞓹-𞥐-𞥙🯰-🯹]+))*)", false),
("(?:(?:0b)[01]+((?:_[01]+))*)", false),
("(?:(?:0x)[0-9A-Fa-f]+((?:_[0-9A-Fa-f]+))*)", false),
("(?:[A-Z_a-z]((?:[0-9A-Z_a-zªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮ\u{300}-ʹͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁ\u{483}-ԯԱ-Ֆՙՠ-ֈ\u{591}-\u{5bd}\u{5bf}\u{5c1}\u{5c2}\u{5c4}\u{5c5}\u{5c7}א-תׯ-ײ\u{610}-\u{61a}ؠ-٩ٮ-ۓە-\u{6dc}\u{6df}-\u{6e8}\u{6ea}-ۼۿܐ-\u{74a}ݍ-ޱ߀-ߵߺ\u{7fd}ࠀ-\u{82d}ࡀ-\u{85b}ࡠ-ࡪࡰ-ࢇࢉ-ࢎ\u{897}-\u{8e1}\u{8e3}-\u{963}०-९ॱ-ঃঅ-ঌএঐও-নপ-রলশ-হ\u{9bc}-\u{9c4}েৈো-ৎ\u{9d7}ড়ঢ়য়-\u{9e3}০-ৱৼ\u{9fe}\u{a01}-ਃਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹ\u{a3c}ਾ-\u{a42}\u{a47}\u{a48}\u{a4b}-\u{a4d}\u{a51}ਖ਼-ੜਫ਼੦-\u{a75}\u{a81}-ઃઅ-ઍએ-ઑઓ-નપ-રલળવ-હ\u{abc}-\u{ac5}\u{ac7}-ૉો-\u{acd}ૐૠ-\u{ae3}૦-૯ૹ-\u{aff}\u{b01}-ଃଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହ\u{b3c}-\u{b44}େୈୋ-\u{b4d}\u{b55}-\u{b57}ଡ଼ଢ଼ୟ-\u{b63}୦-୯ୱ\u{b82}ஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹ\u{bbe}-ூெ-ைொ-\u{bcd}ௐ\u{bd7}௦-௯\u{c00}-ఌఎ-ఐఒ-నప-హ\u{c3c}-ౄ\u{c46}-\u{c48}\u{c4a}-\u{c4d}\u{c55}\u{c56}ౘ-ౚౝౠ-\u{c63}౦-౯ಀ-ಃಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹ\u{cbc}-ೄ\u{cc6}-\u{cc8}\u{cca}-\u{ccd}\u{cd5}\u{cd6}ೝೞೠ-\u{ce3}೦-೯ೱ-ೳ\u{d00}-ഌഎ-ഐഒ-\u{d44}െ-ൈൊ-ൎൔ-\u{d57}ൟ-\u{d63}൦-൯ൺ-ൿ\u{d81}-ඃඅ-ඖක-නඳ-රලව-ෆ\u{dca}\u{dcf}-\u{dd4}\u{dd6}ෘ-\u{ddf}෦-෯ෲෳก-\u{e3a}เ-\u{e4e}๐-๙ກຂຄຆ-ຊຌ-ຣລວ-ຽເ-ໄໆ\u{ec8}-\u{ece}໐-໙ໜ-ໟༀ\u{f18}\u{f19}༠-༩\u{f35}\u{f37}\u{f39}༾-ཇཉ-ཬ\u{f71}-\u{f84}\u{f86}-\u{f97}\u{f99}-\u{fbc}\u{fc6}က-၉ၐ-\u{109d}Ⴀ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚ\u{135d}-\u{135f}ᎀ-ᎏᎠ-Ᏽᏸ-ᏽᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛮ-ᛸᜀ-\u{1715}ᜟ-\u{1734}ᝀ-\u{1753}ᝠ-ᝬᝮ-ᝰ\u{1772}\u{1773}ក-\u{17d3}ៗៜ\u{17dd}០-៩\u{180b}-\u{180d}\u{180f}-᠙ᠠ-ᡸᢀ-ᢪᢰ-ᣵᤀ-ᤞ\u{1920}-ᤫᤰ-\u{193b}᥆-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉ᧐-᧙ᨀ-\u{1a1b}ᨠ-\u{1a5e}\u{1a60}-\u{1a7c}\u{1a7f}-᪉᪐-᪙ᪧ\u{1ab0}-\u{1ace}\u{1b00}-ᭌ᭐-᭙\u{1b6b}-\u{1b73}\u{1b80}-\u{1bf3}ᰀ-\u{1c37}᱀-᱉ᱍ-ᱽᲀ-Ა-ᲺᲽ-Ჿ\u{1cd0}-\u{1cd2}\u{1cd4}-ᳺᴀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼ\u{200c}\u{200d}‿⁀⁔ⁱⁿₐ-ₜ\u{20d0}-\u{20f0}ℂℇℊ-ℓℕℙ-ℝℤΩℨK-ℭℯ-ℹℼ-ℿⅅ-ⅉⅎⅠ-ↈⒶ-ⓩⰀ-ⳤⳫ-ⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯ\u{2d7f}-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞ\u{2de0}-\u{2dff}ⸯ々-〇〡-\u{302f}〱-〵〸-〼ぁ-ゖ\u{3099}\u{309a}ゝ-ゟァ-ヺー-ヿㄅ-ㄯㄱ-ㆎㆠ-ㆿㇰ-ㇿ㐀-䶿一-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘫꙀ-\u{a672}\u{a674}-\u{a67d}ꙿ-\u{a6f1}ꜗ-ꜟꜢ-ꞈꞋ-Ꟑꟑꟓꟕ-ꟲ-ꠧ\u{a82c}ꡀ-ꡳꢀ-\u{a8c5}꣐-꣙\u{a8e0}-ꣷꣻꣽ-\u{a92d}ꤰ-\u{a953}ꥠ-ꥼ\u{a980}-\u{a9c0}ꧏ-꧙ꧠ-ꧾꨀ-\u{aa36}ꩀ-ꩍ꩐-꩙ꩠ-ꩶꩺ-ꫂꫛ-ꫝꫠ-ꫯꫲ-\u{aaf6}ꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭚꭜ-ꭩꭰ-ꯪ꯬\u{abed}꯰-꯹가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻ\u{fe00}-\u{fe0f}\u{fe20}-\u{fe2f}︳︴﹍-﹏ﹰ-ﹴﹶ-ﻼ0-9A-Z_a-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ𐀀-𐀋𐀍-𐀦𐀨-𐀺𐀼𐀽𐀿-𐁍𐁐-𐁝𐂀-𐃺𐅀-𐅴\u{101fd}𐊀-𐊜𐊠-𐋐\u{102e0}𐌀-𐌟𐌭-𐍊𐍐-\u{1037a}𐎀-𐎝𐎠-𐏃𐏈-𐏏𐏑-𐏕𐐀-𐒝𐒠-𐒩𐒰-𐓓𐓘-𐓻𐔀-𐔧𐔰-𐕣𐕰-𐕺𐕼-𐖊𐖌-𐖒𐖔𐖕𐖗-𐖡𐖣-𐖱𐖳-𐖹𐖻𐖼-𐘀-𐜶𐝀-𐝕𐝠-𐝧𐞀-𐞅𐞇-𐞰𐞲-𐞺𐠀-𐠅𐠈𐠊-𐠵𐠷𐠸𐠼𐠿-𐡕𐡠-𐡶𐢀-𐢞𐣠-𐣲𐣴𐣵𐤀-𐤕𐤠-𐤹𐦀-𐦷𐦾𐦿𐨀-\u{10a03}\u{10a05}\u{10a06}\u{10a0c}-𐨓𐨕-𐨗𐨙-𐨵\u{10a38}-\u{10a3a}\u{10a3f}𐩠-𐩼𐪀-𐪜𐫀-𐫇𐫉-\u{10ae6}𐬀-𐬵𐭀-𐭕𐭠-𐭲𐮀-𐮑𐰀-𐱈𐲀-𐲲𐳀-𐳲𐴀-\u{10d27}𐴰-𐴹-\u{10d69}-\u{10d6d}-𐺀-𐺩\u{10eab}\u{10eac}𐺰𐺱-\u{10efc}-𐼜𐼧𐼰-\u{10f50}𐽰-\u{10f85}𐾰-𐿄𐿠-𐿶𑀀-\u{11046}𑁦-𑁵\u{1107f}-\u{110ba}\u{110c2}𑃐-𑃨𑃰-𑃹\u{11100}-\u{11134}𑄶-𑄿𑅄-𑅇𑅐-\u{11173}𑅶\u{11180}-𑇄\u{111c9}-\u{111cc}𑇎-𑇚𑇜𑈀-𑈑𑈓-\u{11237}\u{1123e}-\u{11241}𑊀-𑊆𑊈𑊊-𑊍𑊏-𑊝𑊟-𑊨𑊰-\u{112ea}𑋰-𑋹\u{11300}-𑌃𑌅-𑌌𑌏𑌐𑌓-𑌨𑌪-𑌰𑌲𑌳𑌵-𑌹\u{1133b}-𑍄𑍇𑍈𑍋-\u{1134d}𑍐\u{11357}𑍝-𑍣\u{11366}-\u{1136c}\u{11370}-\u{11374}---\u{113c0}\u{113c2}\u{113c5}\u{113c7}--\u{113e1}\u{113e2}𑐀-𑑊𑑐-𑑙\u{1145e}-𑑡𑒀-𑓅𑓇𑓐-𑓙𑖀-\u{115b5}𑖸-\u{115c0}𑗘-\u{115dd}𑘀-\u{11640}𑙄𑙐-𑙙𑚀-𑚸𑛀-𑛉-𑜀-𑜚\u{1171d}-\u{1172b}𑜰-𑜹𑝀-𑝆𑠀-\u{1183a}𑢠-𑣩𑣿-𑤆𑤉𑤌-𑤓𑤕𑤖𑤘-𑤵𑤷𑤸\u{1193b}-\u{11943}𑥐-𑥙𑦠-𑦧𑦪-\u{119d7}\u{119da}-𑧡𑧣𑧤𑨀-\u{11a3e}\u{11a47}𑩐-\u{11a99}𑪝𑪰-𑫸--𑰀-𑰈𑰊-\u{11c36}\u{11c38}-𑱀𑱐-𑱙𑱲-𑲏\u{11c92}-\u{11ca7}𑲩-\u{11cb6}𑴀-𑴆𑴈𑴉𑴋-\u{11d36}\u{11d3a}\u{11d3c}\u{11d3d}\u{11d3f}-\u{11d47}𑵐-𑵙𑵠-𑵥𑵧𑵨𑵪-𑶎\u{11d90}\u{11d91}𑶓-𑶘𑶠-𑶩𑻠-𑻶\u{11f00}-𑼐𑼒-\u{11f3a}𑼾-\u{11f42}𑽐-\u{11f5a}𑾰𒀀-𒎙𒐀-𒑮𒒀-𒕃𒾐-𒿰𓀀-𓐯\u{13440}-\u{13455}-𔐀-𔙆-𖠀-𖨸𖩀-𖩞𖩠-𖩩𖩰-𖪾𖫀-𖫉𖫐-𖫭\u{16af0}-\u{16af4}𖬀-\u{16b36}𖭀-𖭃𖭐-𖭙𖭣-𖭷𖭽-𖮏--𖹀-𖹿𖼀-𖽊\u{16f4f}-𖾇\u{16f8f}-𖾟𖿠𖿡𖿣\u{16fe4}\u{16ff0}\u{16ff1}𗀀-𘟷𘠀-𘳕-𘴈𚿰-𚿳𚿵-𚿻𚿽𚿾𛀀-𛄢𛄲𛅐-𛅒𛅕𛅤-𛅧𛅰-𛋻𛰀-𛱪𛱰-𛱼𛲀-𛲈𛲐-𛲙\u{1bc9d}\u{1bc9e}-\u{1cf00}-\u{1cf2d}\u{1cf30}-\u{1cf46}\u{1d165}-\u{1d169}\u{1d16d}-\u{1d172}\u{1d17b}-\u{1d182}\u{1d185}-\u{1d18b}\u{1d1aa}-\u{1d1ad}\u{1d242}-\u{1d244}𝐀-𝑔𝑖-𝒜𝒞𝒟𝒢𝒥𝒦𝒩-𝒬𝒮-𝒹𝒻𝒽-𝓃𝓅-𝔅𝔇-𝔊𝔍-𝔔𝔖-𝔜𝔞-𝔹𝔻-𝔾𝕀-𝕄𝕆𝕊-𝕐𝕒-𝚥𝚨-𝛀𝛂-𝛚𝛜-𝛺𝛼-𝜔𝜖-𝜴𝜶-𝝎𝝐-𝝮𝝰-𝞈𝞊-𝞨𝞪-𝟂𝟄-𝟋𝟎-𝟿\u{1da00}-\u{1da36}\u{1da3b}-\u{1da6c}\u{1da75}\u{1da84}\u{1da9b}-\u{1da9f}\u{1daa1}-\u{1daaf}𝼀-𝼞𝼥-𝼪\u{1e000}-\u{1e006}\u{1e008}-\u{1e018}\u{1e01b}-\u{1e021}\u{1e023}\u{1e024}\u{1e026}-\u{1e02a}𞀰-𞁭\u{1e08f}𞄀-𞄬\u{1e130}-𞄽𞅀-𞅉𞅎𞊐-\u{1e2ae}𞋀-𞋹𞓐-𞓹-𞟠-𞟦𞟨-𞟫𞟭𞟮𞟰-𞟾𞠀-𞣄\u{1e8d0}-\u{1e8d6}𞤀-𞥋𞥐-𞥙𞸀-𞸃𞸅-𞸟𞸡𞸢𞸤𞸧𞸩-𞸲𞸴-𞸷𞸹𞸻𞹂𞹇𞹉𞹋𞹍-𞹏𞹑𞹒𞹔𞹗𞹙𞹛𞹝𞹟𞹡𞹢𞹤𞹧-𞹪𞹬-𞹲𞹴-𞹷𞹹-𞹼𞹾𞺀-𞺉𞺋-𞺛𞺡-𞺣𞺥-𞺩𞺫-𞺻🄰-🅉🅐-🅩🅰-🆉🯰-🯹𠀀-𪛟𪜀-𫜹𫝀-𫠝𫠠-𬺡𬺰-𮯠-丽-𪘀𰀀-𱍊𱍐-𲎯\u{e0100}-\u{e01ef}]|(?:[0-9A-Z_a-zªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮ\u{300}-ʹͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁ\u{483}-ԯԱ-Ֆՙՠ-ֈ\u{591}-\u{5bd}\u{5bf}\u{5c1}\u{5c2}\u{5c4}\u{5c5}\u{5c7}א-תׯ-ײ\u{610}-\u{61a}ؠ-٩ٮ-ۓە-\u{6dc}\u{6df}-\u{6e8}\u{6ea}-ۼۿܐ-\u{74a}ݍ-ޱ߀-ߵߺ\u{7fd}ࠀ-\u{82d}ࡀ-\u{85b}ࡠ-ࡪࡰ-ࢇࢉ-ࢎ\u{897}-\u{8e1}\u{8e3}-\u{963}०-९ॱ-ঃঅ-ঌএঐও-নপ-রলশ-হ\u{9bc}-\u{9c4}েৈো-ৎ\u{9d7}ড়ঢ়য়-\u{9e3}০-ৱৼ\u{9fe}\u{a01}-ਃਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹ\u{a3c}ਾ-\u{a42}\u{a47}\u{a48}\u{a4b}-\u{a4d}\u{a51}ਖ਼-ੜਫ਼੦-\u{a75}\u{a81}-ઃઅ-ઍએ-ઑઓ-નપ-રલળવ-હ\u{abc}-\u{ac5}\u{ac7}-ૉો-\u{acd}ૐૠ-\u{ae3}૦-૯ૹ-\u{aff}\u{b01}-ଃଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହ\u{b3c}-\u{b44}େୈୋ-\u{b4d}\u{b55}-\u{b57}ଡ଼ଢ଼ୟ-\u{b63}୦-୯ୱ\u{b82}ஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹ\u{bbe}-ூெ-ைொ-\u{bcd}ௐ\u{bd7}௦-௯\u{c00}-ఌఎ-ఐఒ-నప-హ\u{c3c}-ౄ\u{c46}-\u{c48}\u{c4a}-\u{c4d}\u{c55}\u{c56}ౘ-ౚౝౠ-\u{c63}౦-౯ಀ-ಃಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹ\u{cbc}-ೄ\u{cc6}-\u{cc8}\u{cca}-\u{ccd}\u{cd5}\u{cd6}ೝೞೠ-\u{ce3}೦-೯ೱ-ೳ\u{d00}-ഌഎ-ഐഒ-\u{d44}െ-ൈൊ-ൎൔ-\u{d57}ൟ-\u{d63}൦-൯ൺ-ൿ\u{d81}-ඃඅ-ඖක-නඳ-රලව-ෆ\u{dca}\u{dcf}-\u{dd4}\u{dd6}ෘ-\u{ddf}෦-෯ෲෳก-\u{e3a}เ-\u{e4e}๐-๙ກຂຄຆ-ຊຌ-ຣລວ-ຽເ-ໄໆ\u{ec8}-\u{ece}໐-໙ໜ-ໟༀ\u{f18}\u{f19}༠-༩\u{f35}\u{f37}\u{f39}༾-ཇཉ-ཬ\u{f71}-\u{f84}\u{f86}-\u{f97}\u{f99}-\u{fbc}\u{fc6}က-၉ၐ-\u{109d}Ⴀ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚ\u{135d}-\u{135f}ᎀ-ᎏᎠ-Ᏽᏸ-ᏽᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛮ-ᛸᜀ-\u{1715}ᜟ-\u{1734}ᝀ-\u{1753}ᝠ-ᝬᝮ-ᝰ\u{1772}\u{1773}ក-\u{17d3}ៗៜ\u{17dd}០-៩\u{180b}-\u{180d}\u{180f}-᠙ᠠ-ᡸᢀ-ᢪᢰ-ᣵᤀ-ᤞ\u{1920}-ᤫᤰ-\u{193b}᥆-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉ᧐-᧙ᨀ-\u{1a1b}ᨠ-\u{1a5e}\u{1a60}-\u{1a7c}\u{1a7f}-᪉᪐-᪙ᪧ\u{1ab0}-\u{1ace}\u{1b00}-ᭌ᭐-᭙\u{1b6b}-\u{1b73}\u{1b80}-\u{1bf3}ᰀ-\u{1c37}᱀-᱉ᱍ-ᱽᲀ-Ა-ᲺᲽ-Ჿ\u{1cd0}-\u{1cd2}\u{1cd4}-ᳺᴀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼ\u{200c}\u{200d}‿⁀⁔ⁱⁿₐ-ₜ\u{20d0}-\u{20f0}ℂℇℊ-ℓℕℙ-ℝℤΩℨK-ℭℯ-ℹℼ-ℿⅅ-ⅉⅎⅠ-ↈⒶ-ⓩⰀ-ⳤⳫ-ⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯ\u{2d7f}-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞ\u{2de0}-\u{2dff}ⸯ々-〇〡-\u{302f}〱-〵〸-〼ぁ-ゖ\u{3099}\u{309a}ゝ-ゟァ-ヺー-ヿㄅ-ㄯㄱ-ㆎㆠ-ㆿㇰ-ㇿ㐀-䶿一-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘫꙀ-\u{a672}\u{a674}-\u{a67d}ꙿ-\u{a6f1}ꜗ-ꜟꜢ-ꞈꞋ-Ꟑꟑꟓꟕ-ꟲ-ꠧ\u{a82c}ꡀ-ꡳꢀ-\u{a8c5}꣐-꣙\u{a8e0}-ꣷꣻꣽ-\u{a92d}ꤰ-\u{a953}ꥠ-ꥼ\u{a980}-\u{a9c0}ꧏ-꧙ꧠ-ꧾꨀ-\u{aa36}ꩀ-ꩍ꩐-꩙ꩠ-ꩶꩺ-ꫂꫛ-ꫝꫠ-ꫯꫲ-\u{aaf6}ꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭚꭜ-ꭩꭰ-ꯪ꯬\u{abed}꯰-꯹가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻ\u{fe00}-\u{fe0f}\u{fe20}-\u{fe2f}︳︴﹍-﹏ﹰ-ﹴﹶ-ﻼ0-9A-Z_a-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ𐀀-𐀋𐀍-𐀦𐀨-𐀺𐀼𐀽𐀿-𐁍𐁐-𐁝𐂀-𐃺𐅀-𐅴\u{101fd}𐊀-𐊜𐊠-𐋐\u{102e0}𐌀-𐌟𐌭-𐍊𐍐-\u{1037a}𐎀-𐎝𐎠-𐏃𐏈-𐏏𐏑-𐏕𐐀-𐒝𐒠-𐒩𐒰-𐓓𐓘-𐓻𐔀-𐔧𐔰-𐕣𐕰-𐕺𐕼-𐖊𐖌-𐖒𐖔𐖕𐖗-𐖡𐖣-𐖱𐖳-𐖹𐖻𐖼-𐘀-𐜶𐝀-𐝕𐝠-𐝧𐞀-𐞅𐞇-𐞰𐞲-𐞺𐠀-𐠅𐠈𐠊-𐠵𐠷𐠸𐠼𐠿-𐡕𐡠-𐡶𐢀-𐢞𐣠-𐣲𐣴𐣵𐤀-𐤕𐤠-𐤹𐦀-𐦷𐦾𐦿𐨀-\u{10a03}\u{10a05}\u{10a06}\u{10a0c}-𐨓𐨕-𐨗𐨙-𐨵\u{10a38}-\u{10a3a}\u{10a3f}𐩠-𐩼𐪀-𐪜𐫀-𐫇𐫉-\u{10ae6}𐬀-𐬵𐭀-𐭕𐭠-𐭲𐮀-𐮑𐰀-𐱈𐲀-𐲲𐳀-𐳲𐴀-\u{10d27}𐴰-𐴹-\u{10d69}-\u{10d6d}-𐺀-𐺩\u{10eab}\u{10eac}𐺰𐺱-\u{10efc}-𐼜𐼧𐼰-\u{10f50}𐽰-\u{10f85}𐾰-𐿄𐿠-𐿶𑀀-\u{11046}𑁦-𑁵\u{1107f}-\u{110ba}\u{110c2}𑃐-𑃨𑃰-𑃹\u{11100}-\u{11134}𑄶-𑄿𑅄-𑅇𑅐-\u{11173}𑅶\u{11180}-𑇄\u{111c9}-\u{111cc}𑇎-𑇚𑇜𑈀-𑈑𑈓-\u{11237}\u{1123e}-\u{11241}𑊀-𑊆𑊈𑊊-𑊍𑊏-𑊝𑊟-𑊨𑊰-\u{112ea}𑋰-𑋹\u{11300}-𑌃𑌅-𑌌𑌏𑌐𑌓-𑌨𑌪-𑌰𑌲𑌳𑌵-𑌹\u{1133b}-𑍄𑍇𑍈𑍋-\u{1134d}𑍐\u{11357}𑍝-𑍣\u{11366}-\u{1136c}\u{11370}-\u{11374}---\u{113c0}\u{113c2}\u{113c5}\u{113c7}--\u{113e1}\u{113e2}𑐀-𑑊𑑐-𑑙\u{1145e}-𑑡𑒀-𑓅𑓇𑓐-𑓙𑖀-\u{115b5}𑖸-\u{115c0}𑗘-\u{115dd}𑘀-\u{11640}𑙄𑙐-𑙙𑚀-𑚸𑛀-𑛉-𑜀-𑜚\u{1171d}-\u{1172b}𑜰-𑜹𑝀-𑝆𑠀-\u{1183a}𑢠-𑣩𑣿-𑤆𑤉𑤌-𑤓𑤕𑤖𑤘-𑤵𑤷𑤸\u{1193b}-\u{11943}𑥐-𑥙𑦠-𑦧𑦪-\u{119d7}\u{119da}-𑧡𑧣𑧤𑨀-\u{11a3e}\u{11a47}𑩐-\u{11a99}𑪝𑪰-𑫸--𑰀-𑰈𑰊-\u{11c36}\u{11c38}-𑱀𑱐-𑱙𑱲-𑲏\u{11c92}-\u{11ca7}𑲩-\u{11cb6}𑴀-𑴆𑴈𑴉𑴋-\u{11d36}\u{11d3a}\u{11d3c}\u{11d3d}\u{11d3f}-\u{11d47}𑵐-𑵙𑵠-𑵥𑵧𑵨𑵪-𑶎\u{11d90}\u{11d91}𑶓-𑶘𑶠-𑶩𑻠-𑻶\u{11f00}-𑼐𑼒-\u{11f3a}𑼾-\u{11f42}𑽐-\u{11f5a}𑾰𒀀-𒎙𒐀-𒑮𒒀-𒕃𒾐-𒿰𓀀-𓐯\u{13440}-\u{13455}-𔐀-𔙆-𖠀-𖨸𖩀-𖩞𖩠-𖩩𖩰-𖪾𖫀-𖫉𖫐-𖫭\u{16af0}-\u{16af4}𖬀-\u{16b36}𖭀-𖭃𖭐-𖭙𖭣-𖭷𖭽-𖮏--𖹀-𖹿𖼀-𖽊\u{16f4f}-𖾇\u{16f8f}-𖾟𖿠𖿡𖿣\u{16fe4}\u{16ff0}\u{16ff1}𗀀-𘟷𘠀-𘳕-𘴈𚿰-𚿳𚿵-𚿻𚿽𚿾𛀀-𛄢𛄲𛅐-𛅒𛅕𛅤-𛅧𛅰-𛋻𛰀-𛱪𛱰-𛱼𛲀-𛲈𛲐-𛲙\u{1bc9d}\u{1bc9e}-\u{1cf00}-\u{1cf2d}\u{1cf30}-\u{1cf46}\u{1d165}-\u{1d169}\u{1d16d}-\u{1d172}\u{1d17b}-\u{1d182}\u{1d185}-\u{1d18b}\u{1d1aa}-\u{1d1ad}\u{1d242}-\u{1d244}𝐀-𝑔𝑖-𝒜𝒞𝒟𝒢𝒥𝒦𝒩-𝒬𝒮-𝒹𝒻𝒽-𝓃𝓅-𝔅𝔇-𝔊𝔍-𝔔𝔖-𝔜𝔞-𝔹𝔻-𝔾𝕀-𝕄𝕆𝕊-𝕐𝕒-𝚥𝚨-𝛀𝛂-𝛚𝛜-𝛺𝛼-𝜔𝜖-𝜴𝜶-𝝎𝝐-𝝮𝝰-𝞈𝞊-𝞨𝞪-𝟂𝟄-𝟋𝟎-𝟿\u{1da00}-\u{1da36}\u{1da3b}-\u{1da6c}\u{1da75}\u{1da84}\u{1da9b}-\u{1da9f}\u{1daa1}-\u{1daaf}𝼀-𝼞𝼥-𝼪\u{1e000}-\u{1e006}\u{1e008}-\u{1e018}\u{1e01b}-\u{1e021}\u{1e023}\u{1e024}\u{1e026}-\u{1e02a}𞀰-𞁭\u{1e08f}𞄀-𞄬\u{1e130}-𞄽𞅀-𞅉𞅎𞊐-\u{1e2ae}𞋀-𞋹𞓐-𞓹-𞟠-𞟦𞟨-𞟫𞟭𞟮𞟰-𞟾𞠀-𞣄\u{1e8d0}-\u{1e8d6}𞤀-𞥋𞥐-𞥙𞸀-𞸃𞸅-𞸟𞸡𞸢𞸤𞸧𞸩-𞸲𞸴-𞸷𞸹𞸻𞹂𞹇𞹉𞹋𞹍-𞹏𞹑𞹒𞹔𞹗𞹙𞹛𞹝𞹟𞹡𞹢𞹤𞹧-𞹪𞹬-𞹲𞹴-𞹷𞹹-𞹼𞹾𞺀-𞺉𞺋-𞺛𞺡-𞺣𞺥-𞺩𞺫-𞺻🄰-🅉🅐-🅩🅰-🆉🯰-🯹𠀀-𪛟𪜀-𫜹𫝀-𫠝𫠠-𬺡𬺰-𮯠-丽-𪘀𰀀-𱍊𱍐-𲎯\u{e0100}-\u{e01ef}](?:::)[0-9A-Z_a-zªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮ\u{300}-ʹͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁ\u{483}-ԯԱ-Ֆՙՠ-ֈ\u{591}-\u{5bd}\u{5bf}\u{5c1}\u{5c2}\u{5c4}\u{5c5}\u{5c7}א-תׯ-ײ\u{610}-\u{61a}ؠ-٩ٮ-ۓە-\u{6dc}\u{6df}-\u{6e8}\u{6ea}-ۼۿܐ-\u{74a}ݍ-ޱ߀-ߵߺ\u{7fd}ࠀ-\u{82d}ࡀ-\u{85b}ࡠ-ࡪࡰ-ࢇࢉ-ࢎ\u{897}-\u{8e1}\u{8e3}-\u{963}०-९ॱ-ঃঅ-ঌএঐও-নপ-রলশ-হ\u{9bc}-\u{9c4}েৈো-ৎ\u{9d7}ড়ঢ়য়-\u{9e3}০-ৱৼ\u{9fe}\u{a01}-ਃਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹ\u{a3c}ਾ-\u{a42}\u{a47}\u{a48}\u{a4b}-\u{a4d}\u{a51}ਖ਼-ੜਫ਼੦-\u{a75}\u{a81}-ઃઅ-ઍએ-ઑઓ-નપ-રલળવ-હ\u{abc}-\u{ac5}\u{ac7}-ૉો-\u{acd}ૐૠ-\u{ae3}૦-૯ૹ-\u{aff}\u{b01}-ଃଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହ\u{b3c}-\u{b44}େୈୋ-\u{b4d}\u{b55}-\u{b57}ଡ଼ଢ଼ୟ-\u{b63}୦-୯ୱ\u{b82}ஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹ\u{bbe}-ூெ-ைொ-\u{bcd}ௐ\u{bd7}௦-௯\u{c00}-ఌఎ-ఐఒ-నప-హ\u{c3c}-ౄ\u{c46}-\u{c48}\u{c4a}-\u{c4d}\u{c55}\u{c56}ౘ-ౚౝౠ-\u{c63}౦-౯ಀ-ಃಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹ\u{cbc}-ೄ\u{cc6}-\u{cc8}\u{cca}-\u{ccd}\u{cd5}\u{cd6}ೝೞೠ-\u{ce3}೦-೯ೱ-ೳ\u{d00}-ഌഎ-ഐഒ-\u{d44}െ-ൈൊ-ൎൔ-\u{d57}ൟ-\u{d63}൦-൯ൺ-ൿ\u{d81}-ඃඅ-ඖක-නඳ-රලව-ෆ\u{dca}\u{dcf}-\u{dd4}\u{dd6}ෘ-\u{ddf}෦-෯ෲෳก-\u{e3a}เ-\u{e4e}๐-๙ກຂຄຆ-ຊຌ-ຣລວ-ຽເ-ໄໆ\u{ec8}-\u{ece}໐-໙ໜ-ໟༀ\u{f18}\u{f19}༠-༩\u{f35}\u{f37}\u{f39}༾-ཇཉ-ཬ\u{f71}-\u{f84}\u{f86}-\u{f97}\u{f99}-\u{fbc}\u{fc6}က-၉ၐ-\u{109d}Ⴀ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚ\u{135d}-\u{135f}ᎀ-ᎏᎠ-Ᏽᏸ-ᏽᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛮ-ᛸᜀ-\u{1715}ᜟ-\u{1734}ᝀ-\u{1753}ᝠ-ᝬᝮ-ᝰ\u{1772}\u{1773}ក-\u{17d3}ៗៜ\u{17dd}០-៩\u{180b}-\u{180d}\u{180f}-᠙ᠠ-ᡸᢀ-ᢪᢰ-ᣵᤀ-ᤞ\u{1920}-ᤫᤰ-\u{193b}᥆-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉ᧐-᧙ᨀ-\u{1a1b}ᨠ-\u{1a5e}\u{1a60}-\u{1a7c}\u{1a7f}-᪉᪐-᪙ᪧ\u{1ab0}-\u{1ace}\u{1b00}-ᭌ᭐-᭙\u{1b6b}-\u{1b73}\u{1b80}-\u{1bf3}ᰀ-\u{1c37}᱀-᱉ᱍ-ᱽᲀ-Ა-ᲺᲽ-Ჿ\u{1cd0}-\u{1cd2}\u{1cd4}-ᳺᴀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼ\u{200c}\u{200d}‿⁀⁔ⁱⁿₐ-ₜ\u{20d0}-\u{20f0}ℂℇℊ-ℓℕℙ-ℝℤΩℨK-ℭℯ-ℹℼ-ℿⅅ-ⅉⅎⅠ-ↈⒶ-ⓩⰀ-ⳤⳫ-ⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯ\u{2d7f}-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞ\u{2de0}-\u{2dff}ⸯ々-〇〡-\u{302f}〱-〵〸-〼ぁ-ゖ\u{3099}\u{309a}ゝ-ゟァ-ヺー-ヿㄅ-ㄯㄱ-ㆎㆠ-ㆿㇰ-ㇿ㐀-䶿一-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘫꙀ-\u{a672}\u{a674}-\u{a67d}ꙿ-\u{a6f1}ꜗ-ꜟꜢ-ꞈꞋ-Ꟑꟑꟓꟕ-ꟲ-ꠧ\u{a82c}ꡀ-ꡳꢀ-\u{a8c5}꣐-꣙\u{a8e0}-ꣷꣻꣽ-\u{a92d}ꤰ-\u{a953}ꥠ-ꥼ\u{a980}-\u{a9c0}ꧏ-꧙ꧠ-ꧾꨀ-\u{aa36}ꩀ-ꩍ꩐-꩙ꩠ-ꩶꩺ-ꫂꫛ-ꫝꫠ-ꫯꫲ-\u{aaf6}ꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭚꭜ-ꭩꭰ-ꯪ꯬\u{abed}꯰-꯹가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻ\u{fe00}-\u{fe0f}\u{fe20}-\u{fe2f}︳︴﹍-﹏ﹰ-ﹴﹶ-ﻼ0-9A-Z_a-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ𐀀-𐀋𐀍-𐀦𐀨-𐀺𐀼𐀽𐀿-𐁍𐁐-𐁝𐂀-𐃺𐅀-𐅴\u{101fd}𐊀-𐊜𐊠-𐋐\u{102e0}𐌀-𐌟𐌭-𐍊𐍐-\u{1037a}𐎀-𐎝𐎠-𐏃𐏈-𐏏𐏑-𐏕𐐀-𐒝𐒠-𐒩𐒰-𐓓𐓘-𐓻𐔀-𐔧𐔰-𐕣𐕰-𐕺𐕼-𐖊𐖌-𐖒𐖔𐖕𐖗-𐖡𐖣-𐖱𐖳-𐖹𐖻𐖼-𐘀-𐜶𐝀-𐝕𐝠-𐝧𐞀-𐞅𐞇-𐞰𐞲-𐞺𐠀-𐠅𐠈𐠊-𐠵𐠷𐠸𐠼𐠿-𐡕𐡠-𐡶𐢀-𐢞𐣠-𐣲𐣴𐣵𐤀-𐤕𐤠-𐤹𐦀-𐦷𐦾𐦿𐨀-\u{10a03}\u{10a05}\u{10a06}\u{10a0c}-𐨓𐨕-𐨗𐨙-𐨵\u{10a38}-\u{10a3a}\u{10a3f}𐩠-𐩼𐪀-𐪜𐫀-𐫇𐫉-\u{10ae6}𐬀-𐬵𐭀-𐭕𐭠-𐭲𐮀-𐮑𐰀-𐱈𐲀-𐲲𐳀-𐳲𐴀-\u{10d27}𐴰-𐴹-\u{10d69}-\u{10d6d}-𐺀-𐺩\u{10eab}\u{10eac}𐺰𐺱-\u{10efc}-𐼜𐼧𐼰-\u{10f50}𐽰-\u{10f85}𐾰-𐿄𐿠-𐿶𑀀-\u{11046}𑁦-𑁵\u{1107f}-\u{110ba}\u{110c2}𑃐-𑃨𑃰-𑃹\u{11100}-\u{11134}𑄶-𑄿𑅄-𑅇𑅐-\u{11173}𑅶\u{11180}-𑇄\u{111c9}-\u{111cc}𑇎-𑇚𑇜𑈀-𑈑𑈓-\u{11237}\u{1123e}-\u{11241}𑊀-𑊆𑊈𑊊-𑊍𑊏-𑊝𑊟-𑊨𑊰-\u{112ea}𑋰-𑋹\u{11300}-𑌃𑌅-𑌌𑌏𑌐𑌓-𑌨𑌪-𑌰𑌲𑌳𑌵-𑌹\u{1133b}-𑍄𑍇𑍈𑍋-\u{1134d}𑍐\u{11357}𑍝-𑍣\u{11366}-\u{1136c}\u{11370}-\u{11374}---\u{113c0}\u{113c2}\u{113c5}\u{113c7}--\u{113e1}\u{113e2}𑐀-𑑊𑑐-𑑙\u{1145e}-𑑡𑒀-𑓅𑓇𑓐-𑓙𑖀-\u{115b5}𑖸-\u{115c0}𑗘-\u{115dd}𑘀-\u{11640}𑙄𑙐-𑙙𑚀-𑚸𑛀-𑛉-𑜀-𑜚\u{1171d}-\u{1172b}𑜰-𑜹𑝀-𑝆𑠀-\u{1183a}𑢠-𑣩𑣿-𑤆𑤉𑤌-𑤓𑤕𑤖𑤘-𑤵𑤷𑤸\u{1193b}-\u{11943}𑥐-𑥙𑦠-𑦧𑦪-\u{119d7}\u{119da}-𑧡𑧣𑧤𑨀-\u{11a3e}\u{11a47}𑩐-\u{11a99}𑪝𑪰-𑫸--𑰀-𑰈𑰊-\u{11c36}\u{11c38}-𑱀𑱐-𑱙𑱲-𑲏\u{11c92}-\u{11ca7}𑲩-\u{11cb6}𑴀-𑴆𑴈𑴉𑴋-\u{11d36}\u{11d3a}\u{11d3c}\u{11d3d}\u{11d3f}-\u{11d47}𑵐-𑵙𑵠-𑵥𑵧𑵨𑵪-𑶎\u{11d90}\u{11d91}𑶓-𑶘𑶠-𑶩𑻠-𑻶\u{11f00}-𑼐𑼒-\u{11f3a}𑼾-\u{11f42}𑽐-\u{11f5a}𑾰𒀀-𒎙𒐀-𒑮𒒀-𒕃𒾐-𒿰𓀀-𓐯\u{13440}-\u{13455}-𔐀-𔙆-𖠀-𖨸𖩀-𖩞𖩠-𖩩𖩰-𖪾𖫀-𖫉𖫐-𖫭\u{16af0}-\u{16af4}𖬀-\u{16b36}𖭀-𖭃𖭐-𖭙𖭣-𖭷𖭽-𖮏--𖹀-𖹿𖼀-𖽊\u{16f4f}-𖾇\u{16f8f}-𖾟𖿠𖿡𖿣\u{16fe4}\u{16ff0}\u{16ff1}𗀀-𘟷𘠀-𘳕-𘴈𚿰-𚿳𚿵-𚿻𚿽𚿾𛀀-𛄢𛄲𛅐-𛅒𛅕𛅤-𛅧𛅰-𛋻𛰀-𛱪𛱰-𛱼𛲀-𛲈𛲐-𛲙\u{1bc9d}\u{1bc9e}-\u{1cf00}-\u{1cf2d}\u{1cf30}-\u{1cf46}\u{1d165}-\u{1d169}\u{1d16d}-\u{1d172}\u{1d17b}-\u{1d182}\u{1d185}-\u{1d18b}\u{1d1aa}-\u{1d1ad}\u{1d242}-\u{1d244}𝐀-𝑔𝑖-𝒜𝒞𝒟𝒢𝒥𝒦𝒩-𝒬𝒮-𝒹𝒻𝒽-𝓃𝓅-𝔅𝔇-𝔊𝔍-𝔔𝔖-𝔜𝔞-𝔹𝔻-𝔾𝕀-𝕄𝕆𝕊-𝕐𝕒-𝚥𝚨-𝛀𝛂-𝛚𝛜-𝛺𝛼-𝜔𝜖-𝜴𝜶-𝝎𝝐-𝝮𝝰-𝞈𝞊-𝞨𝞪-𝟂𝟄-𝟋𝟎-𝟿\u{1da00}-\u{1da36}\u{1da3b}-\u{1da6c}\u{1da75}\u{1da84}\u{1da9b}-\u{1da9f}\u{1daa1}-\u{1daaf}𝼀-𝼞𝼥-𝼪\u{1e000}-\u{1e006}\u{1e008}-\u{1e018}\u{1e01b}-\u{1e021}\u{1e023}\u{1e024}\u{1e026}-\u{1e02a}𞀰-𞁭\u{1e08f}𞄀-𞄬\u{1e130}-𞄽𞅀-𞅉𞅎𞊐-\u{1e2ae}𞋀-𞋹𞓐-𞓹-𞟠-𞟦𞟨-𞟫𞟭𞟮𞟰-𞟾𞠀-𞣄\u{1e8d0}-\u{1e8d6}𞤀-𞥋𞥐-𞥙𞸀-𞸃𞸅-𞸟𞸡𞸢𞸤𞸧𞸩-𞸲𞸴-𞸷𞸹𞸻𞹂𞹇𞹉𞹋𞹍-𞹏𞹑𞹒𞹔𞹗𞹙𞹛𞹝𞹟𞹡𞹢𞹤𞹧-𞹪𞹬-𞹲𞹴-𞹷𞹹-𞹼𞹾𞺀-𞺉𞺋-𞺛𞺡-𞺣𞺥-𞺩𞺫-𞺻🄰-🅉🅐-🅩🅰-🆉🯰-🯹𠀀-𪛟𪜀-𫜹𫝀-𫠝𫠠-𬺡𬺰-𮯠-丽-𪘀𰀀-𱍊𱍐-𲎯\u{e0100}-\u{e01ef}])))*)", false),
(",", false),
(":", false),
("=", false),
("\\[", false),
("(?:\\[\\])", false),
("\\]", false),
("(?:enum)", false),
("(?:flat)", false),
("(?:struct)", false),
("\\{", false),
("\\}", false),
("(?:(?://)[\0-\t\u{b}\u{c}\u{e}-\u{10ffff}]*[\n\r]*)", true),
("(?:(?:/\\*)[\0-\\)\\+-\u{10ffff}]*\\*+(?:[\0-\\)\\+-\\.0-\u{10ffff}][\0-\\)\\+-\u{10ffff}]*\\*+)*/)", true),
("[\t-\r \u{85}\u{a0}\u{1680}\u{2000}-\u{200a}\u{2028}\u{2029}\u{202f}\u{205f}\u{3000}]*", true),
];
__lalrpop_util::lexer::MatcherBuilder::new(__strs.iter().copied()).unwrap()
}
}
pub(crate) use self::__lalrpop_util::lexer::Token;
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action0<'input>(
input: &'input str,
(_, __0, _): (
usize,
(Vec<(String, EnumBody)>, Vec<(String, StructBody)>),
usize,
),
) -> (Vec<(String, EnumBody)>, Vec<(String, StructBody)>) {
__0
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action1<'input>(
input: &'input str,
(_, __0, _): (
usize,
alloc::vec::Vec<(Option<(String, EnumBody)>, Option<(String, StructBody)>)>,
usize,
),
) -> (Vec<(String, EnumBody)>, Vec<(String, StructBody)>) {
{
let mut enums = Vec::new();
let mut structs = Vec::new();
for (e, s) in __0 {
if let Some(e) = e {
enums.push(e);
}
if let Some(s) = s {
structs.push(s);
}
}
(enums, structs)
}
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action2<'input>(
input: &'input str,
(_, __0, _): (usize, (String, EnumBody), usize),
) -> (Option<(String, EnumBody)>, Option<(String, StructBody)>) {
(Some(__0), None)
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action3<'input>(
input: &'input str,
(_, __0, _): (usize, (String, StructBody), usize),
) -> (Option<(String, EnumBody)>, Option<(String, StructBody)>) {
(None, Some(__0))
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action4<'input>(
input: &'input str,
(_, _, _): (usize, &'input str, usize),
(_, name, _): (usize, String, usize),
(_, _, _): (usize, &'input str, usize),
(_, variants, _): (usize, Vec<(String, i32)>, usize),
(_, _, _): (usize, &'input str, usize),
) -> (String, EnumBody) {
{ (name, variants) }
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action5<'input>(
input: &'input str,
(_, name, _): (usize, String, usize),
(_, _, _): (usize, &'input str, usize),
(_, value, _): (usize, i32, usize),
) -> (String, i32) {
{ (name, value) }
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action6<'input>(input: &'input str, (_, __0, _): (usize, i32, usize)) -> i32 {
__0
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action7<'input>(input: &'input str, (_, __0, _): (usize, i32, usize)) -> i32 {
__0
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action8<'input>(input: &'input str, (_, __0, _): (usize, i32, usize)) -> i32 {
__0
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action9<'input>(input: &'input str, (_, __0, _): (usize, &'input str, usize)) -> i32 {
remove_underscores(__0).parse::<i32>().unwrap()
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action10<'input>(input: &'input str, (_, __0, _): (usize, &'input str, usize)) -> i32 {
i32::from_str_radix(&(&remove_underscores(&__0[2..])), 2).unwrap()
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action11<'input>(input: &'input str, (_, __0, _): (usize, &'input str, usize)) -> i32 {
i32::from_str_radix(&remove_underscores(&__0[2..]), 16).unwrap()
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action12<'input>(
input: &'input str,
(_, _, _): (usize, &'input str, usize),
(_, name, _): (usize, String, usize),
(_, _, _): (usize, &'input str, usize),
(_, fields, _): (usize, Vec<(String, BrdbStructPropRaw)>, usize),
(_, _, _): (usize, &'input str, usize),
) -> (String, StructBody) {
(name, fields)
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action13<'input>(
input: &'input str,
(_, name, _): (usize, String, usize),
(_, _, _): (usize, &'input str, usize),
(_, ty, _): (usize, BrdbStructPropRaw, usize),
) -> (String, BrdbStructPropRaw) {
(name, ty)
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action14<'input>(
input: &'input str,
(_, __0, _): (usize, String, usize),
) -> BrdbStructPropRaw {
BrdbStructPropRaw::Type(__0)
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action15<'input>(
input: &'input str,
(_, ty, _): (usize, String, usize),
(_, _, _): (usize, &'input str, usize),
) -> BrdbStructPropRaw {
BrdbStructPropRaw::Array(ty)
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action16<'input>(
input: &'input str,
(_, ty, _): (usize, String, usize),
(_, _, _): (usize, &'input str, usize),
(_, _, _): (usize, &'input str, usize),
(_, _, _): (usize, &'input str, usize),
) -> BrdbStructPropRaw {
BrdbStructPropRaw::FlatArray(ty)
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action17<'input>(
input: &'input str,
(_, _, _): (usize, &'input str, usize),
(_, k_ty, _): (usize, String, usize),
(_, _, _): (usize, &'input str, usize),
(_, v_ty, _): (usize, String, usize),
(_, _, _): (usize, &'input str, usize),
) -> BrdbStructPropRaw {
BrdbStructPropRaw::Map(k_ty, v_ty)
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action18<'input>(input: &'input str, (_, __0, _): (usize, &'input str, usize)) -> String {
__0.to_string()
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action19<'input>(
input: &'input str,
(_, __0, _): (usize, (), usize),
) -> Vec<(String, BrdbStructPropRaw)> {
vec![]
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action20<'input>(
input: &'input str,
(_, mut v, _): (usize, alloc::vec::Vec<(String, BrdbStructPropRaw)>, usize),
(_, e, _): (usize, (String, BrdbStructPropRaw), usize),
(_, _, _): (usize, Option<&'input str>, usize),
) -> Vec<(String, BrdbStructPropRaw)> {
{
v.push(e);
v
}
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action21<'input>(input: &'input str, (_, __0, _): (usize, (), usize)) -> Vec<(String, i32)> {
vec![]
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action22<'input>(
input: &'input str,
(_, mut v, _): (usize, alloc::vec::Vec<(String, i32)>, usize),
(_, e, _): (usize, (String, i32), usize),
(_, _, _): (usize, Option<&'input str>, usize),
) -> Vec<(String, i32)> {
{
v.push(e);
v
}
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action23<'input>(
input: &'input str,
(_, __0, _): (
usize,
(Option<(String, EnumBody)>, Option<(String, StructBody)>),
usize,
),
) -> alloc::vec::Vec<(Option<(String, EnumBody)>, Option<(String, StructBody)>)> {
alloc::vec![__0]
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action24<'input>(
input: &'input str,
(_, v, _): (
usize,
alloc::vec::Vec<(Option<(String, EnumBody)>, Option<(String, StructBody)>)>,
usize,
),
(_, e, _): (
usize,
(Option<(String, EnumBody)>, Option<(String, StructBody)>),
usize,
),
) -> alloc::vec::Vec<(Option<(String, EnumBody)>, Option<(String, StructBody)>)> {
{
let mut v = v;
v.push(e);
v
}
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action25<'input>(
input: &'input str,
__lookbehind: &usize,
__lookahead: &usize,
) -> alloc::vec::Vec<(String, i32)> {
alloc::vec![]
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action26<'input>(
input: &'input str,
(_, v, _): (usize, alloc::vec::Vec<(String, i32)>, usize),
) -> alloc::vec::Vec<(String, i32)> {
v
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action27<'input>(
input: &'input str,
(_, __0, _): (usize, (String, i32), usize),
(_, _, _): (usize, &'input str, usize),
) -> (String, i32) {
__0
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action28<'input>(
input: &'input str,
(_, __0, _): (usize, &'input str, usize),
) -> Option<&'input str> {
Some(__0)
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action29<'input>(
input: &'input str,
__lookbehind: &usize,
__lookahead: &usize,
) -> Option<&'input str> {
None
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action30<'input>(
input: &'input str,
__lookbehind: &usize,
__lookahead: &usize,
) -> alloc::vec::Vec<(String, BrdbStructPropRaw)> {
alloc::vec![]
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action31<'input>(
input: &'input str,
(_, v, _): (usize, alloc::vec::Vec<(String, BrdbStructPropRaw)>, usize),
) -> alloc::vec::Vec<(String, BrdbStructPropRaw)> {
v
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action32<'input>(
input: &'input str,
(_, __0, _): (usize, (String, BrdbStructPropRaw), usize),
(_, _, _): (usize, &'input str, usize),
) -> (String, BrdbStructPropRaw) {
__0
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action33<'input>(input: &'input str, __lookbehind: &usize, __lookahead: &usize) {}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action34<'input>(
input: &'input str,
(_, __0, _): (usize, (String, BrdbStructPropRaw), usize),
) -> alloc::vec::Vec<(String, BrdbStructPropRaw)> {
alloc::vec![__0]
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action35<'input>(
input: &'input str,
(_, v, _): (usize, alloc::vec::Vec<(String, BrdbStructPropRaw)>, usize),
(_, e, _): (usize, (String, BrdbStructPropRaw), usize),
) -> alloc::vec::Vec<(String, BrdbStructPropRaw)> {
{
let mut v = v;
v.push(e);
v
}
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action36<'input>(
input: &'input str,
(_, __0, _): (usize, (String, i32), usize),
) -> alloc::vec::Vec<(String, i32)> {
alloc::vec![__0]
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action37<'input>(
input: &'input str,
(_, v, _): (usize, alloc::vec::Vec<(String, i32)>, usize),
(_, e, _): (usize, (String, i32), usize),
) -> alloc::vec::Vec<(String, i32)> {
{
let mut v = v;
v.push(e);
v
}
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action38<'input>(
input: &'input str,
__0: (usize, alloc::vec::Vec<(String, i32)>, usize),
__1: (usize, (String, i32), usize),
__2: (usize, &'input str, usize),
) -> Vec<(String, i32)> {
let __start0 = __2.0;
let __end0 = __2.2;
let __temp0 = __action28(input, __2);
let __temp0 = (__start0, __temp0, __end0);
__action22(input, __0, __1, __temp0)
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action39<'input>(
input: &'input str,
__0: (usize, alloc::vec::Vec<(String, i32)>, usize),
__1: (usize, (String, i32), usize),
) -> Vec<(String, i32)> {
let __start0 = __1.2;
let __end0 = __1.2;
let __temp0 = __action29(input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action22(input, __0, __1, __temp0)
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action40<'input>(
input: &'input str,
__0: (usize, alloc::vec::Vec<(String, BrdbStructPropRaw)>, usize),
__1: (usize, (String, BrdbStructPropRaw), usize),
__2: (usize, &'input str, usize),
) -> Vec<(String, BrdbStructPropRaw)> {
let __start0 = __2.0;
let __end0 = __2.2;
let __temp0 = __action28(input, __2);
let __temp0 = (__start0, __temp0, __end0);
__action20(input, __0, __1, __temp0)
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action41<'input>(
input: &'input str,
__0: (usize, alloc::vec::Vec<(String, BrdbStructPropRaw)>, usize),
__1: (usize, (String, BrdbStructPropRaw), usize),
) -> Vec<(String, BrdbStructPropRaw)> {
let __start0 = __1.2;
let __end0 = __1.2;
let __temp0 = __action29(input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action20(input, __0, __1, __temp0)
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action42<'input>(
input: &'input str,
__lookbehind: &usize,
__lookahead: &usize,
) -> Vec<(String, i32)> {
let __start0 = *__lookbehind;
let __end0 = *__lookahead;
let __temp0 = __action33(input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action21(input, __temp0)
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action43<'input>(
input: &'input str,
__lookbehind: &usize,
__lookahead: &usize,
) -> Vec<(String, BrdbStructPropRaw)> {
let __start0 = *__lookbehind;
let __end0 = *__lookahead;
let __temp0 = __action33(input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action19(input, __temp0)
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action44<'input>(
input: &'input str,
__0: (usize, (String, i32), usize),
__1: (usize, &'input str, usize),
) -> alloc::vec::Vec<(String, i32)> {
let __start0 = __0.0;
let __end0 = __1.2;
let __temp0 = __action27(input, __0, __1);
let __temp0 = (__start0, __temp0, __end0);
__action36(input, __temp0)
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action45<'input>(
input: &'input str,
__0: (usize, alloc::vec::Vec<(String, i32)>, usize),
__1: (usize, (String, i32), usize),
__2: (usize, &'input str, usize),
) -> alloc::vec::Vec<(String, i32)> {
let __start0 = __1.0;
let __end0 = __2.2;
let __temp0 = __action27(input, __1, __2);
let __temp0 = (__start0, __temp0, __end0);
__action37(input, __0, __temp0)
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action46<'input>(
input: &'input str,
__0: (usize, (String, i32), usize),
__1: (usize, &'input str, usize),
) -> Vec<(String, i32)> {
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action25(input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action38(input, __temp0, __0, __1)
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action47<'input>(
input: &'input str,
__0: (usize, alloc::vec::Vec<(String, i32)>, usize),
__1: (usize, (String, i32), usize),
__2: (usize, &'input str, usize),
) -> Vec<(String, i32)> {
let __start0 = __0.0;
let __end0 = __0.2;
let __temp0 = __action26(input, __0);
let __temp0 = (__start0, __temp0, __end0);
__action38(input, __temp0, __1, __2)
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action48<'input>(
input: &'input str,
__0: (usize, (String, i32), usize),
) -> Vec<(String, i32)> {
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action25(input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action39(input, __temp0, __0)
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action49<'input>(
input: &'input str,
__0: (usize, alloc::vec::Vec<(String, i32)>, usize),
__1: (usize, (String, i32), usize),
) -> Vec<(String, i32)> {
let __start0 = __0.0;
let __end0 = __0.2;
let __temp0 = __action26(input, __0);
let __temp0 = (__start0, __temp0, __end0);
__action39(input, __temp0, __1)
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action50<'input>(
input: &'input str,
__0: (usize, (String, BrdbStructPropRaw), usize),
__1: (usize, &'input str, usize),
) -> alloc::vec::Vec<(String, BrdbStructPropRaw)> {
let __start0 = __0.0;
let __end0 = __1.2;
let __temp0 = __action32(input, __0, __1);
let __temp0 = (__start0, __temp0, __end0);
__action34(input, __temp0)
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action51<'input>(
input: &'input str,
__0: (usize, alloc::vec::Vec<(String, BrdbStructPropRaw)>, usize),
__1: (usize, (String, BrdbStructPropRaw), usize),
__2: (usize, &'input str, usize),
) -> alloc::vec::Vec<(String, BrdbStructPropRaw)> {
let __start0 = __1.0;
let __end0 = __2.2;
let __temp0 = __action32(input, __1, __2);
let __temp0 = (__start0, __temp0, __end0);
__action35(input, __0, __temp0)
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action52<'input>(
input: &'input str,
__0: (usize, (String, BrdbStructPropRaw), usize),
__1: (usize, &'input str, usize),
) -> Vec<(String, BrdbStructPropRaw)> {
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action30(input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action40(input, __temp0, __0, __1)
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action53<'input>(
input: &'input str,
__0: (usize, alloc::vec::Vec<(String, BrdbStructPropRaw)>, usize),
__1: (usize, (String, BrdbStructPropRaw), usize),
__2: (usize, &'input str, usize),
) -> Vec<(String, BrdbStructPropRaw)> {
let __start0 = __0.0;
let __end0 = __0.2;
let __temp0 = __action31(input, __0);
let __temp0 = (__start0, __temp0, __end0);
__action40(input, __temp0, __1, __2)
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action54<'input>(
input: &'input str,
__0: (usize, (String, BrdbStructPropRaw), usize),
) -> Vec<(String, BrdbStructPropRaw)> {
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action30(input, &__start0, &__end0);
let __temp0 = (__start0, __temp0, __end0);
__action41(input, __temp0, __0)
}
#[allow(unused_variables)]
#[allow(
clippy::too_many_arguments,
clippy::needless_lifetimes,
clippy::just_underscores_and_digits
)]
fn __action55<'input>(
input: &'input str,
__0: (usize, alloc::vec::Vec<(String, BrdbStructPropRaw)>, usize),
__1: (usize, (String, BrdbStructPropRaw), usize),
) -> Vec<(String, BrdbStructPropRaw)> {
let __start0 = __0.0;
let __end0 = __0.2;
let __temp0 = __action31(input, __0);
let __temp0 = (__start0, __temp0, __end0);
__action41(input, __temp0, __1)
}
#[allow(clippy::type_complexity, dead_code)]
pub trait __ToTriple<'input> {
fn to_triple(
self,
) -> Result<
(usize, Token<'input>, usize),
__lalrpop_util::ParseError<usize, Token<'input>, &'static str>,
>;
}
impl<'input> __ToTriple<'input> for (usize, Token<'input>, usize) {
fn to_triple(
self,
) -> Result<
(usize, Token<'input>, usize),
__lalrpop_util::ParseError<usize, Token<'input>, &'static str>,
> {
Ok(self)
}
}
impl<'input> __ToTriple<'input> for Result<(usize, Token<'input>, usize), &'static str> {
fn to_triple(
self,
) -> Result<
(usize, Token<'input>, usize),
__lalrpop_util::ParseError<usize, Token<'input>, &'static str>,
> {
self.map_err(|error| __lalrpop_util::ParseError::User { error })
}
}