This is not a reader like e.g. FileReader. It rather reads the whole data until the end from a source reader into memory and besides that it maintains the current position (like a reader) it provides String like methods which conveniently let you navigate (usually forward) in the stream.
Because the source data are expected to be text, the line and column numbers are maintained as well for location precise error messages. But it does NOT automatically update the line and column numbers. You must call {@link #countLinesTo(int)}
@author Juergen Donnerstag