diff options
Diffstat (limited to 'psxtime.scm')
-rw-r--r-- | psxtime.scm | 40 |
1 files changed, 21 insertions, 19 deletions
diff --git a/psxtime.scm b/psxtime.scm index 9d94b86..753e81f 100644 --- a/psxtime.scm +++ b/psxtime.scm @@ -8,7 +8,7 @@ ;1. Any copy made of this software must include this copyright notice ;in full. ; -;2. I have made no warrantee or representation that the operation of +;2. I have made no warranty or representation that the operation of ;this software will be error-free, and I am under no obligation to ;provide any services, by way of maintenance, update, or otherwise. ; @@ -19,6 +19,8 @@ ;;; No, it doesn't do leap seconds. +(require-if 'compiling 'time-zone) + (define time:days/month '#(#(31 28 31 30 31 30 31 31 30 31 30 31) ; Normal years. #(31 29 31 30 31 30 31 31 30 31 30 31))) @@ -61,11 +63,11 @@ tm_gmtoff ; Seconds west of UTC. tm_zone ; Timezone abbreviation. ))))))))))) - -(define (time:gmtime t) +;@ +(define (gmtime t) (time:split t 0 0 "GMT")) - -(define (time:localtime caltime . tz) +;@ +(define (localtime caltime . tz) (require 'time-zone) (set! tz (if (null? tz) (tzset) (car tz))) (apply time:split caltime (tz:params caltime tz))) @@ -112,16 +114,16 @@ (loop guess (+ 1 j) (decoder guess)))))))))) - -(define (time:mktime univtime . tz) +;@ +(define (mktime univtime . tz) (require 'time-zone) (set! tz (if (null? tz) (tzset) (car tz))) (+ (gmktime univtime) (tz:std-offset tz))) - -(define (time:gmktime univtime) +;@ +(define (gmktime univtime) (time:invert time:gmtime univtime)) - -(define (time:asctime decoded) +;@ +(define (asctime decoded) (let ((days '#("Sun" "Mon" "Tue" "Wed" "Thu" "Fri" "Sat")) (months '#("Jan" "Feb" "Mar" "Apr" "May" "Jun" "Jul" "Aug" "Sep" "Oct" "Nov" "Dec")) @@ -140,16 +142,16 @@ (number->2digits (vector-ref decoded 0) "0") " " (number->string (+ 1900 (vector-ref decoded 5))) (string #\newline)))) - -(define (time:ctime . args) +;@ +(define (ctime . args) (time:asctime (apply time:localtime args))) - -(define (time:gtime time) +;@ +(define (gtime time) (time:asctime (time:gmtime time))) ;;; GMT Local -- take optional 2nd TZ arg -(define gmtime time:gmtime) (define localtime time:localtime) -(define gmktime time:gmktime) (define mktime time:mktime) -(define gtime time:gtime) (define ctime time:ctime) +(define time:gmtime gmtime) (define time:localtime localtime) +;;(define time:gmktime gmktime) (define time:mktime mktime) +;;(define time:gtime gtime) (define time:ctime ctime) -(define asctime time:asctime) +(define time:asctime asctime) |