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

◆ ToSpan()

unsafe void System.Xml.UniqueId.ToSpan ( Span< char > chars)
inlineprivate

Definition at line 262 of file UniqueId.cs.

263 {
264 if (_s != null)
265 {
266 _s.CopyTo(chars);
267 return;
268 }
269 byte* ptr = stackalloc byte[16];
272 fixed (char* ptr2 = &chars[0])
273 {
274 char* ptr3 = ptr2;
275 *ptr3 = 'u';
276 ptr3[1] = 'r';
277 ptr3[2] = 'n';
278 ptr3[3] = ':';
279 ptr3[4] = 'u';
280 ptr3[5] = 'u';
281 ptr3[6] = 'i';
282 ptr3[7] = 'd';
283 ptr3[8] = ':';
284 ptr3[17] = '-';
285 ptr3[22] = '-';
286 ptr3[27] = '-';
287 ptr3[32] = '-';
288 UnsafeEncode(*ptr, ptr3 + 15);
289 UnsafeEncode(ptr[1], ptr3 + 13);
290 UnsafeEncode(ptr[2], ptr3 + 11);
291 UnsafeEncode(ptr[3], ptr3 + 9);
292 UnsafeEncode(ptr[4], ptr3 + 20);
293 UnsafeEncode(ptr[5], ptr3 + 18);
294 UnsafeEncode(ptr[6], ptr3 + 25);
295 UnsafeEncode(ptr[7], ptr3 + 23);
296 UnsafeEncode(ptr[8], ptr3 + 28);
297 UnsafeEncode(ptr[9], ptr3 + 30);
298 UnsafeEncode(ptr[10], ptr3 + 33);
299 UnsafeEncode(ptr[11], ptr3 + 35);
300 UnsafeEncode(ptr[12], ptr3 + 37);
301 UnsafeEncode(ptr[13], ptr3 + 39);
302 UnsafeEncode(ptr[14], ptr3 + 41);
303 UnsafeEncode(ptr[15], ptr3 + 43);
304 }
305 }
unsafe void UnsafeSetInt64(long value, byte *pb)
Definition UniqueId.cs:416
static unsafe void UnsafeEncode(byte b, char *pch)
Definition UniqueId.cs:164

References System.Xml.UniqueId._idHigh, System.Xml.UniqueId._idLow, System.Xml.UniqueId._s, System.chars, System.Xml.Dictionary, System.Xml.UniqueId.UnsafeEncode(), and System.Xml.UniqueId.UnsafeSetInt64().

Referenced by System.Xml.UniqueId.ToCharArray().