static void EscapeU(int c, StringBuilder @out, EscapeC flags)
{
if (c <= 255 && (flags & EscapeC.BackslashX) != 0)
@out.Append(@"\x");
else {
@out.Append(@"\u");
if (c > 0xFFFF || (flags & EscapeC.HasLongEscape) != 0) {
Debug.Assert(c <= 0x10FFFF);
@out.Append(HexDigitChar((c >> 20) & 0xF));
@out.Append(HexDigitChar((c >> 16) & 0xF));
}
@out.Append(HexDigitChar((c >> 12) & 0xF));
@out.Append(HexDigitChar((c >> 8) & 0xF));
}
@out.Append(HexDigitChar((c >> 4) & 0xF));
@out.Append(HexDigitChar(c & 0xF));
}