Ответ 1
Соответствующее свойство закрытия будет объявлено как
class MyClass {
var completion : ((MyObject) -> Void)? // or ...! for an implicitly unwrapped optional
}
Вы можете установить свойство как
completion = {
(obj : MyObject) -> Void in
// do something with obj ...
}
который можно сократить (из-за автоматического вывода типа) на
completion = {
obj in
// do something with obj ...
}