question: private void parseToken ( String token ) { int len = token . length ( ) ; for ( int i = 0 ; i < len ; i ++ ) { int chr = sr . read ( ) ; if ( chr == - 1 ) { throw new IllegalArgumentException ( "EOF reached while reading token: " + token ) ; } chr = Character . toLowerCase ( ( char ) chr ) ; int loTokenChar = token . charAt ( i ) ; if ( loTokenChar != chr ) { throw new IllegalArgumentException ( "Expected token: " + token + " at position " + sr . getPosition ( ) ) ; } } }
target:  Return the specified token from the reader. If it is not found, throw an IOException indicating that. Converting to chr to (char) chr is acceptable because the 'tokens' allowed in a JSON input stream (true, false, null) are all ASCII.