public int quantityForNumber()

in library/src/main/java/com/whatsapp/stringpacks/PluralRules.java [70:93]


  public int quantityForNumber(@NonNull @Size(min = 1) String number) {
    final int decimalIndex = number.indexOf('.');
    try {
      if (decimalIndex == -1) {
        final long i = Long.parseLong(number);
        return quantityForNumber(i, i, 0, 0, 0, 0);
      } else {
        final double n = Double.parseDouble(number);
        final long i = decimalIndex == 0 ? 0 : Long.parseLong(number.substring(0, decimalIndex));

        final String fractional = number.substring(decimalIndex + 1);
        final int v = fractional.length();
        int w = v;
        while (w > 0 && fractional.charAt(w - 1) == '0') {
          w--;
        }
        final long f = Long.parseLong(fractional);
        final long t = w == 0 ? 0 : Long.parseLong(fractional.substring(0, w));
        return quantityForNumber(n, i, v, w, f, t);
      }
    } catch (NumberFormatException e) {
      return QUANTITY_OTHER;
    }
  }