name mode size
.mulle-env 040000
.mulle-sde 040000
.mulle-sourcetree 040000
cmake 040000
dox 040000
mulle-project 040000
research 040000
src 040000
test 040000
unicode 040000
.gitignore 100644 1.13kB
.travis.yml 100644 526B
CMakeLists.txt 100644 2.77kB
LICENSE 100644 1.72kB 100644 2.9kB 100644 2.34kB
mulle-utf.sublime-project 100644 234B
# mulle-utf a C (C99) library to analyze and convert unicode strings. It also contains some limited `<string.h>` functionality for UTF16 and UTF32. And it contains some fairly extensive `<ctype.h>` functionality for UTF16 and UTF32 based on the Unicode 3.0.0 specification. It is the backbone of **NSString** and **NSCharacterSet**. Fork | Build Status | Release Version ----------|---------------|----------------------------------- [Mulle kybernetiK](// | [![Build Status](]( | ![Mulle kybernetiK tag]( [![Build Status](]( ## Install Install the prerequisites first: | Prerequisites | |---------------------------------------------------------| | [mulle-allocator](// | Then build and install ``` mkdir build 2> /dev/null ( cd build ; cmake .. ; make install ) ``` Or let [mulle-sde](// do it all for you. ## Encode strings as integers * **mulle_char5** is a compression scheme, that uses a set of 31 characters to encode strings into integers of varying sizes. This can be useful for small strings with typical Objective-C "keys" and small common mostly lowercase words. * **mulle_char7** is a compression scheme placing 7 bit ASCII characters into ints of varying sizes. A 64 bit integer can hold up to 8 characters. > Naming: UTF is a transfer encoding for Unicode. So everything eventually maps to (32 bit) unicode characters. That operations are done on UTF directly is kinda questionable, but I believe common. >> TODO (maybe): split this up into mulle_unicode, mulle_unitype, mulle_utf ## API File | Description --------------------------------------- | ---------------------------------------- [`mulle_char7`](dox/ | Encode small ASCII strings into integers [`mulle_char5`](dox/ | Encode some more smallish ASCII strings integers [`Conversion`](dox/ | Convert back and forth between UTF8, UTF16, UTF32, [`Information`](dox/ | Analyze and classify string encodings [`String`](dox/ | Primitive UTF16 and UTF32 string handling [`Ctype`](dox/ | `<ctype.h>` like functionality for UTF32 and UTF16 strings ### Platforms and Compilers All platforms and compilers supported by [mulle-c11](// and [mulle-thread](// ## Author [Nat!](// for [Mulle kybernetiK](// and [Codeon GmbH](//