Case .none: Case .some("string"):
> On Jun 28, 2016, at 06:40, Lucas Jordan via swift-evolution > <swift-evolution@swift.org> wrote: > > Forgive me if this was/is discussed already, I am new to the process here.... > > (code is attached as a playground too) > > > > Sometimes when I am working with a String? nil can be a reasonable value, and > what I want to do is something like the following: > > import UIKit > > > > var str:String? = "Hello, playground" > > > > switch str{ > > case nil: > > print("Nil!") > > case "Hello, playground": //it would be super nice if this worked. > > print("Match") > > default: > > print("Some other non nil value?") > > } > > > > But it does not work, the orange text is a compile time error, "Expression > pattern of type 'String' cannot match value of type 'String?'. I realize that > this can be replaced with a let statement (case let s where s == "Hello, > playground":), but that is verbose. > > Seems like the compiler could be OK with the orange text, since it is clearly > not nil. > > Thoughts? > > -Lucas > > > > > > <NilInSwitchStatements.playground.zip> > _______________________________________________ > swift-evolution mailing list > swift-evolution@swift.org > https://lists.swift.org/mailman/listinfo/swift-evolution
_______________________________________________ swift-evolution mailing list swift-evolution@swift.org https://lists.swift.org/mailman/listinfo/swift-evolution