예제 #1
0
        public static int Parse(string /*!*/ str, DateTime utcStart, out string error)
        {
            Debug.Assert(str != null);

            StrToTime.Scanner scanner = new StrToTime.Scanner(new StringReader(str.ToLower()));
            error = null;

            for (; ;)
            {
                Tokens token = scanner.GetNextToken();

                if (token == Tokens.ERROR || scanner.Errors > 0)
                {
                    error = LibResources.GetString("parse_error", scanner.Position, str.Substring(scanner.Position));
                    return(0);
                }

                if (token == Tokens.EOF)
                {
                    return(scanner.Time.GetUnixTimeStamp(utcStart, out error));
                }
            }
            //error = "unknown error of datetime parsing";
            //return 0;
        }
예제 #2
0
		public static int Parse(string/*!*/ str, DateTime utcStart, out string error)
		{
			Debug.Assert(str != null);

			StrToTime.Scanner scanner = new StrToTime.Scanner(new StringReader(str.ToLower()));
			error = null;

			for (; ; )
			{
				Tokens token = scanner.GetNextToken();

				if (token == Tokens.ERROR || scanner.Errors > 0)
				{
					error = LibResources.GetString("parse_error", scanner.Position, str.Substring(scanner.Position));
					return 0;
				}

				if (token == Tokens.EOF)
					return scanner.Time.GetUnixTimeStamp(utcStart, out error);
			}
			//error = "unknown error of datetime parsing";
			//return 0;
		}