code: public final void close() {
          if (m_stream==null) {
              return;
          }
          try {
              m_stream.close();
          }
          catch (IOException e) {
          }
          if (m_nextException==null) {
              m_nextException=new IOException("Closed.");
          }
          m_stream=null;
          resetState();
      }
docs: Closes parser:
  * closes (and nulls) underlying stream
  * nulls dynamic data
  * moves object to 'closed' state, where methods
  return invalid values and next() throws IOException.