Rune.DecodeLastFromUtf16(ReadOnlySpan<Char>, Rune, Int32) Metod

Definition

Avkodar Rune i slutet av den angivna UTF-16-källbufferten.

public:
 static System::Buffers::OperationStatus DecodeLastFromUtf16(ReadOnlySpan<char> source, [Runtime::InteropServices::Out] System::Text::Rune % result, [Runtime::InteropServices::Out] int % charsConsumed);
public static System.Buffers.OperationStatus DecodeLastFromUtf16(ReadOnlySpan<char> source, out System.Text.Rune result, out int charsConsumed);
static member DecodeLastFromUtf16 : ReadOnlySpan<char> * Rune * int -> System.Buffers.OperationStatus
Public Shared Function DecodeLastFromUtf16 (source As ReadOnlySpan(Of Char), ByRef result As Rune, ByRef charsConsumed As Integer) As OperationStatus

Parametrar

source
ReadOnlySpan<Char>

Ett skrivskyddat UTF-16-teckenintervall.

result
Rune

När den här metoden returneras avkodad runa.

charsConsumed
Int32

När den här metoden returnerar, antalet byte som lästs för att skapa körningen.

Returer

Done om källbufferten börjar med ett giltigt UTF-16-kodat skalärvärde. result innehåller sedan det avkodade Runeoch charsConsumed innehåller antalet Char värden som används i indatabufferten Runeför att koda .

NeedMoreData om källbufferten är tom eller bara innehåller ett fristående UTF-16-hög surrogattecken. result innehåller ReplacementCharsedan , och charsConsumed innehåller längden på indatabufferten.

InvalidData om källbufferten börjar med ett felaktigt utf-16-kodat skalärvärde. result innehåller ReplacementCharsedan , och charsConsumed innehåller antalet Char värden som används för att koda den illa utformade sekvensen. .

Kommentarer

Den här metoden liknar mycket , förutom att DecodeFromUtf16(ReadOnlySpan<Char>, Rune, Int32)den tillåter anroparen att loopa bakåt i stället för framåt. Den typiska anropskonventionen är att anroparen på varje iteration av loopen ska dela upp buffertens source sista charsConsumed element.

Gäller för