Rune.DecodeLastFromUtf8(ReadOnlySpan<Byte>, Rune, Int32) メソッド

定義

指定された UTF-8 ソース バッファーの末尾にある Rune をデコードします。

public:
 static System::Buffers::OperationStatus DecodeLastFromUtf8(ReadOnlySpan<System::Byte> source, [Runtime::InteropServices::Out] System::Text::Rune % value, [Runtime::InteropServices::Out] int % bytesConsumed);
public static System.Buffers.OperationStatus DecodeLastFromUtf8(ReadOnlySpan<byte> source, out System.Text.Rune value, out int bytesConsumed);
static member DecodeLastFromUtf8 : ReadOnlySpan<byte> * Rune * int -> System.Buffers.OperationStatus
Public Shared Function DecodeLastFromUtf8 (source As ReadOnlySpan(Of Byte), ByRef value As Rune, ByRef bytesConsumed As Integer) As OperationStatus

パラメーター

source
ReadOnlySpan<Byte>

読み取り専用の UTF-8 でエンコードされたバイト スパン。

value
Rune

このメソッドが返されるときに、デコードされたルーン。

bytesConsumed
Int32

このメソッドが戻るときに、ルーンを作成するために読み取られたバイト数。

返品

Done ソース バッファーが有効な UTF-8 でエンコードされたスカラー値で終わる場合。 valueにはデコードされたRuneが格納され、bytesConsumedには、Runeをエンコードするために入力バッファーで使用されるByte値の数が格納されます。

NeedMoreData ソース バッファーが空であるか、スタンドアロンの UTF-8 上位サロゲート文字のみが含まれている場合。 value には ReplacementCharが格納され、 bytesConsumed には入力バッファーの長さが含まれます。

InvalidData ソース バッファーが不適切な形式の UTF-8 でエンコードされたスカラー値で終わる場合。 value 次に、 ReplacementCharが格納され、 bytesConsumed には、正しくない形式のシーケンスをエンコードするために入力バッファーで使用される Byte 値の数が格納されます。

注釈

このメソッドは DecodeFromUtf8(ReadOnlySpan<Byte>, Rune, Int32)によく似ていますが、呼び出し元が前方ではなく後方にループすることを許可する点が異なります。 一般的な呼び出し規則は、ループの各イテレーションで、呼び出し元がsource バッファーの最終的なbytesConsumed要素をスライスする必要があるということです。

適用対象