Поиск…


титалии для замыканий с параметрами

typealias SuccessHandler = (NSURLSessionDataTask, AnyObject?) -> Void

Этот блок кода создает псевдоним типа с именем SuccessHandler , только в том же образом var string = "" создает переменную с именем string .

Теперь, когда вы используете SuccessHandler , например:

func example(_ handler: SuccessHandler) {}

Вы, как правило, пишете:

func example(_ handler: (NSURLSessionDataTask, AnyObject?) -> Void) {}

титалии для пустых закрытий

typealias Handler = () -> Void
typealias Handler = () -> ()

Этот блок создает псевдоним типа, который работает как функция Void to Void (не принимает никаких параметров и ничего не возвращает).

Вот пример использования:

var func: Handler?

func = {}

типы для других типов

typealias Number = NSNumber

Вы также можете использовать псевдоним типа, чтобы указать тип другого имени, чтобы было легче запомнить его, или сделать ваш код более элегантным.

типы для кортежей

typealias PersonTuple = (name: String, age: Int, address: String)

И это можно использовать как:

func getPerson(for name: String) -> PersonTuple {
    //fetch from db, etc
    return ("name", 45, "address")
}


Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow