public Utf8CodeUnit(char value)
{
if (!IsAscii(value))
{
throw new ArgumentOutOfRangeException("value", "Character cannot be represented as single utf-8 code unit. It needs to be ASCII. For complex characters use UnicodeCodePoint.");
}
_value = unchecked((byte)(value & UnicodeConstants.AsciiMaxValue));
}