;;; Commentary: ;; Datatype for holding timechanges and time offesets. ;; Used both for timespecs from the TZ-database, and for UTC-OFFSET from RFC5545. ;;; Code: (define-module (datetime timespec) :use-module ((hnh util) :select (set unless)) :use-module ((hnh util exceptions) :select (warning)) :use-module (datetime) :use-module (srfi srfi-1) :use-module (srfi srfi-71) :use-module (srfi srfi-9 gnu) :use-module (calp translation) :export (make-timespec timespec? timespec-time timespec-sign timespec-type timespec-zero timespec-add parse-time-spec )) ;; timespec as defined by the TZ-database ;; also used UTC-OFFSET defined by RFC5545. Then type should equal #\z ;; and be ignored. (define-immutable-record-type ; EXPORTED (make-timespec timespec-time sign type) timespec? (timespec-time timespec-time) ;