IronRuby.Builtins.RegexpTransformer.AppendUnicodeCodePoint C# (CSharp) Method

AppendUnicodeCodePoint() private method

private AppendUnicodeCodePoint ( StringBuilder builder, int codepoint ) : void
builder StringBuilder
codepoint int
return void
        private void AppendUnicodeCodePoint(StringBuilder/*!*/ builder, int codepoint) {
            if (codepoint >= 0xd800 && codepoint <= 0xdfff || codepoint > 0x10ffff) {
                throw MakeError("invalid Unicode range");
            } else if (codepoint < 0x10000) {
                AppendEscaped(builder, codepoint);
            } else {
                codepoint -= 0x10000;
                Append((char)((codepoint / 0x400) + 0xd800));
                Append((char)((codepoint % 0x400) + 0xdc00));
            }
        }