// Generated by rust-peg. Do not edit.
pub mod peg {
#[allow(unused_imports)]
use super::*;
type Input = FlatTokenStream;
type PositionRepr = ::PositionRepr;
#[allow(unused_parens)]
struct ParseState<'input> {
_phantom: ::core::marker::PhantomData<(&'input ())>,
primary_cache: ::std::collections::HashMap>,
}
impl<'input> ParseState<'input> {
fn new() -> ParseState<'input> {
ParseState {
_phantom: ::core::marker::PhantomData,
primary_cache: ::std::collections::HashMap::new(),
}
}
}
use crate::ast::Expr::*;
use crate::ast::*;
use crate::tokens::FlatTokenStream;
use proc_macro2::{Delimiter, Group, Ident, Literal, Span, TokenStream};
pub fn peg_grammar<'input>(
__input: &'input Input,
) -> ::core::result::Result> {
#![allow(non_snake_case, unused)]
let mut __err_state = ::peg::error::ErrorState::new(::peg::Parse::start(__input));
let mut __state = ParseState::new();
match __parse_peg_grammar(
__input,
&mut __state,
&mut __err_state,
::peg::Parse::start(__input),
) {
::peg::RuleResult::Matched(__pos, __value) => {
if ::peg::Parse::is_eof(__input, __pos) {
return Ok(__value);
} else {
__err_state.mark_failure(__pos, "EOF");
}
}
_ => (),
}
__state = ParseState::new();
__err_state.reparse_for_error();
match __parse_peg_grammar(
__input,
&mut __state,
&mut __err_state,
::peg::Parse::start(__input),
) {
::peg::RuleResult::Matched(__pos, __value) => {
if ::peg::Parse::is_eof(__input, __pos) {
panic!(
"Parser is nondeterministic: succeeded when reparsing for error position"
);
return Ok(__value);
} else {
__err_state.mark_failure(__pos, "EOF");
}
}
_ => (),
}
Err(__err_state.into_parse_error(__input))
}
fn __parse_peg_grammar<'input>(
__input: &'input Input,
__state: &mut ParseState<'input>,
__err_state: &mut ::peg::error::ErrorState,
__pos: usize,
) -> ::peg::RuleResult {
#![allow(non_snake_case, unused, clippy::redundant_closure_call)]
{
let __seq_res = __parse_rust_doc_comment(__input, __state, __err_state, __pos);
match __seq_res {
::peg::RuleResult::Matched(__pos, doc) => {
let __seq_res = __parse_rust_visibility(__input, __state, __err_state, __pos);
match __seq_res {
::peg::RuleResult::Matched(__pos, visibility) => {
match ::peg::ParseLiteral::parse_string_literal(
__input, __pos, "grammar",
) {
::peg::RuleResult::Matched(__pos, __val) => {
let __seq_res =
__parse_IDENT(__input, __state, __err_state, __pos);
match __seq_res {
::peg::RuleResult::Matched(__pos, name) => {
let __seq_res = match __parse_rust_lifetime_params(
__input,
__state,
__err_state,
__pos,
) {
::peg::RuleResult::Matched(__newpos, __value) => {
::peg::RuleResult::Matched(
__newpos,
Some(__value),
)
}
::peg::RuleResult::Failed => {
::peg::RuleResult::Matched(__pos, None)
}
};
match __seq_res {
::peg::RuleResult::Matched(
__pos,
lifetime_params,
) => {
let __seq_res = __parse_grammar_args(
__input,
__state,
__err_state,
__pos,
);
match __seq_res { :: peg :: RuleResult :: Matched (__pos , args) => { match :: peg :: ParseLiteral :: parse_string_literal (__input , __pos , "for") { :: peg :: RuleResult :: Matched (__pos , __val) => { { let __seq_res = { let str_start = __pos ; match match __parse_rust_type (__input , __state , __err_state , __pos) { :: peg :: RuleResult :: Matched (pos , _) => :: peg :: RuleResult :: Matched (pos , ()) , :: peg :: RuleResult :: Failed => :: peg :: RuleResult :: Failed , } { :: peg :: RuleResult :: Matched (__newpos , _) => { :: peg :: RuleResult :: Matched (__newpos , :: peg :: ParseSlice :: parse_slice (__input , str_start , __newpos)) } , :: peg :: RuleResult :: Failed => :: peg :: RuleResult :: Failed , } } ; match __seq_res { :: peg :: RuleResult :: Matched (__pos , input_type) => { match :: peg :: ParseLiteral :: parse_string_literal (__input , __pos , "{") { :: peg :: RuleResult :: Matched (__pos , __val) => { { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! () ; loop { let __pos = __repeat_pos ; let __step_res = __parse_item (__input , __state , __err_state , __pos) ; match __step_res { :: peg :: RuleResult :: Matched (__newpos , __value) => { __repeat_pos = __newpos ; __repeat_value . push (__value) ; } , :: peg :: RuleResult :: Failed => { break ; } } } :: peg :: RuleResult :: Matched (__repeat_pos , __repeat_value) } ; match __seq_res { :: peg :: RuleResult :: Matched (__pos , items) => { match :: peg :: ParseLiteral :: parse_string_literal (__input , __pos , "}") { :: peg :: RuleResult :: Matched (__pos , __val) => { :: peg :: RuleResult :: Matched (__pos , (|| { Grammar { doc , visibility , name , lifetime_params , args , input_type , items } }) ()) } :: peg :: RuleResult :: Failed => { __err_state . mark_failure (__pos , "\"}\"") ; :: peg :: RuleResult :: Failed } } } :: peg :: RuleResult :: Failed => :: peg :: RuleResult :: Failed , } } } :: peg :: RuleResult :: Failed => { __err_state . mark_failure (__pos , "\"{\"") ; :: peg :: RuleResult :: Failed } } } :: peg :: RuleResult :: Failed => :: peg :: RuleResult :: Failed , } } } :: peg :: RuleResult :: Failed => { __err_state . mark_failure (__pos , "\"for\"") ; :: peg :: RuleResult :: Failed } } } :: peg :: RuleResult :: Failed => :: peg :: RuleResult :: Failed , }
}
::peg::RuleResult::Failed => {
::peg::RuleResult::Failed
}
}
}
::peg::RuleResult::Failed => ::peg::RuleResult::Failed,
}
}
::peg::RuleResult::Failed => {
__err_state.mark_failure(__pos, "\"grammar\"");
::peg::RuleResult::Failed
}
}
}
::peg::RuleResult::Failed => ::peg::RuleResult::Failed,
}
}
::peg::RuleResult::Failed => ::peg::RuleResult::Failed,
}
}
}
fn __parse_rust_lifetime_params<'input>(
__input: &'input Input,
__state: &mut ParseState<'input>,
__err_state: &mut ::peg::error::ErrorState,
__pos: usize,
) -> ::peg::RuleResult> {
#![allow(non_snake_case, unused, clippy::redundant_closure_call)]
match ::peg::ParseLiteral::parse_string_literal(__input, __pos, "<") {
::peg::RuleResult::Matched(__pos, __val) => {
let __seq_res = {
let mut __repeat_pos = __pos;
let mut __repeat_value = vec![];
loop {
let __pos = __repeat_pos;
let __pos = if __repeat_value.is_empty() {
__pos
} else {
let __sep_res = match ::peg::ParseLiteral::parse_string_literal(
__input, __pos, ",",
) {
::peg::RuleResult::Matched(__pos, __val) => {
::peg::RuleResult::Matched(__pos, __val)
}
::peg::RuleResult::Failed => {
__err_state.mark_failure(__pos, "\",\"");
::peg::RuleResult::Failed
}
};
match __sep_res {
::peg::RuleResult::Matched(__newpos, _) => __newpos,
::peg::RuleResult::Failed => break,
}
};
let __step_res = {
let str_start = __pos;
match match __parse_LIFETIME(__input, __state, __err_state, __pos) {
::peg::RuleResult::Matched(pos, _) => {
::peg::RuleResult::Matched(pos, ())
}
::peg::RuleResult::Failed => ::peg::RuleResult::Failed,
} {
::peg::RuleResult::Matched(__newpos, _) => {
::peg::RuleResult::Matched(
__newpos,
::peg::ParseSlice::parse_slice(
__input, str_start, __newpos,
),
)
}
::peg::RuleResult::Failed => ::peg::RuleResult::Failed,
}
};
match __step_res {
::peg::RuleResult::Matched(__newpos, __value) => {
__repeat_pos = __newpos;
__repeat_value.push(__value);
}
::peg::RuleResult::Failed => {
break;
}
}
}
if __repeat_value.len() >= 1 {
::peg::RuleResult::Matched(__repeat_pos, __repeat_value)
} else {
::peg::RuleResult::Failed
}
};
match __seq_res {
::peg::RuleResult::Matched(__pos, p) => {
let __seq_res = match match ::peg::ParseLiteral::parse_string_literal(
__input, __pos, ",",
) {
::peg::RuleResult::Matched(__pos, __val) => {
::peg::RuleResult::Matched(__pos, __val)
}
::peg::RuleResult::Failed => {
__err_state.mark_failure(__pos, "\",\"");
::peg::RuleResult::Failed
}
} {
::peg::RuleResult::Matched(__newpos, _) => {
::peg::RuleResult::Matched(__newpos, ())
}
::peg::RuleResult::Failed => ::peg::RuleResult::Matched(__pos, ()),
};
match __seq_res {
::peg::RuleResult::Matched(__pos, _) => {
match ::peg::ParseLiteral::parse_string_literal(__input, __pos, ">")
{
::peg::RuleResult::Matched(__pos, __val) => {
::peg::RuleResult::Matched(__pos, (|| p)())
}
::peg::RuleResult::Failed => {
__err_state.mark_failure(__pos, "\">\"");
::peg::RuleResult::Failed
}
}
}
::peg::RuleResult::Failed => ::peg::RuleResult::Failed,
}
}
::peg::RuleResult::Failed => ::peg::RuleResult::Failed,
}
}
::peg::RuleResult::Failed => {
__err_state.mark_failure(__pos, "\"<\"");
::peg::RuleResult::Failed
}
}
}
fn __parse_grammar_args<'input>(
__input: &'input Input,
__state: &mut ParseState<'input>,
__err_state: &mut ::peg::error::ErrorState,
__pos: usize,
) -> ::peg::RuleResult> {
#![allow(non_snake_case, unused, clippy::redundant_closure_call)]
match ::peg::ParseLiteral::parse_string_literal(__input, __pos, "(") {
::peg::RuleResult::Matched(__pos, __val) => {
let __seq_res = {
let mut __repeat_pos = __pos;
let mut __repeat_value = vec![];
loop {
let __pos = __repeat_pos;
let __pos = if __repeat_value.is_empty() {
__pos
} else {
let __sep_res = match ::peg::ParseLiteral::parse_string_literal(
__input, __pos, ",",
) {
::peg::RuleResult::Matched(__pos, __val) => {
::peg::RuleResult::Matched(__pos, __val)
}
::peg::RuleResult::Failed => {
__err_state.mark_failure(__pos, "\",\"");
::peg::RuleResult::Failed
}
};
match __sep_res {
::peg::RuleResult::Matched(__newpos, _) => __newpos,
::peg::RuleResult::Failed => break,
}
};
let __step_res = {
let __seq_res = __parse_IDENT(__input, __state, __err_state, __pos);
match __seq_res {
::peg::RuleResult::Matched(__pos, i) => {
match ::peg::ParseLiteral::parse_string_literal(
__input, __pos, ":",
) {
::peg::RuleResult::Matched(__pos, __val) => {
let __seq_res = {
let str_start = __pos;
match match __parse_rust_type(
__input,
__state,
__err_state,
__pos,
) {
::peg::RuleResult::Matched(pos, _) => {
::peg::RuleResult::Matched(pos, ())
}
::peg::RuleResult::Failed => {
::peg::RuleResult::Failed
}
} {
::peg::RuleResult::Matched(__newpos, _) => {
::peg::RuleResult::Matched(
__newpos,
::peg::ParseSlice::parse_slice(
__input, str_start, __newpos,
),
)
}
::peg::RuleResult::Failed => {
::peg::RuleResult::Failed
}
}
};
match __seq_res {
::peg::RuleResult::Matched(__pos, t) => {
::peg::RuleResult::Matched(__pos, (|| (i, t))())
}
::peg::RuleResult::Failed => {
::peg::RuleResult::Failed
}
}
}
::peg::RuleResult::Failed => {
__err_state.mark_failure(__pos, "\":\"");
::peg::RuleResult::Failed
}
}
}
::peg::RuleResult::Failed => ::peg::RuleResult::Failed,
}
};
match __step_res {
::peg::RuleResult::Matched(__newpos, __value) => {
__repeat_pos = __newpos;
__repeat_value.push(__value);
}
::peg::RuleResult::Failed => {
break;
}
}
}
::peg::RuleResult::Matched(__repeat_pos, __repeat_value)
};
match __seq_res {
::peg::RuleResult::Matched(__pos, args) => {
let __seq_res = match match ::peg::ParseLiteral::parse_string_literal(
__input, __pos, ",",
) {
::peg::RuleResult::Matched(__pos, __val) => {
::peg::RuleResult::Matched(__pos, __val)
}
::peg::RuleResult::Failed => {
__err_state.mark_failure(__pos, "\",\"");
::peg::RuleResult::Failed
}
} {
::peg::RuleResult::Matched(__newpos, _) => {
::peg::RuleResult::Matched(__newpos, ())
}
::peg::RuleResult::Failed => ::peg::RuleResult::Matched(__pos, ()),
};
match __seq_res {
::peg::RuleResult::Matched(__pos, _) => {
match ::peg::ParseLiteral::parse_string_literal(__input, __pos, ")")
{
::peg::RuleResult::Matched(__pos, __val) => {
::peg::RuleResult::Matched(__pos, (|| args)())
}
::peg::RuleResult::Failed => {
__err_state.mark_failure(__pos, "\")\"");
::peg::RuleResult::Failed
}
}
}
::peg::RuleResult::Failed => ::peg::RuleResult::Failed,
}
}
::peg::RuleResult::Failed => ::peg::RuleResult::Failed,
}
}
::peg::RuleResult::Failed => {
__err_state.mark_failure(__pos, "\"(\"");
::peg::RuleResult::Failed
}
}
}
fn __parse_peg_rule<'input>(
__input: &'input Input,
__state: &mut ParseState<'input>,
__err_state: &mut ::peg::error::ErrorState,
__pos: usize,
) -> ::peg::RuleResult {
#![allow(non_snake_case, unused, clippy::redundant_closure_call)]
{
let __seq_res = __parse_rust_doc_comment(__input, __state, __err_state, __pos);
match __seq_res {
::peg::RuleResult::Matched(__pos, doc) => {
let __seq_res = __parse_cacheflag(__input, __state, __err_state, __pos);
match __seq_res {
::peg::RuleResult::Matched(__pos, cache) => {
let __seq_res =
__parse_no_eof_flag(__input, __state, __err_state, __pos);
match __seq_res {
::peg::RuleResult::Matched(__pos, no_eof) => {
let __seq_res = __parse_rust_visibility(
__input,
__state,
__err_state,
__pos,
);
match __seq_res {
::peg::RuleResult::Matched(__pos, visibility) => {
let __seq_res =
__parse_sp(__input, __state, __err_state, __pos);
match __seq_res {
::peg::RuleResult::Matched(__pos, span) => {
match ::peg::ParseLiteral::parse_string_literal(
__input, __pos, "rule",
) {
::peg::RuleResult::Matched(
__pos,
__val,
) => {
let __seq_res = {
let __choice_res = {
let __seq_res = {
__err_state
.suppress_fail += 1;
let __assert_res = {
let __choice_res = match :: peg :: ParseLiteral :: parse_string_literal (__input , __pos , "_") { :: peg :: RuleResult :: Matched (__pos , __val) => { :: peg :: RuleResult :: Matched (__pos , __val) } :: peg :: RuleResult :: Failed => { __err_state . mark_failure (__pos , "\"_\"") ; :: peg :: RuleResult :: Failed } } ;
match __choice_res { :: peg :: RuleResult :: Matched (__pos , __value) => :: peg :: RuleResult :: Matched (__pos , __value) , :: peg :: RuleResult :: Failed => { let __choice_res = match :: peg :: ParseLiteral :: parse_string_literal (__input , __pos , "__") { :: peg :: RuleResult :: Matched (__pos , __val) => { :: peg :: RuleResult :: Matched (__pos , __val) } :: peg :: RuleResult :: Failed => { __err_state . mark_failure (__pos , "\"__\"") ; :: peg :: RuleResult :: Failed } } ; match __choice_res { :: peg :: RuleResult :: Matched (__pos , __value) => :: peg :: RuleResult :: Matched (__pos , __value) , :: peg :: RuleResult :: Failed => match :: peg :: ParseLiteral :: parse_string_literal (__input , __pos , "___") { :: peg :: RuleResult :: Matched (__pos , __val) => { :: peg :: RuleResult :: Matched (__pos , __val) } :: peg :: RuleResult :: Failed => { __err_state . mark_failure (__pos , "\"___\"") ; :: peg :: RuleResult :: Failed } } } } }
};
__err_state
.suppress_fail -= 1;
match __assert_res { :: peg :: RuleResult :: Matched (_ , __value) => :: peg :: RuleResult :: Matched (__pos , __value) , :: peg :: RuleResult :: Failed => :: peg :: RuleResult :: Failed , }
};
match __seq_res { :: peg :: RuleResult :: Matched (__pos , _) => { { let __seq_res = __parse_IDENT (__input , __state , __err_state , __pos) ; match __seq_res { :: peg :: RuleResult :: Matched (__pos , name) => { { let __seq_res = match match :: peg :: ParseLiteral :: parse_string_literal (__input , __pos , "(") { :: peg :: RuleResult :: Matched (__pos , __val) => { match :: peg :: ParseLiteral :: parse_string_literal (__input , __pos , ")") { :: peg :: RuleResult :: Matched (__pos , __val) => { :: peg :: RuleResult :: Matched (__pos , ()) } :: peg :: RuleResult :: Failed => { __err_state . mark_failure (__pos , "\")\"") ; :: peg :: RuleResult :: Failed } } } :: peg :: RuleResult :: Failed => { __err_state . mark_failure (__pos , "\"(\"") ; :: peg :: RuleResult :: Failed } } { :: peg :: RuleResult :: Matched (__newpos , _) => { :: peg :: RuleResult :: Matched (__newpos , ()) } , :: peg :: RuleResult :: Failed => { :: peg :: RuleResult :: Matched (__pos , ()) } , } ; match __seq_res { :: peg :: RuleResult :: Matched (__pos , _) => { :: peg :: RuleResult :: Matched (__pos , (|| { (name , None , Vec :: new ()) }) ()) } :: peg :: RuleResult :: Failed => :: peg :: RuleResult :: Failed , } } } :: peg :: RuleResult :: Failed => :: peg :: RuleResult :: Failed , } } } :: peg :: RuleResult :: Failed => :: peg :: RuleResult :: Failed , }
};
match __choice_res {
::peg::RuleResult::Matched(
__pos,
__value,
) => {
::peg::RuleResult::Matched(
__pos, __value,
)
}
::peg::RuleResult::Failed => {
let __seq_res =
__parse_IDENT(
__input,
__state,
__err_state,
__pos,
);
match __seq_res { :: peg :: RuleResult :: Matched (__pos , name) => { { let __seq_res = match __parse_rust_ty_params (__input , __state , __err_state , __pos) { :: peg :: RuleResult :: Matched (__newpos , __value) => { :: peg :: RuleResult :: Matched (__newpos , Some (__value)) } , :: peg :: RuleResult :: Failed => { :: peg :: RuleResult :: Matched (__pos , None) } , } ; match __seq_res { :: peg :: RuleResult :: Matched (__pos , ty_params) => { { let __seq_res = __parse_rule_params (__input , __state , __err_state , __pos) ; match __seq_res { :: peg :: RuleResult :: Matched (__pos , params) => { :: peg :: RuleResult :: Matched (__pos , (|| { (name , ty_params , params) }) ()) } :: peg :: RuleResult :: Failed => :: peg :: RuleResult :: Failed , } } } :: peg :: RuleResult :: Failed => :: peg :: RuleResult :: Failed , } } } :: peg :: RuleResult :: Failed => :: peg :: RuleResult :: Failed , }
}
}
};
match __seq_res {
::peg::RuleResult::Matched(
__pos,
header,
) => {
let __seq_res = match match :: peg :: ParseLiteral :: parse_string_literal (__input , __pos , "->") { :: peg :: RuleResult :: Matched (__pos , __val) => { { let __seq_res = { let str_start = __pos ; match match __parse_rust_type (__input , __state , __err_state , __pos) { :: peg :: RuleResult :: Matched (pos , _) => :: peg :: RuleResult :: Matched (pos , ()) , :: peg :: RuleResult :: Failed => :: peg :: RuleResult :: Failed , } { :: peg :: RuleResult :: Matched (__newpos , _) => { :: peg :: RuleResult :: Matched (__newpos , :: peg :: ParseSlice :: parse_slice (__input , str_start , __newpos)) } , :: peg :: RuleResult :: Failed => :: peg :: RuleResult :: Failed , } } ; match __seq_res { :: peg :: RuleResult :: Matched (__pos , t) => { :: peg :: RuleResult :: Matched (__pos , (|| { t }) ()) } :: peg :: RuleResult :: Failed => :: peg :: RuleResult :: Failed , } } } :: peg :: RuleResult :: Failed => { __err_state . mark_failure (__pos , "\"->\"") ; :: peg :: RuleResult :: Failed } } { :: peg :: RuleResult :: Matched (__newpos , __value) => { :: peg :: RuleResult :: Matched (__newpos , Some (__value)) } , :: peg :: RuleResult :: Failed => { :: peg :: RuleResult :: Matched (__pos , None) } , } ;
match __seq_res { :: peg :: RuleResult :: Matched (__pos , ret_type) => { { let __seq_res = match { let str_start = __pos ; match match __parse_rust_where_clause (__input , __state , __err_state , __pos) { :: peg :: RuleResult :: Matched (pos , _) => :: peg :: RuleResult :: Matched (pos , ()) , :: peg :: RuleResult :: Failed => :: peg :: RuleResult :: Failed , } { :: peg :: RuleResult :: Matched (__newpos , _) => { :: peg :: RuleResult :: Matched (__newpos , :: peg :: ParseSlice :: parse_slice (__input , str_start , __newpos)) } , :: peg :: RuleResult :: Failed => :: peg :: RuleResult :: Failed , } } { :: peg :: RuleResult :: Matched (__newpos , __value) => { :: peg :: RuleResult :: Matched (__newpos , Some (__value)) } , :: peg :: RuleResult :: Failed => { :: peg :: RuleResult :: Matched (__pos , None) } , } ; match __seq_res { :: peg :: RuleResult :: Matched (__pos , where_clause) => { match :: peg :: ParseLiteral :: parse_string_literal (__input , __pos , "=") { :: peg :: RuleResult :: Matched (__pos , __val) => { { let __seq_res = __parse_expression (__input , __state , __err_state , __pos) ; match __seq_res { :: peg :: RuleResult :: Matched (__pos , expr) => { { let __seq_res = match match :: peg :: ParseLiteral :: parse_string_literal (__input , __pos , ";") { :: peg :: RuleResult :: Matched (__pos , __val) => { :: peg :: RuleResult :: Matched (__pos , __val) } :: peg :: RuleResult :: Failed => { __err_state . mark_failure (__pos , "\";\"") ; :: peg :: RuleResult :: Failed } } { :: peg :: RuleResult :: Matched (__newpos , _) => { :: peg :: RuleResult :: Matched (__newpos , ()) } , :: peg :: RuleResult :: Failed => { :: peg :: RuleResult :: Matched (__pos , ()) } , } ; match __seq_res { :: peg :: RuleResult :: Matched (__pos , _) => { :: peg :: RuleResult :: Matched (__pos , (|| { Rule { span , doc , name : header . 0 , ty_params : header . 1 , params : header . 2 , expr , ret_type , where_clause , visibility , no_eof , cache } }) ()) } :: peg :: RuleResult :: Failed => :: peg :: RuleResult :: Failed , } } } :: peg :: RuleResult :: Failed => :: peg :: RuleResult :: Failed , } } } :: peg :: RuleResult :: Failed => { __err_state . mark_failure (__pos , "\"=\"") ; :: peg :: RuleResult :: Failed } } } :: peg :: RuleResult :: Failed => :: peg :: RuleResult :: Failed , } } } :: peg :: RuleResult :: Failed => :: peg :: RuleResult :: Failed , }
}
::peg::RuleResult::Failed => {
::peg::RuleResult::Failed
}
}
}
::peg::RuleResult::Failed => {
__err_state
.mark_failure(__pos, "\"rule\"");
::peg::RuleResult::Failed
}
}
}
::peg::RuleResult::Failed => {
::peg::RuleResult::Failed
}
}
}
::peg::RuleResult::Failed => ::peg::RuleResult::Failed,
}
}
::peg::RuleResult::Failed => ::peg::RuleResult::Failed,
}
}
::peg::RuleResult::Failed => ::peg::RuleResult::Failed,
}
}
::peg::RuleResult::Failed => ::peg::RuleResult::Failed,
}
}
}
fn __parse_cacheflag<'input>(
__input: &'input Input,
__state: &mut ParseState<'input>,
__err_state: &mut ::peg::error::ErrorState,
__pos: usize,
) -> ::peg::RuleResult