Wie wird Swift IF LET bewertet?

Ich habe diesen Code auf der Swift-Site und in verschiedenen Posts hier gesehen und versuche, die Grundlagen zu verstehen. Wie wird diese Zeile ausgewertet?

if let name = optionalName {

Ich bin verwirrt, da es kein Name ist == optionaler Name, es wird der Wert zugewiesen, also wie stimmt der Bericht und warum stimmt er nicht, wenn Sie John Appleseed durch Null ersetzen, da er immer noch gleich sein wird?

var optionalName: String? = "John Appleseed"
var greeting = "Hello!"
if let name = optionalName {
    greeting = "Hello, \(name)"
}