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

◆ CopySegment()

MetadataDb System.Text.Json.JsonDocument.MetadataDb.CopySegment ( int startIndex,
int endIndex )
inlinepackage

Definition at line 196 of file JsonDocument.cs.

197 {
198 DbRow dbRow = Get(startIndex);
199 int num = endIndex - startIndex;
200 byte[] array = new byte[num];
201 _data.AsSpan(startIndex, num).CopyTo(array);
202 Span<int> span = MemoryMarshal.Cast<byte, int>(array);
203 int num2 = span[0];
204 if (dbRow.TokenType == JsonTokenType.String)
205 {
206 num2--;
207 }
208 for (int num3 = (num - 12) / 4; num3 >= 0; num3 -= 3)
209 {
210 span[num3] -= num2;
211 }
212 return new MetadataDb(array);
213 }
MetadataDb(byte[] initialDb, bool isLocked, bool convertToAlloc)

References System.Text.Json.JsonDocument.MetadataDb.MetadataDb(), System.Text.Json.JsonDocument.MetadataDb._data, System.array, System.Text.Json.Dictionary, System.endIndex, System.Text.Json.JsonDocument.MetadataDb.Get(), and System.startIndex.

Referenced by System.Text.Json.JsonDocument.CloneElement().