From c89abd42621daff2d652566be4e9e4789599268c Mon Sep 17 00:00:00 2001 From: Aleksey Kladov Date: Mon, 2 Sep 2019 18:51:03 +0300 Subject: simplify --- crates/ra_mbe/src/tt_cursor.rs | 46 ++++++------------------------------------ 1 file changed, 6 insertions(+), 40 deletions(-) (limited to 'crates/ra_mbe/src/tt_cursor.rs') diff --git a/crates/ra_mbe/src/tt_cursor.rs b/crates/ra_mbe/src/tt_cursor.rs index 468276397..a69c006c7 100644 --- a/crates/ra_mbe/src/tt_cursor.rs +++ b/crates/ra_mbe/src/tt_cursor.rs @@ -1,5 +1,6 @@ -use crate::subtree_parser::Parser; -use crate::ParseError; +use crate::{subtree_parser::Parser, ParseError}; + +use ra_parser::FragmentKind; use smallvec::{smallvec, SmallVec}; #[derive(Debug, Clone)] @@ -98,44 +99,9 @@ impl<'a> TtCursor<'a> { }) } - pub(crate) fn eat_path(&mut self) -> Option { - let parser = Parser::new(&mut self.pos, self.subtree); - parser.parse_path() - } - - pub(crate) fn eat_expr(&mut self) -> Option { - let parser = Parser::new(&mut self.pos, self.subtree); - parser.parse_expr() - } - - pub(crate) fn eat_ty(&mut self) -> Option { - let parser = Parser::new(&mut self.pos, self.subtree); - parser.parse_ty() - } - - pub(crate) fn eat_pat(&mut self) -> Option { - let parser = Parser::new(&mut self.pos, self.subtree); - parser.parse_pat() - } - - pub(crate) fn eat_stmt(&mut self) -> Option { - let parser = Parser::new(&mut self.pos, self.subtree); - parser.parse_stmt() - } - - pub(crate) fn eat_block(&mut self) -> Option { - let parser = Parser::new(&mut self.pos, self.subtree); - parser.parse_block() - } - - pub(crate) fn eat_meta(&mut self) -> Option { - let parser = Parser::new(&mut self.pos, self.subtree); - parser.parse_meta() - } - - pub(crate) fn eat_item(&mut self) -> Option { + pub(crate) fn eat_fragment(&mut self, fragment_kind: FragmentKind) -> Option { let parser = Parser::new(&mut self.pos, self.subtree); - parser.parse_item() + parser.parse_fragment(fragment_kind) } pub(crate) fn eat_lifetime(&mut self) -> Option { @@ -154,7 +120,7 @@ impl<'a> TtCursor<'a> { let old_pos = self.pos; let parser = Parser::new(&mut self.pos, self.subtree); - let res = parser.parse_vis(); + let res = parser.parse_fragment(FragmentKind::Visibility); if res.is_none() { self.pos = old_pos; } -- cgit v1.2.3