_cmd в языке Swift

Мой предыдущий вопрос был отмечен как дубликат. Я попытался изменить свой вопрос, но я не могу удалить повторяющийся тег, поэтому мне нужно создать новый Что такое быстрый эквивалент _cmd?

Я хочу получить текущее имя метода для использования в сообщении формата, подобном этому

[NSExeception raise:NSInternalInconsistencyException format:@"You must override %@ in a subclass", NSStringFromSelector(_cmd)]

Кроме того, я хочу использовать _cmd как ключ для установки связанного объекта. Кто-нибудь знает эквивалент _cmd в Свифт, я действительно ценю.

Ответы

Ответ 1

Нет _cmd, но вы можете использовать __FUNCTION__, чтобы получить имя текущей функции, которая может использоваться вместо селекторов большую часть времени.

func myUnimplementedMethod() {
    println("You must override \(__FUNCTION__) in a subclass")
}
myUnimplementedMethod()
// prints "You must override myUnimplementedMethod() in a subclass"