Jez Higgins

Freelance software grandad
software created
extended or repaired


Follow me on Mastodon
Applications, Libraries, Code
Talks & Presentations

Hire me
Contact

Older posts are available in the archive or through tags.

Feed

Arabica

Arabica Utils contains a small (but slowly increasing) number of code conversion facets. One of these coverted from ISO8859:1 (Latin1) encoded text to UTF8, and another converted from UTF16 to UTF8. I realised however, that they were inconsistently named, and have now changed this.

From now on, the facets will be named [external][internal]codecvt.h. The UTF16 to UTF8 is therefore called utf16utf8codecvt, and reading a stream imbued with this facet converts from UTF16 toUTF8. Writing to such a stream converts from UTF8 toUTF16.

Facets with a name like [something]codecvt.h are byte stream encoders/decoders where [something] is an external encoding. Reading a stream imbued with base64codecvt will un-Base64 the stream, while writing to it will Base64 everything.

The upshot of this is that some of the names of existing facets have changed in CVS - iso8859_1_utf8_codecvt is now iso88591utf8codecvt and utf16utf8_codecvt is now utf8utf16codecvt. I now this is a bit of a pain in the arse, but I do believe it will make thing clearer going forward.


Tagged code, arabica, xml, and c++


Jez Higgins

Freelance software grandad
software created
extended or repaired

Follow me on Mastodon
Applications, Libraries, Code
Talks & Presentations

Hire me
Contact

Older posts are available in the archive or through tags.

Feed