15.8 CES converters ¶
Similar to the CCS tables, CES converters are also split into "from UCS"
and "to UCS" parts. Depending on the iconv library configuration, these
parts are enabled or disabled.
The following it the list of CES converters which are currently present
in the Newlib iconv library.
- euc - supports the euc_jp, euc_kr and euc_tw
encodings. The euc CES converter uses the table and the
us_ascii CES converters.
- table - this CES converter corresponds to "null" and just performs
tables-based conversion using 8- and 16-bit CCS tables. This converter
is also used by any other CES converter which needs the CCS table-based
conversions. The table converter is also responsible for .cct files
loading.
- table_pcs - this is the wrapper over the table converter
which is intended for 16-bit encodings which also use the Portable
Character Set (PCS) which is the same as the US-ASCII.
This means, that if the first byte the CCS code is in range of [0x00-0x7f],
this is the 7-bit PCS code. Else, this is the 16-bit CCS code. Of course,
the 16-bit codes must not contain bytes in the range of [0x00-0x7f].
The big5 encoding uses the table_pcs CES converter and the
table_pcs CES converter depends on the table CES converter.
- ucs_2 - intended for the ucs_2, ucs_2be and
ucs_2le encodings support.
- ucs_4 - intended for the ucs_4, ucs_4be and
ucs_4le encodings support.
- ucs_2_internal - intended for the ucs_2_internal encoding support.
- ucs_4_internal - intended for the ucs_4_internal encoding support.
- us_ascii - intended for the us_ascii encoding support. In
principle, the most natural way to support the us_ascii encoding
is to define the us_ascii CCS and use the table CES
converter. But for the optimization purposes, the specialized
us_ascii CES converter was created.
- utf_16 - intended for the utf_16, utf_16be and
utf_16le encodings support.
- utf_8 - intended for the utf_8 encoding support.