1
0
mirror of https://github.com/vlang/v.git synced 2023-08-10 21:13:21 +03:00

Revert "parser: cache tokens (first step)"

This reverts commit 8992707fbb.
This commit is contained in:
Alexander Medvednikov
2019-09-26 06:05:18 +03:00
parent 8992707fbb
commit 0fcdd7db35
5 changed files with 34 additions and 88 deletions

View File

@ -785,6 +785,26 @@ fn (s mut Scanner) ident_char() string {
return if c == '\'' { '\\' + c } else { c }
}
fn (s mut Scanner) peek() Token {
// save scanner state
pos := s.pos
line := s.line_nr
inside_string := s.inside_string
inter_start := s.inter_start
inter_end := s.inter_end
res := s.scan()
tok := res.tok
// restore scanner state
s.pos = pos
s.line_nr = line
s.inside_string = inside_string
s.inter_start = inter_start
s.inter_end = inter_end
return tok
}
fn (s &Scanner) expect(want string, start_pos int) bool {
end_pos := start_pos + want.len
if start_pos < 0 || start_pos >= s.text.len {