diff options
Diffstat (limited to 'crates/ra_syntax/src/parsing/parser_impl.rs')
-rw-r--r-- | crates/ra_syntax/src/parsing/parser_impl.rs | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/crates/ra_syntax/src/parsing/parser_impl.rs b/crates/ra_syntax/src/parsing/parser_impl.rs index c0d2b6ec1..96de32fc2 100644 --- a/crates/ra_syntax/src/parsing/parser_impl.rs +++ b/crates/ra_syntax/src/parsing/parser_impl.rs | |||
@@ -54,7 +54,7 @@ pub(super) fn parse_with<S: TreeSink>( | |||
54 | ) -> S::Tree { | 54 | ) -> S::Tree { |
55 | let mut events = { | 55 | let mut events = { |
56 | let input = input::ParserInput::new(text, tokens); | 56 | let input = input::ParserInput::new(text, tokens); |
57 | let parser_impl = ParserImpl::new(input); | 57 | let parser_impl = ParserImpl::new(&input); |
58 | let mut parser_api = Parser(parser_impl); | 58 | let mut parser_api = Parser(parser_impl); |
59 | parser(&mut parser_api); | 59 | parser(&mut parser_api); |
60 | parser_api.0.into_events() | 60 | parser_api.0.into_events() |
@@ -65,15 +65,15 @@ pub(super) fn parse_with<S: TreeSink>( | |||
65 | /// Implementation details of `Parser`, extracted | 65 | /// Implementation details of `Parser`, extracted |
66 | /// to a separate struct in order not to pollute | 66 | /// to a separate struct in order not to pollute |
67 | /// the public API of the `Parser`. | 67 | /// the public API of the `Parser`. |
68 | pub(super) struct ParserImpl<S> { | 68 | pub(super) struct ParserImpl<'a> { |
69 | token_source: S, | 69 | token_source: &'a dyn TokenSource, |
70 | pos: InputPosition, | 70 | pos: InputPosition, |
71 | events: Vec<Event>, | 71 | events: Vec<Event>, |
72 | steps: Cell<u32>, | 72 | steps: Cell<u32>, |
73 | } | 73 | } |
74 | 74 | ||
75 | impl<S: TokenSource> ParserImpl<S> { | 75 | impl<'a> ParserImpl<'a> { |
76 | fn new(token_source: S) -> ParserImpl<S> { | 76 | fn new(token_source: &'a dyn TokenSource) -> ParserImpl<'a> { |
77 | ParserImpl { | 77 | ParserImpl { |
78 | token_source, | 78 | token_source, |
79 | pos: InputPosition::new(), | 79 | pos: InputPosition::new(), |