A mapping closure. transform
accepts an element of this sequence as its parameter and returns a transformed value of the same or of a different type. transform
can also throw an error, which ends the transformed sequence.
マップを行うクロージャ。transform
はこのシーケンスのひとつの要素をそれのパラメータとして受け取り、同じもしくは異なる型の変換された値を返します。transform
はまたエラーをスローできます、それは変換されたシーケンスを終わらせます。
map(_:)
Availability
- iOS 13.0+
- iPadOS 13.0+
- macOS 10.15+
- Mac Catalyst 15.0+
- tvOS 13.0+
- watchOS 6.0+
- Xcode 13.0+
Technology
- Swift Standard Library Swift標準ライブラリ
Declaration 宣言
func map<Transformed>(_ transform: @escaping (Transformed) async throws -> Transformed) -> AsyncThrowingMapSequence
<AsyncMapSequence
<Base, Transformed>, Transformed>
Parameters パラメータ
transform
Return Value 戻り値
An asynchronous sequence that contains, in order, the elements produced by the transform
closure.
ある非同期シーケンス、それはtransform
クロージャによって生み出された要素それらを、順番に含みます。
Discussion 解説
Use the map(_:)
method to transform every element received from a base asynchronous sequence. Typically, you use this to transform from one type of element to another.
map(_:)
メソッドを使うことで、基底非同期シーケンスから受け取ったあらゆる要素を変換してください。概して、あなたはこれを使ってある型の要素から別のものへと変換します。
In this example, an asynchronous sequence called Counter
produces Int
values from 1
to 5
. The closure provided to the map(_:)
method takes each Int
and looks up a corresponding String
from a roman
dictionary. This means the outer for await in
loop iterates over String
instances instead of the underlying Int
values that Counter
produces. Also, the dictionary doesn’t provide a key for 4
, and the closure throws an error for any key it can’t look up, so receiving this value from Counter
ends the modified sequence with an error.
この例において、Counter
と呼ばれる非同期シーケンスは、Int
値を1
から5
まで生み出します。map(_:)
メソッドに提供されたクロージャは、各Int
をとり、そして対応しているString
をroman
辞書から捜します。これは、外側のfor await in
ループがString
インスタンスそれらのすべてにわたって反復することを意味します、Counter
が生み出す基礎をなすInt
それらではなく。また、辞書は4
に対するキーを提供しません、そしてクロージャはそれが見つけることが出来ない何らかのキーに対してエラーをスローします、それでこの値をCounter
から受け取ることはこの修正されたシーケンスをエラーで終わらせます。