typed-racket/typed-racket-test/fail/explicit-fail.rkt
2014-12-16 10:07:25 -05:00

15 lines
397 B
Racket

#;
(exn-fail "incomplete coverage; missing coverage of Negative-Integer")
#lang typed/racket
(define-syntax (cond* stx)
(syntax-case stx ()
[(_ x clause ...)
#`(cond clause ... [else (typecheck-fail #,stx "incomplete coverage" #:covered-id x)])]))
(: f : (U String Integer) -> Boolean)
(define (f x)
(cond* x
[(string? x) #t]
[(exact-nonnegative-integer? x) #f]))