Did you know ... | Search Documentation: |
Pack julian -- prolog/julian.pl |
Here are some acceptable values of Form.
today
- the set of all nanoseconds in the local daynow
- the current nanoseconddow(tuesday)
- the set of all Tuesdays in historydow([saturday,sunday])
- set of all weekends in historyweekday
- like dow([monday,...,friday])
but fastermonth(july)
- the set of all Julys in historymonth([june,july])
- the set of all Junes and Julys everunix(EpochSeconds)
- floating point seconds since the Unix
epoch[foo,bar]
- both foo
and bar
forms applygregorian(Year,Month,Day)
- all seconds in a Gregorian
date of the given form. For example, gregorian(_,3,_)
represents the set of all the months of March in history.Year-Month-Day
- same as gregorian(Year,Month,Day)
Hours:Minutes:Seconds
midnight
- shortcut for 00:00:00
noon
- shortcut for 12:00:00
final_moment
- shortcut for 23:59:59.99999999999999
after(Form)
- all times after Formbefore(Form)
- all times before Formfuture
- alias for after(now)
past
- alias for before(now)
rfc3339(Text)
- the nanosecond indicated by the RFC 3339
date string. Text can be atom or codes or string.nth(N,Form)
- Nth day (1-based) that matches Form in the
month. N can be a list of days in which case form_time/2
is multi. This form isn't yet as flexible in different modes
as I'd like.true
- noop constraint that matches all datesmjn(Mjn)
- modified Julian nanosecondsThis predicate is multifile because other modules can support different calendars, different holiday schedules, extra sugar, etc.
form_time([1979-05-01,dow(tuesday)])
A and B can be given as datetime values or forms. For example, this is a legitimate goal:
compare_time(Order, now, unix(1375475330.414)).
days(Days)
- integer days (ignores all time components)ns(Nanoseconds)
- integer nanosecondsms(Millis)
- integer millisecondss(Seconds)
- integer seconds