code: public char next() throws JSONException {
  
          if (m_useLastChar) {
              m_useLastChar = false;
              if (m_lastChar != 0) {
                  m_index += 1;
              }
              return m_lastChar;
          }
          int c;
          try {
              c = m_reader.read();
          } catch (IOException exc) {
              throw new JSONException(exc);
          }
  
          if (c <= 0) { // End of stream
              m_lastChar = 0;
              return 0;
          }
          m_index += 1;
          m_lastChar = (char)c;
          return m_lastChar;
      }
docs: Get the next character in the source string.<p>
  
  @return the next character, or 0 if past the end of the source string
  @throws JSONException if something goes wrong