code: private void advance() {
          try {
              if (tok == null)
                  tok = source.token();
          } catch (LexerException e) {
              throw new IllegalStateException(e);
          } catch (IOException e) {
              throw new IllegalStateException(e);
          }
      }
docs: Rethrows IOException inside IllegalStateException.