Only one slice can be built at any given time; before beginning a new slice,
finish the previous one (if any).
The slice starts at the current position in the Reader buffer. It can only be
extended up to the current position in the buffer; Reader methods get() and
forward() move the position. E.g. it is valid to extend a slice by write()-ing
a string just returned by get() - but not one returned by prefix() unless the
position has changed since the prefix() call.
Begin building a slice.
Only one slice can be built at any given time; before beginning a new slice, finish the previous one (if any).
The slice starts at the current position in the Reader buffer. It can only be extended up to the current position in the buffer; Reader methods get() and forward() move the position. E.g. it is valid to extend a slice by write()-ing a string just returned by get() - but not one returned by prefix() unless the position has changed since the prefix() call.