associatedtype
associatedtype은 프로토콜에서 지네릭을 사용하기 위해서 사용하는 문법이다.
Generic이란
지네릭이란, 타입에 의존하지 않고 범용적으로 코드를 작성할때 사용하는 방식으로, 실제 함수가 호출될 때 해당 매개변수의 타입으로 대체되는 Placeholder를 의미한다.
하지만 기존의 프로토콜에서 지네릭을 사용하고 싶다면 associated type을 사용하라고 가이딩 한다.

실제로 사용하려면

이렇게 하면된다.
이거를 실제 채택한 클래스에서 다음과 같이 사용하면된다.
protocol someProtocol {
associatedtype someType
func getSomeType(t: someType)
}
class Adapt: someProtocol {
typealias someType = Int
func getSomeType(t: Int) {
print(t.customMirror.subjectType)
}
}
let adapt = Adapt()
adapt.getSomeType(t: 12) // Int
Uploaded by N2T
반응형
'앱 > Swift' 카테고리의 다른 글
Swift) actor와 Actor isolation에 대해서 (0) | 2023.07.04 |
---|---|
Swift) Return type과 에러처리 (0) | 2023.07.04 |
Swift) GCD(Grand Central Dispatch) 에 대한 이해 (feat. DispatchQueue, Runloop (0) | 2023.07.04 |
Swift) Identifiable 프로토콜 (0) | 2023.07.04 |
Swift) Escaping Closure (0) | 2023.07.04 |