mirror of
https://github.com/Ed94/Odin.git
synced 2026-08-01 20:28:15 +00:00
Add scan_peek_n to package text/scanner #800
This commit is contained in:
@@ -175,6 +175,16 @@ peek_n :: proc(s: ^Scanner, n: int) -> rune {
|
|||||||
return ch;
|
return ch;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
scan_peek_n :: proc(s: ^Scanner, n: int) -> (tok: rune) {
|
||||||
|
assert(n >= 0);
|
||||||
|
prev_s := s^;
|
||||||
|
for in 0..<n {
|
||||||
|
tok = scan(s);
|
||||||
|
}
|
||||||
|
tok = scan(s);
|
||||||
|
s^ = prev_s;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
error :: proc(s: ^Scanner, msg: string) {
|
error :: proc(s: ^Scanner, msg: string) {
|
||||||
s.error_count += 1;
|
s.error_count += 1;
|
||||||
|
|||||||
Reference in New Issue
Block a user