Это не то, что имеет какие-либо реальные приложения, но сегодня меня это удивило, и я хотел бы понять, почему это работает.
Так что это действительно правильный код:
var test: ((Bool) -> ())?
test = .init({a in print(a)})
Это, однако, не
test = ((Bool) -> ()).init({a in print(a)})
Причина: "Type" (Bool) -> () 'не имеет члена' init ''
Почему пример один работает? К чему на самом деле относится вызов init?