Skip to content

Commit f2b96fa

Browse files
committed
feat: add decoding nullable array property wrapper
1 parent 8d33a2a commit f2b96fa

File tree

1 file changed

+22
-0
lines changed

1 file changed

+22
-0
lines changed
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
//
2+
// NullableArray.swift
3+
//
4+
//
5+
// Created by makinosp on 2024/07/28.
6+
//
7+
8+
import Foundation
9+
10+
@propertyWrapper
11+
struct NullableArray<T: Decodable>: Decodable {
12+
var wrappedValue: [T]
13+
14+
init(from decoder: Decoder) throws {
15+
let container = try decoder.singleValueContainer()
16+
if container.decodeNil() {
17+
self.wrappedValue = []
18+
} else {
19+
self.wrappedValue = try container.decode([T].self)
20+
}
21+
}
22+
}

0 commit comments

Comments
 (0)