Skip to content

Commit b977abc

Browse files
committed
Make peek_prev_nth_token_no_skip -> _ref, reduce visibility to crate
1 parent 357ae5c commit b977abc

File tree

1 file changed

+8
-17
lines changed

1 file changed

+8
-17
lines changed

src/parser/mod.rs

Lines changed: 8 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -4124,22 +4124,13 @@ impl<'a> Parser<'a> {
41244124

41254125
/// Return nth previous token, possibly whitespace
41264126
/// (or [`Token::EOF`] when before the beginning of the stream).
4127-
pub fn peek_prev_nth_token_no_skip(&self, n: usize) -> TokenWithSpan {
4127+
pub(crate) fn peek_prev_nth_token_no_skip_ref(&self, n: usize) -> &TokenWithSpan {
41284128
// 0 = next token, -1 = current token, -2 = previous token
41294129
let peek_index = self.index.saturating_sub(1).saturating_sub(n);
41304130
if peek_index == 0 {
4131-
return TokenWithSpan {
4132-
token: Token::EOF,
4133-
span: Span::empty(),
4134-
};
4131+
return &EOF_TOKEN;
41354132
}
4136-
self.tokens
4137-
.get(peek_index)
4138-
.cloned()
4139-
.unwrap_or(TokenWithSpan {
4140-
token: Token::EOF,
4141-
span: Span::empty(),
4142-
})
4133+
self.tokens.get(peek_index).unwrap_or(&EOF_TOKEN)
41434134
}
41444135

41454136
/// Return true if the next tokens exactly `expected`
@@ -4264,7 +4255,7 @@ impl<'a> Parser<'a> {
42644255
) -> Result<(), ParserError> {
42654256
let mut look_back_count = 1;
42664257
loop {
4267-
let prev_token = self.peek_prev_nth_token_no_skip(look_back_count);
4258+
let prev_token = self.peek_prev_nth_token_no_skip_ref(look_back_count);
42684259
match prev_token.token {
42694260
Token::EOF => break,
42704261
Token::Whitespace(ref w) => match w {
@@ -17780,12 +17771,12 @@ mod tests {
1778017771
}
1778117772

1778217773
#[test]
17783-
fn test_peek_prev_nth_token_no_skip() {
17774+
fn test_peek_prev_nth_token_no_skip_ref() {
1778417775
all_dialects().run_parser_method(
1778517776
"SELECT 1;\n-- a comment\nRAISERROR('test', 16, 0);",
1778617777
|parser| {
1778717778
parser.index = 1;
17788-
assert_eq!(parser.peek_prev_nth_token_no_skip(0), Token::EOF);
17779+
assert_eq!(parser.peek_prev_nth_token_no_skip_ref(0), &Token::EOF);
1778917780
assert_eq!(parser.index, 1);
1779017781
parser.index = 7;
1779117782
assert_eq!(
@@ -17797,8 +17788,8 @@ mod tests {
1779717788
})
1779817789
);
1779917790
assert_eq!(
17800-
parser.peek_prev_nth_token_no_skip(2),
17801-
Token::Whitespace(Whitespace::Newline)
17791+
parser.peek_prev_nth_token_no_skip_ref(2),
17792+
&Token::Whitespace(Whitespace::Newline)
1780217793
);
1780317794
},
1780417795
);

0 commit comments

Comments
 (0)