~ chicken-core (chicken-5) cd7d9d6cf1ac0fb2ec1a02a9c23362edd72797ac
commit cd7d9d6cf1ac0fb2ec1a02a9c23362edd72797ac
Author: felix <felix@call-with-current-continuation.org>
AuthorDate: Mon Nov 16 11:37:02 2009 +0100
Commit: felix <felix@call-with-current-continuation.org>
CommitDate: Sun Nov 22 11:12:18 2009 +0100
make seconds argument to seconds->... procedures optional (suggested by mario)
Signed-off-by: felix <felix@call-with-current-continuation.org>
diff --git a/posixunix.scm b/posixunix.scm
index 87e37882..04f3e594 100644
--- a/posixunix.scm
+++ b/posixunix.scm
@@ -1953,17 +1953,17 @@ EOF
(when (fx< (##sys#size tm) 10)
(##sys#error loc "time vector too short" tm) ) )
-(define (seconds->local-time secs)
+(define (seconds->local-time #!optional (secs (current-seconds)))
(##sys#check-number secs 'seconds->local-time)
(##sys#decode-seconds secs #f) )
-(define (seconds->utc-time secs)
+(define (seconds->utc-time #!optional (secs (current-seconds)))
(##sys#check-number secs 'seconds->utc-time)
(##sys#decode-seconds secs #t) )
(define seconds->string
(let ([ctime (foreign-lambda c-string "C_ctime" integer)])
- (lambda (secs)
+ (lambda (#!optional (secs (current-seconds)))
(##sys#check-number secs 'seconds->string)
(let ([str (ctime secs)])
(if str
diff --git a/posixwin.scm b/posixwin.scm
index 40fed902..a551535b 100644
--- a/posixwin.scm
+++ b/posixwin.scm
@@ -1695,17 +1695,17 @@ EOF
(when (fx< (##sys#size tm) 10)
(##sys#error loc "time vector too short" tm) ) )
-(define (seconds->local-time secs)
+(define (seconds->local-time #!optional (secs (current-seconds)))
(##sys#check-number secs 'seconds->local-time)
(##sys#decode-seconds secs #f) )
-(define (seconds->utc-time secs)
+(define (seconds->utc-time #!optional (secs (current-seconds)))
(##sys#check-number secs 'seconds->utc-time)
(##sys#decode-seconds secs #t) )
(define seconds->string
(let ([ctime (foreign-lambda c-string "C_ctime" integer)])
- (lambda (secs)
+ (lambda (#!optional (secs (current-seconds)))
(let ([str (ctime secs)])
(if str
(##sys#substring str 0 (fx- (##sys#size str) 1))
diff --git a/types.db b/types.db
index 5239e2fe..8ff5d57f 100644
--- a/types.db
+++ b/types.db
@@ -805,9 +805,9 @@
(prot/write fixnum)
(read-symbolic-link (procedure read-symbolic-link (string) string))
(regular-file? (procedure regular-file? (string) boolean))
-(seconds->local-time (procedure seconds->local-time (number) vector))
-(seconds->string (procedure seconds->string (number) string))
-(seconds->utc-time (procedure seconds->utc-time (number) vector))
+(seconds->local-time (procedure seconds->local-time (#!optional number) vector))
+(seconds->string (procedure seconds->string (#!optional number) string))
+(seconds->utc-time (procedure seconds->utc-time (#!optional number) vector))
(seek/cur fixnum)
(seek/end fixnum)
(seek/set fixnum)
Trap