The design in this proposal comes from the standard library team. The intent is for the use of underscore here to be consistent with other uses of underscore prefix in the standard library. I’m not sure why you think this is different than the rest...
> On Jun 24, 2016, at 10:22 AM, Adrian Zubarev via swift-evolution > <[email protected]> wrote: > > I’m aware of that fact, but all types with underscore even in the stdlib > telling me to keep my hands of them, because something might happen to them. > > As an example we have _Strideable protocol which is visible by its name, but > its declaration isn’t visible at all: > // FIXME(ABI)(compiler limitation): Remove `_Strideable`. > // WORKAROUND rdar://25214598 <rdar://25214598> - should be: > // protocol Strideable : Comparable {...} > > % for Self in ['_Strideable', 'Strideable']: > From Stride.swift.gyb > <https://github.com/apple/swift/blob/63c36dff0a327874a5041d46335bde314bc108d8/stdlib/public/core/Stride.swift.gyb> > > > > -- > Adrian Zubarev > Sent with Airmail > > Am 24. Juni 2016 um 17:09:53, Matthew Johnson ([email protected] > <mailto:[email protected]>) schrieb: > >> The underscore is used in the same way it is used elsewhere in the standard >> library. The protocols must be public because they need to be visible to >> user code in order for the design to work correctly. However, they are >> considered implementation details that users really shouldn’t know about. >> This pattern is well established in the standard library. > > > _______________________________________________ > swift-evolution mailing list > [email protected] <mailto:[email protected]> > https://lists.swift.org/mailman/listinfo/swift-evolution > <https://lists.swift.org/mailman/listinfo/swift-evolution>
_______________________________________________ swift-evolution mailing list [email protected] https://lists.swift.org/mailman/listinfo/swift-evolution
