Skip to content

Commit b1a5637

Browse files
committed
introduce "witness" in parenthetical
1 parent 5e51bd8 commit b1a5637

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

proposals/NNNN-suppressed-associated-types.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,10 @@ protocol Queue<Element>: ~Copyable {
3030
The first associated type Element represents the type of value that by which
3131
`push` and `pop` must be defined.
3232

33-
Any type conforming to Queue must define a nested type Element that satisfies
34-
the protocol's requirements, of which there are no _explicit_ requirements.
33+
Any type conforming to Queue must define a nested type Element that satisfies
34+
(or _witnesses_) the protocol's requirements for its Element.
35+
This nested type could be a generic parameter named Element, a typealias named
36+
Element, and so on.
3537
While the conforming type is itself permitted to be noncopyable, its `Element`
3638
type has to be `Copyable`:
3739
```swift

0 commit comments

Comments
 (0)