internal string?GetString(int index, JsonTokenType expectedType) { JsonRow row = _parsedData.Get(index); JsonTokenType tokenType = row.TokenType; if (tokenType == JsonTokenType.Null) { return(null); } CheckExpectedType(expectedType, tokenType); ReadOnlySpan <byte> data = _utf8Json.Span; ReadOnlySpan <byte> segment = data.Slice(row.Location, row.Length); string value; int backslash = segment.IndexOf(JsonConstants.BackSlash); if (backslash < 0) { value = JsonReaderHelper.TranscodeHelper(segment); } else { value = JsonReaderHelper.GetUnescapedString(segment, backslash); } Debug.Assert(value != null); return(value); }
internal string GetPropertyRawValueAsString(int valueIndex) { ReadOnlyMemory <byte> segment = GetPropertyRawValue(valueIndex); return(JsonReaderHelper.TranscodeHelper(segment.Span)); }
internal string GetRawValueAsString(int index) { ReadOnlyMemory <byte> segment = GetRawValue(index, includeQuotes: true); return(JsonReaderHelper.TranscodeHelper(segment.Span)); }