이 프로토콜이 있다고 가정 해 봅시다.
protocol SomeProtocol {
}
protocol SomeOtherProtocol {
}
이제 제네릭 형식을 취하는 함수를 원하지만 해당 형식을 따라야 할 SomeProtocol
수 있습니다.
func someFunc<T: SomeProtocol>(arg: T) {
// do stuff
}
그러나 여러 프로토콜에 대한 유형 제약 조건을 추가하는 방법이 있습니까?
func bothFunc<T: SomeProtocol | SomeOtherProtocol>(arg: T) {
}
비슷한 것들이 쉼표를 사용하지만이 경우 다른 유형의 선언을 시작합니다. 여기 내가 시도한 것이 있습니다.
<T: SomeProtocol | SomeOtherProtocol>
<T: SomeProtocol , SomeOtherProtocol>
<T: SomeProtocol : SomeOtherProtocol>