728x90
Equatable
struct Todo: Codable, Equatable {
let id: Int
var isDone: Bool
var detail: String
var isToday: Bool
mutating func update(isDone: Bool, detail: String, isToday: Bool) {
// [x] TODO: update 로직 추가
self.isDone = isDone
self.detail = detail
self.isToday = isToday
}
// '=='이라는 조건을 정의 해주는 것.Equatable이라는 프로토콜을 넣어주면 우리 맘대로 정의 가능.
static func == (lhs: Self, rhs: Self) -> Bool {
// [x] TODO: 동등 조건 추가
return lhs.id == rhs.id
}
}
equatble 프로토콜을 상속 받으면 == 이라는 조건을 우리가 맘대로 정하는 사용자 정의가 가능해진다.
Codable
JSON 파일을 스위프트가 알아들을 수 있게 손쉽게 바꿔준다.
728x90
반응형
'🌙 iOS 스터디 > Swift' 카테고리의 다른 글
[Swift] Instance Method 와 Type Method (0) | 2021.03.09 |
---|---|
[Swift] GCD Dispatch Queue (0) | 2021.03.03 |
[Swift] mutating 구조체 (0) | 2021.02.05 |
[Swift] Computed Property vs Method (0) | 2021.01.14 |
[Swift] 스위프트 문서 정리 잘된 한국어 번역 (0) | 2021.01.13 |