protokol SomeProtocol {}
funkce test1_1(hodnota: SomeProtocol) {}
funkce test1_2(hodnota: jakýkoli SomeProtocol) {}
funkce test2_1(hodnota: some SomeProtocol) {}
funkce test2_2<Hodnota: SomeProtocol>(hodnota: Hodnota) {}
třída A {
funkce test2_2<Hodnota: SomeProtocol>(hodnota: Hodnota) {
}
}
třída B: SomeProtocol {
}
A().test2_2(hodnota: B())