From 50f586844c096d98a7d5b07332a6a77dac4ec933 Mon Sep 17 00:00:00 2001 From: Nadrieril Date: Tue, 10 Sep 2019 17:34:59 +0200 Subject: Rename various bits of the pest_consume API --- pest_consume_macros/src/match_inputs.rs | 27 +++++++++++++-------------- 1 file changed, 13 insertions(+), 14 deletions(-) (limited to 'pest_consume_macros/src/match_inputs.rs') diff --git a/pest_consume_macros/src/match_inputs.rs b/pest_consume_macros/src/match_inputs.rs index 34bfd38..773f806 100644 --- a/pest_consume_macros/src/match_inputs.rs +++ b/pest_consume_macros/src/match_inputs.rs @@ -23,7 +23,7 @@ enum ChildrenBranchPatternItem { #[derive(Debug, Clone)] struct ParseChildrenInput { - consumer: Type, + parser: Type, input_expr: Expr, branches: Punctuated, } @@ -66,12 +66,12 @@ impl Parse for ChildrenBranchPatternItem { impl Parse for ParseChildrenInput { fn parse(input: ParseStream) -> Result { - let consumer = if input.peek(token::Lt) { + let parser = if input.peek(token::Lt) { let _: token::Lt = input.parse()?; - let consumer = input.parse()?; + let parser = input.parse()?; let _: token::Gt = input.parse()?; let _: Token![;] = input.parse()?; - consumer + parser } else { parse_quote!(Self) }; @@ -80,7 +80,7 @@ impl Parse for ParseChildrenInput { let branches = Punctuated::parse_terminated(input)?; Ok(ParseChildrenInput { - consumer, + parser, input_expr, branches, }) @@ -90,13 +90,12 @@ impl Parse for ParseChildrenInput { fn make_parser_branch( branch: &ChildrenBranch, i_inputs: &Ident, - consumer: &Type, + parser: &Type, ) -> Result { use ChildrenBranchPatternItem::{Multiple, Single}; let body = &branch.body; - let aliased_rule = - quote!(<#consumer as ::pest_consume::PestConsumer>::AliasedRule); + let aliased_rule = quote!(<#parser as ::pest_consume::Parser>::AliasedRule); // Convert the input pattern into a pattern-match on the Rules of the children. This uses // slice_patterns. @@ -156,7 +155,7 @@ fn make_parser_branch( let mut parses = Vec::new(); for (rule_name, binder) in singles_before_multiple.into_iter() { parses.push(quote!( - let #binder = #consumer::#rule_name( + let #binder = #parser::#rule_name( #i_inputs.next().unwrap() )?; )) @@ -165,7 +164,7 @@ fn make_parser_branch( // only the unmatched inputs are left for the variable-length pattern, if any. for (rule_name, binder) in singles_after_multiple.into_iter().rev() { parses.push(quote!( - let #binder = #consumer::#rule_name( + let #binder = #parser::#rule_name( #i_inputs.next_back().unwrap() )?; )) @@ -173,7 +172,7 @@ fn make_parser_branch( if let Some((rule_name, binder)) = multiple { parses.push(quote!( let #binder = #i_inputs - .map(|i| #consumer::#rule_name(i)) + .map(|i| #parser::#rule_name(i)) .collect::, _>>()? .into_iter(); )) @@ -196,17 +195,17 @@ pub fn match_inputs( let i_inputs = Ident::new("___inputs", Span::call_site()); let input_expr = &input.input_expr; - let consumer = &input.consumer; + let parser = &input.parser; let branches = input .branches .iter() - .map(|br| make_parser_branch(br, &i_inputs, consumer)) + .map(|br| make_parser_branch(br, &i_inputs, parser)) .collect::>>()?; Ok(quote!({ #[allow(unused_mut)] let mut #i_inputs = #input_expr; - let #i_input_rules = #i_inputs.aliased_rules::<#consumer>(); + let #i_input_rules = #i_inputs.aliased_rules::<#parser>(); #[allow(unreachable_code)] match #i_input_rules.as_slice() { -- cgit v1.2.3