A closure that receives as a parameter an array of CodingKey instances representing the sequence of keys needed to reach the value the decoder is currently decoding. あるクロージャ、それはパラメータとしていくつかのCodingKeyインスタンスからなるある配列を受け取ります、それはデコーダが現在デコードしている値に到達するために必要とされるキーそれらからなるシーケンスを表しています。
JSONDecoder.KeyDecodingStrategy.custom(_:)
Availability 有効性
- iOS 7.0+
- iPadOS 7.0+
- macOS 10.9+
- Mac Catalyst 13.0+
- tvOS 9.0+
- watchOS 2.0+
- Xcode 9.3+
Technology
- Foundation ファウンデーション
Declaration 宣言
Parameters パラメータ
custom
Discussion 議論
The value associated with this case is a closure you use to map names of keys from the decoded JSON object to the names of your type’s coding keys. During decoding, the closure executes once for each key in the Decodable
value. When called, the closure receives an array of Coding
instances representing the sequence of keys needed to reach the value the decoder is currently decoding.
このケース節と結び付けられる値は、あなたがキーの名前をデコード済JSONオブジェクトからあなたの型の持つコーディングキーにまでマップするために使うクロージャです。デコーディングの間、クロージャはDecodable
値の中の各キーに対して一度だけ遂行します。呼び出された時、クロージャは、Coding
インスタンスそれらからなるある配列を受け取ります、それはデコーダが現在デコードしている値に到達するために必要とされるキーそれらからなるシーケンスを表しています。
The example below shows how to decode the properties of the nested A
, B
, and C
structures with custom logic that you specify in the closure value associated with the custom case.
下の例は、入れ子にされたA
、B
、そしてC
構造体のプロパティを、あなたがあつらえのケース節と結び付けられたクロージャ値において指定するあつらえの論理で、デコードする方法を示します。
In the next example you use the Any
structure defined above to customize the decoding of the A
, B
, and C
structures.
次の例においてあなたは上で定義されるAny
構造体を使って、A
、B
、そしてC
構造体のデコーディングをカスタマイズします。