[swift-users] Lazy expression is ambiguous?
Quinn "The Eskimo!"
eskimo1 at apple.com
Mon Sep 12 02:48:55 CDT 2016
On 12 Sep 2016, at 08:28, Zhao Xin <owenzx at gmail.com> wrote:
> It is not a bug.
I disagree.
> You must explicitly specify the variable's type if you use `lazy` keyword.
No, that’s not the case in general. For example, the following code compiles just fine.
import Dispatch
func queueMaker() -> DispatchQueue {
return DispatchQueue(label: "Op", attributes: .concurrent)
}
class MyClass {
lazy var myQ = queueMaker()
}
Regardless, there’s two possibilities here:
A. this is a real restriction in the language, which makes the poor diagnostic bugworthy
B. this is a false restriction, which makes it bugworthy in and of itself
While I personally believe that B is the case here, that’s really besides the point; something, either A or B, should change, and hence my advice.
Share and Enjoy
--
Quinn "The Eskimo!" <http://www.apple.com/developer/>
Apple Developer Relations, Developer Technical Support, Core OS/Hardware
More information about the swift-users
mailing list