Объявление и инициализация
Протоколы
Объявление и инициализация
Требования к методам
Требования к свойствам
Требования к конструктору
Требования к сабскриптам
Наследование протоколов
Композиция протоколов
Проверка соответствия (is, as)
Коллекция протоколов
Расширение типа
Расширение протокола
Протоколы только для классов
Необязательные требования
Связанный тип
Изменяющие методы (mutating)
Принятие протокола
Ограничения расширения протокола
Вложенный интерфейс
protocol
Printable
{
func
print
()
}
let
printable =
Printable
()
//<- Error
Языки
Python
C
Java
C#
JavaScript
R
Rust
Golang
Delphi
PHP
Kotlin
TypeScript
Clojure
Objective-C