An iterator of code units to be translated, encoded as input
. If stop
is false
, the entire iterator will be exhausted. Otherwise, iteration will stop if an encoding error is detected.
翻訳されることになるいくらかのコードユニットからなるあるイテレータ、input
としてエンコードされます。stop
がfalse
ならば、イテレータ全体が使い尽くされることになります。そうでなければ、反復はエンコーディングエラーが検出されるならば停止します。
transcode(_:from:to:stoppingOnError:into:)
Availability
- iOS 8.0+
- iPadOS 8.0+
- macOS 10.10+
- Mac Catalyst 13.0+
- tvOS 9.0+
- watchOS 2.0+
- Xcode 8.3+
Technology
- Swift Standard Library Swift標準ライブラリ
Declaration 宣言
func transcode<Input, InputEncoding , OutputEncoding >(_ input: Input, from inputEncoding: InputEncoding .Type, to outputEncoding: OutputEncoding .Type, stoppingOnError stopOnError: Bool
, into processCodeUnit: (OutputEncoding .CodeUnit ) -> Void
) -> Bool
where Input : IteratorProtocol
, InputEncoding : _UnicodeEncoding , OutputEncoding : _UnicodeEncoding , Input.Element
== InputEncoding .CodeUnit
Parameters パラメータ
input
Encoding On Error Encoding On Error inputEncoding
The Unicode encoding of
input
.input
のユニコードエンコーディング。outputEncoding
The destination Unicode encoding. 行き先ユニコードエンコーディング。
stopOnError
Pass
true
to stop translation when an encoding error is detected ininput
. Otherwise, a Unicode replacement character ("\u{FFFD}"
) is inserted for each detected error.true
を渡すと、翻訳はエンコーディングエラーがinput
において検出されるときに停止します。そうでなければ、ユニコード代用文字("\u{FFFD}"
)が各検出エラーに対して挿入されます。processCodeUnit
A closure that processes one
output
code unit at a time. あるクロージャ、それは一度に1つのEncoding output
コードユニットを処理します。Encoding
Return Value 戻り値
true
if the translation detected encoding errors in input
; otherwise, false
.
翻訳がinput
においてエンコーディングエラーを検出したならばtrue
;そうでなければfalse
。
Discussion 解説
The following example transcodes the UTF-8 representation of the string "Fermata 𝄐"
into UTF-32.
以下の例は、文字列"Fermata 𝄐"
のUTF-8表現をUTF-32にコード変換(トランスコード)します。
The sink
closure is called with each resulting UTF-32 code unit as the function iterates over its input.
sink
クロージャは、結果UTF-32コードユニットそれぞれで、それのinputに反復していく関数として呼び出されます。