public static string GetUnits(this SymbolicExpression sexp) { string units = null; if (sexp.GetAttributeNames().Any(p => string.Equals("units", p))) { units = sexp.GetAttribute("units").AsCharacter().FirstOrDefault(); } switch (units) { case WEEKS: return(WEEKS); case DAYS: return(DAYS); case HOURS: return(HOURS); case MINS: return(MINS); default: return(SECS); } }
public static TimeZoneInfo GetWindowsTimezone(this SymbolicExpression sexp) { if (sexp.GetAttributeNames().Any(p => string.Equals("tzone", p))) { var tzone = sexp.GetAttribute("tzone").AsCharacter().ToArray().FirstOrDefault(); return(tzone.GetWindowsTimezone()); } return(TimeZoneInfo.Local); }
public static bool IsPosixlt(this SymbolicExpression sexp) { return(sexp.GetAttributeNames().Any(p => string.Equals("class", p)) && sexp.GetAttribute("class").AsCharacter().ToArray().Any(p => string.Equals("POSIXlt", p))); }
public static bool IsDiffTime(this SymbolicExpression sexp) { return(sexp.GetAttributeNames().Any(p => string.Equals("class", p)) && sexp.GetAttribute("class").AsCharacter().ToArray().Any(p => string.Equals("difftime", p))); }