diff options
author | tjr <tjr@FreeBSD.org> | 2004-07-09 02:08:07 +0000 |
---|---|---|
committer | tjr <tjr@FreeBSD.org> | 2004-07-09 02:08:07 +0000 |
commit | d291df1e3f703e3724c6d1f0e4bf796ba44b546e (patch) | |
tree | 1c3e4abaa437f441d05a1cc08f7e7b91684fbad4 /sys/pci | |
parent | fb654efba8e1f77bca7a08d83618ffdac3c226a0 (diff) | |
download | FreeBSD-src-d291df1e3f703e3724c6d1f0e4bf796ba44b546e.zip FreeBSD-src-d291df1e3f703e3724c6d1f0e4bf796ba44b546e.tar.gz |
Add support for multibyte characters. The challenge here was to use
data structures that scale better with large character sets, instead of
arrays indexed by character value:
- Sets of characters to delete/squeeze are stored in a new "cset" structure,
which is implemented as a splay tree of extents. This structure has the
ability to store character classes (ala wctype(3)), but this is not
currently fully utilized.
- Mappings between characters are stored in a new "cmap" structure, which
is also a splay tree.
- The parser no longer builds arrays containing all the characters in a
particular class; instead, next() determines them on-the-fly using
nextwctype(3).
Diffstat (limited to 'sys/pci')
0 files changed, 0 insertions, 0 deletions