StringProtocol.UTF8View only requires
Collection conformance, even though
StringProtocol itself, as well as the
BidirectionalCollections. The actual UTF8Views for String and Substring are of course bidirectional. It's actually commented out from the protocol definition, which makes me think it may have been an oversight not to un-comment it?
This is just a really weird asymmetry which forces me to write a bunch of additional constraints. Given that
StringProtocol is kind of "sealed", would it be possible to fix this? Or would it break ABI?