diff options
author | Christopher Durham <[email protected]> | 2018-01-27 23:31:23 +0000 |
---|---|---|
committer | Christopher Durham <[email protected]> | 2018-01-27 23:31:23 +0000 |
commit | 4de3c97b2afea55834cd16368f950133459d8c73 (patch) | |
tree | 9091b5dc1b116e5cbb47a535ffa922e66776c800 /src/parser/mod.rs | |
parent | 357cd3358167daa38f3ff34d225e1501faff6015 (diff) |
Enforce rustfmt format
Diffstat (limited to 'src/parser/mod.rs')
-rw-r--r-- | src/parser/mod.rs | 30 |
1 files changed, 16 insertions, 14 deletions
diff --git a/src/parser/mod.rs b/src/parser/mod.rs index 5ec4b8e93..d04ed1e75 100644 --- a/src/parser/mod.rs +++ b/src/parser/mod.rs | |||
@@ -1,4 +1,4 @@ | |||
1 | use {Token, File, FileBuilder, Sink, SyntaxKind}; | 1 | use {File, FileBuilder, Sink, SyntaxKind, Token}; |
2 | 2 | ||
3 | use syntax_kinds::*; | 3 | use syntax_kinds::*; |
4 | use tree::TOMBSTONE; | 4 | use tree::TOMBSTONE; |
@@ -6,17 +6,12 @@ use tree::TOMBSTONE; | |||
6 | mod event_parser; | 6 | mod event_parser; |
7 | use self::event_parser::Event; | 7 | use self::event_parser::Event; |
8 | 8 | ||
9 | |||
10 | pub fn parse(text: String, tokens: &[Token]) -> File { | 9 | pub fn parse(text: String, tokens: &[Token]) -> File { |
11 | let events = event_parser::parse(&text, tokens); | 10 | let events = event_parser::parse(&text, tokens); |
12 | from_events_to_file(text, tokens, events) | 11 | from_events_to_file(text, tokens, events) |
13 | } | 12 | } |
14 | 13 | ||
15 | fn from_events_to_file( | 14 | fn from_events_to_file(text: String, tokens: &[Token], events: Vec<Event>) -> File { |
16 | text: String, | ||
17 | tokens: &[Token], | ||
18 | events: Vec<Event>, | ||
19 | ) -> File { | ||
20 | let mut builder = FileBuilder::new(text); | 15 | let mut builder = FileBuilder::new(text); |
21 | let mut idx = 0; | 16 | let mut idx = 0; |
22 | 17 | ||
@@ -26,18 +21,23 @@ fn from_events_to_file( | |||
26 | for (i, event) in events.iter().enumerate() { | 21 | for (i, event) in events.iter().enumerate() { |
27 | if holes.last() == Some(&i) { | 22 | if holes.last() == Some(&i) { |
28 | holes.pop(); | 23 | holes.pop(); |
29 | continue | 24 | continue; |
30 | } | 25 | } |
31 | 26 | ||
32 | match event { | 27 | match event { |
33 | &Event::Start { kind: TOMBSTONE, .. } => (), | 28 | &Event::Start { |
29 | kind: TOMBSTONE, .. | ||
30 | } => (), | ||
34 | 31 | ||
35 | &Event::Start { .. } => { | 32 | &Event::Start { .. } => { |
36 | forward_parents.clear(); | 33 | forward_parents.clear(); |
37 | let mut idx = i; | 34 | let mut idx = i; |
38 | loop { | 35 | loop { |
39 | let (kind, fwd) = match events[idx] { | 36 | let (kind, fwd) = match events[idx] { |
40 | Event::Start { kind, forward_parent } => (kind, forward_parent), | 37 | Event::Start { |
38 | kind, | ||
39 | forward_parent, | ||
40 | } => (kind, forward_parent), | ||
41 | _ => unreachable!(), | 41 | _ => unreachable!(), |
42 | }; | 42 | }; |
43 | forward_parents.push((idx, kind)); | 43 | forward_parents.push((idx, kind)); |
@@ -64,8 +64,11 @@ fn from_events_to_file( | |||
64 | } | 64 | } |
65 | } | 65 | } |
66 | builder.finish_internal() | 66 | builder.finish_internal() |
67 | }, | 67 | } |
68 | &Event::Token { kind: _, mut n_raw_tokens } => loop { | 68 | &Event::Token { |
69 | kind: _, | ||
70 | mut n_raw_tokens, | ||
71 | } => loop { | ||
69 | let token = tokens[idx]; | 72 | let token = tokens[idx]; |
70 | if !is_insignificant(token.kind) { | 73 | if !is_insignificant(token.kind) { |
71 | n_raw_tokens -= 1; | 74 | n_raw_tokens -= 1; |
@@ -76,8 +79,7 @@ fn from_events_to_file( | |||
76 | break; | 79 | break; |
77 | } | 80 | } |
78 | }, | 81 | }, |
79 | &Event::Error { ref message } => | 82 | &Event::Error { ref message } => builder.error().message(message.clone()).emit(), |
80 | builder.error().message(message.clone()).emit(), | ||
81 | } | 83 | } |
82 | } | 84 | } |
83 | builder.finish() | 85 | builder.finish() |