private static bool ParseExactDigits(ref TimeSpanTokenizer tokenizer, int minDigitLength, int maxDigitLength, out int zeroes, out int result) { result = 0; zeroes = 0; int num = 0; while (num < maxDigitLength) { char nextChar = tokenizer.NextChar; if ((nextChar < '0') || (nextChar > '9')) { tokenizer.BackOne(); break; } result = (result * 10) + (nextChar - '0'); if (result == 0) { zeroes++; } num++; } return (num >= minDigitLength); }
private static Boolean ParseExactDigits(ref TimeSpanTokenizer tokenizer, int minDigitLength, int maxDigitLength, out int zeroes, out int result) { result = 0; zeroes = 0; int tokenLength = 0; while (tokenLength < maxDigitLength) { char ch = tokenizer.NextChar; if (ch < '0' || ch > '9') { tokenizer.BackOne(); break; } result = result * 10 + (ch - '0'); if (result == 0) zeroes++; tokenLength++; } return (tokenLength >= minDigitLength); }