573 {
574 bool flag = set.Length >= 2 && set[0] == '\0' && set[1] == '\0';
575 int num = 3 + set.Length + category.Length;
576 if (flag)
577 {
578 num -= 2;
579 }
581 {
583 if (
state.startsWithNulls)
584 {
585 span[0] = '\u0001';
586 span[1] = (char)(state.set.Length - 2);
587 span[2] = (char)state.category.Length;
588 state.set.AsSpan(2).CopyTo(span.Slice(3));
589 start = 3 + state.set.Length - 2;
590 }
591 else
592 {
593 span[0] = '\0';
594 span[1] = (char)state.set.Length;
595 span[2] = (char)state.category.Length;
596 state.set.CopyTo(span.Slice(3));
597 start = 3 + state.set.Length;
598 }
600 });
601 }
void CopyTo(KeyValuePair< TKey, TValue >[] array, int index)