summaryrefslogtreecommitdiffstats
path: root/usr.bin/tr/cset.h
Commit message (Collapse)AuthorAgeFilesLines
* Remove unused member of struct csclass: csc_value.tjr2004-07-141-1/+0
|
* Add support for multibyte characters. The challenge here was to usetjr2004-07-091-0/+75
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).
OpenPOWER on IntegriCloud