Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ ReadFirstTokenMultiSegment()

bool System.Text.Json.Utf8JsonReader.ReadFirstTokenMultiSegment ( byte first)
inlineprivate

Definition at line 2178 of file Utf8JsonReader.cs.

2179 {
2180 switch (first)
2181 {
2182 case 123:
2184 _tokenType = JsonTokenType.StartObject;
2186 _consumed++;
2188 _inObject = true;
2189 _isNotPrimitive = true;
2190 break;
2191 case 91:
2193 _tokenType = JsonTokenType.StartArray;
2195 _consumed++;
2197 _isNotPrimitive = true;
2198 break;
2199 default:
2200 if (JsonHelpers.IsDigit(first) || first == 45)
2201 {
2203 {
2204 return false;
2205 }
2206 _tokenType = JsonTokenType.Number;
2208 return true;
2209 }
2210 if (!ConsumeValueMultiSegment(first))
2211 {
2212 return false;
2213 }
2214 if (_tokenType == JsonTokenType.StartObject || _tokenType == JsonTokenType.StartArray)
2215 {
2216 _isNotPrimitive = true;
2217 }
2218 break;
2219 }
2220 return true;
2221 }
ReadOnlySpan< T > Slice(int start)
bool ConsumeValueMultiSegment(byte marker)
bool TryGetNumberMultiSegment(ReadOnlySpan< byte > data, out int consumed)

References System.Text.Json.Utf8JsonReader._bitStack, System.Text.Json.Utf8JsonReader._buffer, System.Text.Json.Utf8JsonReader._bytePositionInLine, System.Text.Json.Utf8JsonReader._consumed, System.Text.Json.Utf8JsonReader._inObject, System.Text.Json.Utf8JsonReader._isNotPrimitive, System.Text.Json.Utf8JsonReader._tokenType, System.Text.Json.Utf8JsonReader.ConsumeValueMultiSegment(), System.Text.Json.Dictionary, System.Text.Json.JsonHelpers.IsDigit(), System.Text.Json.BitStack.ResetFirstBit(), System.Text.Json.BitStack.SetFirstBit(), System.ReadOnlySpan< T >.Slice(), System.Text.Json.Utf8JsonReader.TryGetNumberMultiSegment(), and System.Text.Json.Utf8JsonReader.ValueSpan.

Referenced by System.Text.Json.Utf8JsonReader.ConsumeNextTokenFromLastNonCommentTokenMultiSegment(), and System.Text.Json.Utf8JsonReader.ReadMultiSegment().