summaryrefslogtreecommitdiff
path: root/pest_consume_macros/src/make_parser.rs
diff options
context:
space:
mode:
Diffstat (limited to 'pest_consume_macros/src/make_parser.rs')
-rw-r--r--pest_consume_macros/src/make_parser.rs15
1 files changed, 4 insertions, 11 deletions
diff --git a/pest_consume_macros/src/make_parser.rs b/pest_consume_macros/src/make_parser.rs
index 0638c19..8a15deb 100644
--- a/pest_consume_macros/src/make_parser.rs
+++ b/pest_consume_macros/src/make_parser.rs
@@ -6,7 +6,7 @@ use syn::parse::{Parse, ParseStream, Result};
use syn::spanned::Spanned;
use syn::{
parse_quote, Error, Expr, FnArg, Ident, ImplItem, ImplItemMethod, ItemImpl,
- LitBool, Pat, Token,
+ LitBool, Pat, Path, Token,
};
mod kw {
@@ -14,8 +14,8 @@ mod kw {
}
struct MakeParserAttrs {
- parser: Ident,
- rule_enum: Ident,
+ parser: Path,
+ rule_enum: Path,
}
struct AliasArgs {
@@ -159,7 +159,7 @@ fn parse_fn<'a>(
})
}
-fn apply_special_attrs(f: &mut ParsedFn, rule_enum: &Ident) -> Result<()> {
+fn apply_special_attrs(f: &mut ParsedFn, rule_enum: &Path) -> Result<()> {
let function = &mut *f.function;
let fn_name = &f.fn_name;
let input_arg = &f.input_arg;
@@ -170,13 +170,6 @@ fn apply_special_attrs(f: &mut ParsedFn, rule_enum: &Ident) -> Result<()> {
);
// `prec_climb` attr
- let _: () = function
- .attrs
- .drain_filter(|attr| attr.path.is_ident("entrypoint"))
- .map(|_| ())
- .collect();
-
- // `prec_climb` attr
let prec_climb_attrs: Vec<_> = function
.attrs
.drain_filter(|attr| attr.path.is_ident("prec_climb"))