Definition at line 1940 of file Utf8Parser.cs.
1941 {
1942 int num;
1943 int num2;
1944 int num4;
1945 int num3;
1947 {
1948 num = 1;
1949 num2 = 0;
1951 if (num3 == 45)
1952 {
1953 num = -1;
1954 num2++;
1955 if ((uint)num2 >= (uint)
source.Length)
1956 {
1957 goto IL_00ff;
1958 }
1960 }
1961 else if (num3 == 43)
1962 {
1963 num2++;
1964 if ((uint)num2 >= (uint)
source.Length)
1965 {
1966 goto IL_00ff;
1967 }
1969 }
1970 if (num3 != 46)
1971 {
1972 if (ParserHelpers.IsDigit(num3))
1973 {
1974 num4 = num3 - 48;
1975 while (true)
1976 {
1977 num2++;
1978 if ((uint)num2 >= (uint)
source.Length)
1979 {
1980 break;
1981 }
1983 if (num3 == 44)
1984 {
1985 continue;
1986 }
1987 if (num3 == 46)
1988 {
1989 goto IL_00da;
1990 }
1991 if (!ParserHelpers.IsDigit(num3))
1992 {
1993 break;
1994 }
1995 num4 = num4 * 10 + num3 - 48;
1996 if (num4 <= 32767 + (-1 * num + 1) / 2)
1997 {
1998 continue;
1999 }
2000 goto IL_00ff;
2001 }
2002 goto IL_0107;
2003 }
2004 }
2005 else
2006 {
2007 num4 = 0;
2008 num2++;
2009 if ((uint)num2 < (uint)
source.Length &&
source[num2] == 48)
2010 {
2011 goto IL_00da;
2012 }
2013 }
2014 }
2015 goto IL_00ff;
2016 IL_00ff:
2017 bytesConsumed = 0;
2019 return false;
2020 IL_00f7:
2021 if (ParserHelpers.IsDigit(num3))
2022 {
2023 goto IL_00ff;
2024 }
2025 goto IL_0107;
2026 IL_00da:
2027 while (true)
2028 {
2029 num2++;
2030 if ((uint)num2 >= (uint)
source.Length)
2031 {
2032 break;
2033 }
2035 if (num3 == 48)
2036 {
2037 continue;
2038 }
2039 goto IL_00f7;
2040 }
2041 goto IL_0107;
2042 IL_0107:
2043 bytesConsumed = num2;
2045 return true;
2046 }
References System.Buffers.Text.ParserHelpers.IsDigit(), System.source, and System.value.
Referenced by System.Buffers.Text.Utf8Parser.TryParse().