> @Tino: Regarding the following statement - "Even if there was a change of 
> mind, fileprivate is still needed for essential things like implementing 
> Equatable.”
> How exactly is that so? Am I missing something?

class Eq: Equatable {
        private var value = 0
}

func ==(lhs: Eq, rhs: Eq) -> Bool {
        return lhs.value == rhs.value
}

This doesn't compile — but it works fine when you declare value to be 
fileprivate.
There are other cases where fileprivate is the best choice, but this is quite 
common (of course, it's always possible to use internal instead… but we could 
as well remove all levels and keep nothing but public)
_______________________________________________
swift-evolution mailing list
swift-evolution@swift.org
https://lists.swift.org/mailman/listinfo/swift-evolution

Reply via email to