diff options
author | Omar Kilani <omar@php.net> | 2006-01-31 08:59:06 +0000 |
---|---|---|
committer | Omar Kilani <omar@php.net> | 2006-01-31 08:59:06 +0000 |
commit | 94a140214c9df560aef047de93cf17d5dcf2e698 (patch) | |
tree | 45d4e4c4bdc92d50cfd863cb11df455e05380138 /ext/json/utf8_decode.h | |
parent | 933ce508385a6de6d6633920d0a16d267223c7ee (diff) | |
download | php-git-94a140214c9df560aef047de93cf17d5dcf2e698.tar.gz |
- Rewritten for better performance. 3-8x faster encodes, 2-4x faster decodes.
- No longer uses json-c, implements it's own JSON parser and encoder.
- JSON parser based on Douglas Crockford's JSON_checker.
Diffstat (limited to 'ext/json/utf8_decode.h')
-rw-r--r-- | ext/json/utf8_decode.h | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/ext/json/utf8_decode.h b/ext/json/utf8_decode.h new file mode 100644 index 0000000000..cc0fc79f6c --- /dev/null +++ b/ext/json/utf8_decode.h @@ -0,0 +1,18 @@ +/* utf8_decode.h */ + +#define UTF8_END -1 +#define UTF8_ERROR -2 + +typedef struct json_utf8_decode +{ + int the_index; + char *the_input; + int the_length; + int the_char; + int the_byte; +} json_utf8_decode; + +extern int utf8_decode_at_byte(json_utf8_decode *utf8); +extern int utf8_decode_at_character(json_utf8_decode *utf8); +extern void utf8_decode_init(json_utf8_decode *utf8, char p[], int length); +extern int utf8_decode_next(json_utf8_decode *utf8); |