hack `directory-list' to avoid confusing Typed Racket

(hopefully temporary)
This commit is contained in:
Matthew Flatt 2012-05-16 18:29:16 -06:00
parent 662ede2bd2
commit 0695c63cb1

View File

@ -128,9 +128,12 @@
(lambda () (proc p))
(lambda () (close-output-port p)))))
(define (directory-list [dir (current-directory)] #:build? [build? #f])
(unless (path-string? dir)
(raise-type-error 'directory-list "path or string" dir))
(if build?
(map (lambda (i) (build-path dir i)) (k:directory-list dir))
(k:directory-list dir))))
;; Using `define-values' to avoid the inlining expansion for keyword
;; arguments, because that expansion confuses Typed Racket:
(define-values (directory-list)
(lambda ([dir (current-directory)] #:build? [build? #f])
(unless (path-string? dir)
(raise-type-error 'directory-list "path or string" dir))
(if build?
(map (lambda (i) (build-path dir i)) (k:directory-list dir))
(k:directory-list dir)))))