System.DateTimeParse.ParseDigits C# (CSharp) Method

ParseDigits() static private method

static private ParseDigits ( __DTString &str, int minDigitLen, int maxDigitLen, int &result ) : bool
str __DTString
minDigitLen int
maxDigitLen int
result int
return bool
        internal static bool ParseDigits(ref __DTString str, int minDigitLen, int maxDigitLen, out int result) {
            BCLDebug.Assert(minDigitLen > 0, "minDigitLen > 0");
            BCLDebug.Assert(maxDigitLen < 9, "maxDigitLen < 9");
            BCLDebug.Assert(minDigitLen <= maxDigitLen, "minDigitLen <= maxDigitLen");
            result = 0;
            int startingIndex = str.Index;
            int tokenLength = 0;
            while (tokenLength < maxDigitLen) {
                if (!str.GetNextDigit()) {
                    str.Index--;
                    break;
                }
                result = result * 10 + str.GetDigit();
                tokenLength++;
            }
            if (tokenLength < minDigitLen) {
                str.Index = startingIndex;
                return false;
            }
            return true;
        }

Same methods

DateTimeParse::ParseDigits ( __DTString &str, int digitLen, int &result ) : bool