aboutsummaryrefslogtreecommitdiff
path: root/src/parser/mod.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/parser/mod.rs')
-rw-r--r--src/parser/mod.rs24
1 files changed, 0 insertions, 24 deletions
diff --git a/src/parser/mod.rs b/src/parser/mod.rs
deleted file mode 100644
index 8631baa2e..000000000
--- a/src/parser/mod.rs
+++ /dev/null
@@ -1,24 +0,0 @@
1#[macro_use]
2mod token_set;
3mod event;
4mod grammar;
5mod input;
6mod parser;
7
8use {lexer::Token, parser::event::process};
9
10pub(crate) use self::event::Sink;
11
12/// Parse a sequence of tokens into the representative node tree
13pub(crate) fn parse<S: Sink>(text: String, tokens: &[Token]) -> S::Tree {
14 let events = {
15 let input = input::ParserInput::new(&text, tokens);
16 let parser_impl = parser::imp::ParserImpl::new(&input);
17 let mut parser = parser::Parser(parser_impl);
18 grammar::file(&mut parser);
19 parser.0.into_events()
20 };
21 let mut sink = S::new(text);
22 process(&mut sink, tokens, events);
23 sink.finish()
24}