truncate will return the buffer after pos. * Before: buffer [.............] | pos After: | buffer [.......]. */
(pos uint)
| 657 | buffer [.......]. |
| 658 | */ |
| 659 | func (t *Tokenizer) truncate(pos uint) { |
| 660 | if pos > t.len { |
| 661 | pos = t.len |
| 662 | } |
| 663 | |
| 664 | t.buffer = t.buffer[pos:] |
| 665 | t.len = uint(len(t.buffer)) |
| 666 | if t.len > 0 && t.buffer[t.len-1] == eofRune { |
| 667 | t.len-- |
| 668 | } |
| 669 | t.cursor -= pos |
| 670 | } |
| 671 | |
| 672 | // char returns the rune after the cursor, if out of range, return eofRune. |
| 673 | func (t *Tokenizer) char(after uint) rune { |