diff --git a/racket/typed/hash.rkt b/racket/typed/hash.rkt index 86ae599..777f230 100644 --- a/racket/typed/hash.rkt +++ b/racket/typed/hash.rkt @@ -5,9 +5,11 @@ hash hash-set hash-ref + (typed-out [[hash-ref/failure- : (∀ (K V) (→fn (Hash K V) K V V))] + hash-ref/failure]) hash-has-key? hash-update - (typed-out [[hash-update/failure- : (∀ (K V) (→fn (Hash K V) K (→fn V V) (→fn V) (Hash K V)))] + (typed-out [[hash-update/failure- : (∀ (K V) (→fn (Hash K V) K (→fn V V) V (Hash K V)))] hash-update/failure]) hash-remove hash-map @@ -72,6 +74,9 @@ ;; TODO - hash-union with #:combine ) +(define- (hash-ref/failure- h k err) + (#%app- hash-ref- h k err)) + (define- (hash-update/failure- h k u err) (#%app- hash-update- h k u err))