File tree Expand file tree Collapse file tree 3 files changed +53
-1
lines changed Expand file tree Collapse file tree 3 files changed +53
-1
lines changed Original file line number Diff line number Diff line change @@ -50,7 +50,7 @@ pub fn (mut ss TextScanner) next() int {
50
50
// `skip()` does not return a result.
51
51
@[inline]
52
52
pub fn (mut ss TextScanner) skip () {
53
- if ss.pos + 1 < ss.ilen {
53
+ if ss.pos < ss.ilen {
54
54
ss.pos++
55
55
}
56
56
}
Original file line number Diff line number Diff line change @@ -31,13 +31,39 @@ fn test_skip() {
31
31
s.skip ()
32
32
assert s.next () == `c`
33
33
assert s.next () == - 1
34
+
35
+ s.reset ()
36
+ assert s.peek () == `a`
37
+ s.skip ()
38
+ assert s.peek () == `b`
39
+ s.skip ()
40
+ assert s.peek () == `c`
41
+ s.skip ()
42
+ assert s.peek () == - 1
34
43
}
35
44
36
45
fn test_skip_n () {
37
46
mut s := textscanner.new ('abc' )
38
47
s.skip_n (2 )
39
48
assert s.next () == `c`
40
49
assert s.next () == - 1
50
+
51
+ s.reset ()
52
+ assert s.peek () == `a`
53
+ s.skip_n (2 )
54
+ assert s.peek () == `c`
55
+ s.skip_n (2 )
56
+ assert s.peek () == - 1
57
+
58
+ s.reset ()
59
+ assert s.peek () == `a`
60
+ s.skip_n (3 )
61
+ assert s.peek () == - 1
62
+
63
+ s.reset ()
64
+ assert s.peek () == `a`
65
+ s.skip_n (4 )
66
+ assert s.peek () == - 1
41
67
}
42
68
43
69
fn test_peek () {
Original file line number Diff line number Diff line change @@ -31,13 +31,39 @@ fn test_skip() {
31
31
s.skip ()
32
32
assert s.next () == `c`
33
33
assert s.next () == - 1
34
+
35
+ s.reset ()
36
+ assert s.peek () == `a`
37
+ s.skip ()
38
+ assert s.peek () == `b`
39
+ s.skip ()
40
+ assert s.peek () == `c`
41
+ s.skip ()
42
+ assert s.peek () == - 1
34
43
}
35
44
36
45
fn test_skip_n () {
37
46
mut s := textscanner.new ('abc' )
38
47
s.skip_n (2 )
39
48
assert s.next () == `c`
40
49
assert s.next () == - 1
50
+
51
+ s.reset ()
52
+ assert s.peek () == `a`
53
+ s.skip_n (2 )
54
+ assert s.peek () == `c`
55
+ s.skip_n (2 )
56
+ assert s.peek () == - 1
57
+
58
+ s.reset ()
59
+ assert s.peek () == `a`
60
+ s.skip_n (3 )
61
+ assert s.peek () == - 1
62
+
63
+ s.reset ()
64
+ assert s.peek () == `a`
65
+ s.skip_n (4 )
66
+ assert s.peek () == - 1
41
67
}
42
68
43
69
fn test_peek () {
You can’t perform that action at this time.
0 commit comments