<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;"># $Id$

package XML::SAX::PurePerl;
use strict;

sub chr_ref {
    my $n = shift;
    if ($n &lt; 0x80) {
        return chr ($n);
    }
    elsif ($n &lt; 0x800) {
        return pack ("CC", (($n &gt;&gt; 6) | 0xc0), (($n &amp; 0x3f) | 0x80));
    }
    elsif ($n &lt; 0x10000) {
        return pack ("CCC", (($n &gt;&gt; 12) | 0xe0), ((($n &gt;&gt; 6) &amp; 0x3f) | 0x80),
                                    (($n &amp; 0x3f) | 0x80));
    }
    elsif ($n &lt; 0x110000)
    {
        return pack ("CCCC", (($n &gt;&gt; 18) | 0xf0), ((($n &gt;&gt; 12) &amp; 0x3f) | 0x80),
        ((($n &gt;&gt; 6) &amp; 0x3f) | 0x80), (($n &amp; 0x3f) | 0x80));
    }
    else {
        return undef;
    }
}

1;
</pre></body></html>