summaryrefslogtreecommitdiffstats
path: root/usr.bin/tr/cset.h
Commit message (Collapse)AuthorAgeFilesLines
* Revert most part of 200420 as requested, as more review and polish isdelphij2009-12-131-0/+1
| | | | needed.
* Remove unneeded header includes from usr.bin/ except contributed code.delphij2009-12-111-1/+0
| | | | Tested with: make universe
* 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