Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ GetIsInvalidTime()

static bool System.TimeZoneInfo.GetIsInvalidTime ( DateTime time,
AdjustmentRule rule,
DaylightTimeStruct daylightTime )
inlinestaticprivate

Definition at line 1934 of file TimeZoneInfo.cs.

1935 {
1936 bool result = false;
1937 if (rule == null || rule.DaylightDelta == TimeSpan.Zero)
1938 {
1939 return result;
1940 }
1943 if (rule.DaylightDelta < TimeSpan.Zero)
1944 {
1945 if (rule.IsEndDateMarkerForEndOfYear())
1946 {
1947 return false;
1948 }
1949 dateTime = daylightTime.End;
1950 dateTime2 = daylightTime.End - rule.DaylightDelta;
1951 }
1952 else
1953 {
1954 if (rule.IsStartDateMarkerForBeginningOfYear())
1955 {
1956 return false;
1957 }
1958 dateTime = daylightTime.Start;
1959 dateTime2 = daylightTime.Start + rule.DaylightDelta;
1960 }
1961 result = time >= dateTime && time < dateTime2;
1962 if (!result && dateTime.Year != dateTime2.Year)
1963 {
1964 try
1965 {
1966 DateTime dateTime3 = dateTime.AddYears(1);
1967 DateTime dateTime4 = dateTime2.AddYears(1);
1968 result = time >= dateTime3 && time < dateTime4;
1969 }
1970 catch (ArgumentOutOfRangeException)
1971 {
1972 }
1973 if (!result)
1974 {
1975 try
1976 {
1977 DateTime dateTime3 = dateTime.AddYears(-1);
1978 DateTime dateTime4 = dateTime2.AddYears(-1);
1979 result = time >= dateTime3 && time < dateTime4;
1980 }
1981 catch (ArgumentOutOfRangeException)
1982 {
1983 }
1984 }
1985 }
1986 return result;
1987 }

References System.Runtime.Serialization.Dictionary, and System.TimeSpan.Zero.

Referenced by System.TimeZoneInfo.ConvertTime(), and System.TimeZoneInfo.IsInvalidTime().