public long readNumber()

in metrics/src/main/java/com/facebook/battery/metrics/core/ProcFileReader.java [177:205]


  public long readNumber() {
    long sign = 1;
    long result = 0;
    boolean isFirstRun = true;

    while (hasNext()) {
      next();
      if (Character.isDigit(mChar)) {
        result = result * 10 + (mChar - '0');
      } else if (isFirstRun) {
        if (mChar == '-') {
          sign = -1;
        } else {
          throw new ParseException("Couldn't read number!");
        }
      } else {
        rewind();
        break;
      }

      isFirstRun = false;
    }

    if (isFirstRun) {
      throw new ParseException("Couldn't read number because the file ended!");
    }

    return sign * result;
  }