diff --git a/lens/private/compound/join-hash.scrbl b/lens/private/compound/join-hash.scrbl index f11dcf7..5fe63ab 100644 --- a/lens/private/compound/join-hash.scrbl +++ b/lens/private/compound/join-hash.scrbl @@ -3,7 +3,8 @@ @(require "../doc-util/main.rkt") -@defproc[(lens-join/hash [key any/c] [lens lens?] ... ...) lens?]{ +@defproc[(lens-join/hash [key key/c] [lens (lens/c target/c value/c)] ... ...) + (lens/c target/c (hash/c key/c value/c #:immutable #t))]{ Constructs a lens that combines the view of each @racket[lens] into a hash of views with @racket[key]s as the hash keys. In the same manner as @racket[lens-join/list], diff --git a/lens/private/compound/join-list.scrbl b/lens/private/compound/join-list.scrbl index e9f9cd1..e835b1c 100644 --- a/lens/private/compound/join-list.scrbl +++ b/lens/private/compound/join-list.scrbl @@ -2,7 +2,7 @@ @(require "../doc-util/main.rkt") -@defproc[(lens-join/list [lens lens?] ...) lens?]{ +@defproc[(lens-join/list [lens (lens/c target/c item/c)] ...) (lens/c target/c (listof item/c))]{ Constructs a lens that combines the view of each @racket[lens] into a list of views. This lens can be used to view and set a list of values in a single diff --git a/lens/private/compound/join-string.scrbl b/lens/private/compound/join-string.scrbl index 8db5482..7d958fe 100644 --- a/lens/private/compound/join-string.scrbl +++ b/lens/private/compound/join-string.scrbl @@ -3,7 +3,7 @@ @(require "../doc-util/main.rkt") -@defproc[(lens-join/string [lens lens?] ...) lens?]{ +@defproc[(lens-join/string [lens (lens/c target/c char?)] ...) (lens/c target/c immutable-string?)]{ Like @racket[lens-join/list], except the view is a string, not a list. Each @racket[lens] argument must return a @racket[char?] as a view. @lens-examples[ diff --git a/lens/private/compound/join-vector.scrbl b/lens/private/compound/join-vector.scrbl index d8ea98f..66bda68 100644 --- a/lens/private/compound/join-vector.scrbl +++ b/lens/private/compound/join-vector.scrbl @@ -3,7 +3,8 @@ @(require "../doc-util/main.rkt") -@defproc[(lens-join/vector [lens lens?] ...) lens?]{ +@defproc[(lens-join/vector [lens (lens/c target/c item/c)] ...) + (lens/c target/c (vector-immutableof item/c))]{ Like @racket[lens-join/list], except the view is a vector, not a list. @lens-examples[ (define vector-first-third-fifth-lens