summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLloyd Hilaiel <lloyd@hilaiel.com>2009-12-18 10:33:13 -0800
committerLloyd Hilaiel <lloyd@hilaiel.com>2009-12-18 10:33:13 -0800
commit3b6af32428b96019d7fa4034419c661c7e2975e1 (patch)
tree71de0da0e40da01c6c8226f5da01bb495af22404
parent3b7617d5c50942b42301cb18393579821cdc7833 (diff)
downloadyajl-3b6af32428b96019d7fa4034419c661c7e2975e1.tar.gz
update docs and links for 1.0.8 (gh-pages)
-rw-r--r--index.html6
-rwxr-xr-xyajl-1.0.8/bin/json_reformatbin0 -> 54128 bytes
-rwxr-xr-xyajl-1.0.8/bin/json_verifybin0 -> 42288 bytes
-rw-r--r--yajl-1.0.8/include/yajl/yajl_common.h85
-rw-r--r--yajl-1.0.8/include/yajl/yajl_gen.h159
-rw-r--r--yajl-1.0.8/include/yajl/yajl_parse.h193
-rwxr-xr-xyajl-1.0.8/lib/libyajl.1.0.8.dylibbin0 -> 51784 bytes
-rwxr-xr-xyajl-1.0.8/lib/libyajl.1.dylibbin0 -> 51784 bytes
-rwxr-xr-xyajl-1.0.8/lib/libyajl.dylibbin0 -> 51784 bytes
-rw-r--r--yajl-1.0.8/lib/libyajl_s.abin0 -> 93744 bytes
-rw-r--r--yajl-1.0.8/share/doc/yajl-1.0.8/annotated.html38
-rw-r--r--yajl-1.0.8/share/doc/yajl-1.0.8/classes.html36
-rw-r--r--yajl-1.0.8/share/doc/yajl-1.0.8/doxygen.css498
-rw-r--r--yajl-1.0.8/share/doc/yajl-1.0.8/doxygen.pngbin0 -> 1281 bytes
-rw-r--r--yajl-1.0.8/share/doc/yajl-1.0.8/files.html38
-rw-r--r--yajl-1.0.8/share/doc/yajl-1.0.8/functions.html97
-rw-r--r--yajl-1.0.8/share/doc/yajl-1.0.8/functions_vars.html97
-rw-r--r--yajl-1.0.8/share/doc/yajl-1.0.8/globals.html183
-rw-r--r--yajl-1.0.8/share/doc/yajl-1.0.8/globals_defs.html50
-rw-r--r--yajl-1.0.8/share/doc/yajl-1.0.8/globals_enum.html50
-rw-r--r--yajl-1.0.8/share/doc/yajl-1.0.8/globals_eval.html77
-rw-r--r--yajl-1.0.8/share/doc/yajl-1.0.8/globals_func.html113
-rw-r--r--yajl-1.0.8/share/doc/yajl-1.0.8/globals_type.html62
-rw-r--r--yajl-1.0.8/share/doc/yajl-1.0.8/index.html212
-rw-r--r--yajl-1.0.8/share/doc/yajl-1.0.8/structyajl__alloc__funcs.html103
-rw-r--r--yajl-1.0.8/share/doc/yajl-1.0.8/structyajl__callbacks.html201
-rw-r--r--yajl-1.0.8/share/doc/yajl-1.0.8/structyajl__gen__config.html73
-rw-r--r--yajl-1.0.8/share/doc/yajl-1.0.8/structyajl__parser__config.html73
-rw-r--r--yajl-1.0.8/share/doc/yajl-1.0.8/tab_b.gifbin0 -> 35 bytes
-rw-r--r--yajl-1.0.8/share/doc/yajl-1.0.8/tab_l.gifbin0 -> 706 bytes
-rw-r--r--yajl-1.0.8/share/doc/yajl-1.0.8/tab_r.gifbin0 -> 2585 bytes
-rw-r--r--yajl-1.0.8/share/doc/yajl-1.0.8/tabs.css105
-rw-r--r--yajl-1.0.8/share/doc/yajl-1.0.8/yajl.html34
-rw-r--r--yajl-1.0.8/share/doc/yajl-1.0.8/yajl__common_8h.html115
-rw-r--r--yajl-1.0.8/share/doc/yajl-1.0.8/yajl__common_8h_source.html103
-rw-r--r--yajl-1.0.8/share/doc/yajl-1.0.8/yajl__gen_8h.html538
-rw-r--r--yajl-1.0.8/share/doc/yajl-1.0.8/yajl__gen_8h_source.html128
-rw-r--r--yajl-1.0.8/share/doc/yajl-1.0.8/yajl__parse_8h.html350
-rw-r--r--yajl-1.0.8/share/doc/yajl-1.0.8/yajl__parse_8h_source.html133
-rw-r--r--yajl-1.0.8/share/man/man3/yajl.311
-rw-r--r--yajl-1.0.8/share/man/man3/yajl_alloc_funcs.339
-rw-r--r--yajl-1.0.8/share/man/man3/yajl_callbacks.371
-rw-r--r--yajl-1.0.8/share/man/man3/yajl_common.h.350
-rw-r--r--yajl-1.0.8/share/man/man3/yajl_gen.h.3170
-rw-r--r--yajl-1.0.8/share/man/man3/yajl_gen_config.331
-rw-r--r--yajl-1.0.8/share/man/man3/yajl_parse.h.3142
-rw-r--r--yajl-1.0.8/share/man/man3/yajl_parser_config.331
47 files changed, 4492 insertions, 3 deletions
diff --git a/index.html b/index.html
index 9c6cda2..23716f9 100644
--- a/index.html
+++ b/index.html
@@ -90,7 +90,7 @@
<h2>Documentation</h2>
<p>
Documentation generated by doxygen from source is available
- for <a href="yajl-1.0.5/">version 1.0.5</a>.
+ for <a href="yajl-1.0.8/">version 1.0.8</a>.
</p>
<h2>Support</h2>
<p>
@@ -101,8 +101,8 @@
<h2>Download</h2>
<p>
<ul>
- <li><a href="http://github.com/lloyd/yajl/zipball/1.0.5">yajl-1.0.5.zip</a>
- <li><a href="http://github.com/lloyd/yajl/tarball/1.0.5">yajl-1.0.5.tar.gz</a>
+ <li><a href="http://github.com/lloyd/yajl/zipball/1.0.8">yajl-1.0.8.zip</a>
+ <li><a href="http://github.com/lloyd/yajl/tarball/1.0.8">yajl-1.0.8.tar.gz</a>
<li><a href="http://github.com/lloyd/yajl/zipball/master">yajl-trunk.zip</a>
<li><a href="http://github.com/lloyd/yajl/tarball/master">yajl-trunk.tar.gz</a>
</ul>
diff --git a/yajl-1.0.8/bin/json_reformat b/yajl-1.0.8/bin/json_reformat
new file mode 100755
index 0000000..90b48da
--- /dev/null
+++ b/yajl-1.0.8/bin/json_reformat
Binary files differ
diff --git a/yajl-1.0.8/bin/json_verify b/yajl-1.0.8/bin/json_verify
new file mode 100755
index 0000000..24bf993
--- /dev/null
+++ b/yajl-1.0.8/bin/json_verify
Binary files differ
diff --git a/yajl-1.0.8/include/yajl/yajl_common.h b/yajl-1.0.8/include/yajl/yajl_common.h
new file mode 100644
index 0000000..9ad5eb4
--- /dev/null
+++ b/yajl-1.0.8/include/yajl/yajl_common.h
@@ -0,0 +1,85 @@
+/*
+ * Copyright 2007-2009, Lloyd Hilaiel.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in
+ * the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * 3. Neither the name of Lloyd Hilaiel nor the names of its
+ * contributors may be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT,
+ * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+ * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
+ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef __YAJL_COMMON_H__
+#define __YAJL_COMMON_H__
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define YAJL_MAX_DEPTH 128
+
+/* msft dll export gunk. To build a DLL on windows, you
+ * must define WIN32, YAJL_SHARED, and YAJL_BUILD. To use a shared
+ * DLL, you must define YAJL_SHARED and WIN32 */
+#if defined(WIN32) && defined(YAJL_SHARED)
+# ifdef YAJL_BUILD
+# define YAJL_API __declspec(dllexport)
+# else
+# define YAJL_API __declspec(dllimport)
+# endif
+#else
+# define YAJL_API
+#endif
+
+/** pointer to a malloc function, supporting client overriding memory
+ * allocation routines */
+typedef void * (*yajl_malloc_func)(void *ctx, unsigned int sz);
+
+/** pointer to a free function, supporting client overriding memory
+ * allocation routines */
+typedef void (*yajl_free_func)(void *ctx, void * ptr);
+
+/** pointer to a realloc function which can resize an allocation. */
+typedef void * (*yajl_realloc_func)(void *ctx, void * ptr, unsigned int sz);
+
+/** A structure which can be passed to yajl_*_alloc routines to allow the
+ * client to specify memory allocation functions to be used. */
+typedef struct
+{
+ /** pointer to a function that can allocate uninitialized memory */
+ yajl_malloc_func malloc;
+ /** pointer to a function that can resize memory allocations */
+ yajl_realloc_func realloc;
+ /** pointer to a function that can free memory allocated using
+ * reallocFunction or mallocFunction */
+ yajl_free_func free;
+ /** a context pointer that will be passed to above allocation routines */
+ void * ctx;
+} yajl_alloc_funcs;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif
diff --git a/yajl-1.0.8/include/yajl/yajl_gen.h b/yajl-1.0.8/include/yajl/yajl_gen.h
new file mode 100644
index 0000000..2a8bac7
--- /dev/null
+++ b/yajl-1.0.8/include/yajl/yajl_gen.h
@@ -0,0 +1,159 @@
+/*
+ * Copyright 2007-2009, Lloyd Hilaiel.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in
+ * the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * 3. Neither the name of Lloyd Hilaiel nor the names of its
+ * contributors may be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT,
+ * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+ * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
+ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/**
+ * \file yajl_gen.h
+ * Interface to YAJL's JSON generation facilities.
+ */
+
+#include <yajl/yajl_common.h>
+
+#ifndef __YAJL_GEN_H__
+#define __YAJL_GEN_H__
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+ /** generator status codes */
+ typedef enum {
+ /** no error */
+ yajl_gen_status_ok = 0,
+ /** at a point where a map key is generated, a function other than
+ * yajl_gen_string was called */
+ yajl_gen_keys_must_be_strings,
+ /** YAJL's maximum generation depth was exceeded. see
+ * YAJL_MAX_DEPTH */
+ yajl_max_depth_exceeded,
+ /** A generator function (yajl_gen_XXX) was called while in an error
+ * state */
+ yajl_gen_in_error_state,
+ /** A complete JSON document has been generated */
+ yajl_gen_generation_complete,
+ /** yajl_gen_double was passed an invalid floating point value
+ * (infinity or NaN). */
+ yajl_gen_invalid_number,
+ /** A print callback was passed in, so there is no internal
+ * buffer to get from */
+ yajl_gen_no_buf
+ } yajl_gen_status;
+
+ /** an opaque handle to a generator */
+ typedef struct yajl_gen_t * yajl_gen;
+
+ /** a callback used for "printing" the results. */
+ typedef void (*yajl_print_t)(void * ctx,
+ const char * str,
+ unsigned int len);
+
+ /** configuration structure for the generator */
+ typedef struct {
+ /** generate indented (beautiful) output */
+ unsigned int beautify;
+ /** an opportunity to define an indent string. such as \\t or
+ * some number of spaces. default is four spaces ' '. This
+ * member is only relevant when beautify is true */
+ const char * indentString;
+ } yajl_gen_config;
+
+ /** allocate a generator handle
+ * \param config a pointer to a structure containing parameters which
+ * configure the behavior of the json generator
+ * \param allocFuncs an optional pointer to a structure which allows
+ * the client to overide the memory allocation
+ * used by yajl. May be NULL, in which case
+ * malloc/free/realloc will be used.
+ *
+ * \returns an allocated handle on success, NULL on failure (bad params)
+ */
+ YAJL_API yajl_gen yajl_gen_alloc(const yajl_gen_config * config,
+ const yajl_alloc_funcs * allocFuncs);
+
+ /** allocate a generator handle that will print to the specified
+ * callback rather than storing the results in an internal buffer.
+ * \param callback a pointer to a printer function. May be NULL
+ * in which case, the results will be store in an
+ * internal buffer.
+ * \param config a pointer to a structure containing parameters
+ * which configure the behavior of the json
+ * generator.
+ * \param allocFuncs an optional pointer to a structure which allows
+ * the client to overide the memory allocation
+ * used by yajl. May be NULL, in which case
+ * malloc/free/realloc will be used.
+ * \param ctx a context pointer that will be passed to the
+ * printer callback.
+ *
+ * \returns an allocated handle on success, NULL on failure (bad params)
+ */
+ YAJL_API yajl_gen yajl_gen_alloc2(const yajl_print_t callback,
+ const yajl_gen_config * config,
+ const yajl_alloc_funcs * allocFuncs,
+ void * ctx);
+
+ /** free a generator handle */
+ YAJL_API void yajl_gen_free(yajl_gen handle);
+
+ YAJL_API yajl_gen_status yajl_gen_integer(yajl_gen hand, long int number);
+ /** generate a floating point number. number may not be infinity or
+ * NaN, as these have no representation in JSON. In these cases the
+ * generator will return 'yajl_gen_invalid_number' */
+ YAJL_API yajl_gen_status yajl_gen_double(yajl_gen hand, double number);
+ YAJL_API yajl_gen_status yajl_gen_number(yajl_gen hand,
+ const char * num,
+ unsigned int len);
+ YAJL_API yajl_gen_status yajl_gen_string(yajl_gen hand,
+ const unsigned char * str,
+ unsigned int len);
+ YAJL_API yajl_gen_status yajl_gen_null(yajl_gen hand);
+ YAJL_API yajl_gen_status yajl_gen_bool(yajl_gen hand, int boolean);
+ YAJL_API yajl_gen_status yajl_gen_map_open(yajl_gen hand);
+ YAJL_API yajl_gen_status yajl_gen_map_close(yajl_gen hand);
+ YAJL_API yajl_gen_status yajl_gen_array_open(yajl_gen hand);
+ YAJL_API yajl_gen_status yajl_gen_array_close(yajl_gen hand);
+
+ /** access the null terminated generator buffer. If incrementally
+ * outputing JSON, one should call yajl_gen_clear to clear the
+ * buffer. This allows stream generation. */
+ YAJL_API yajl_gen_status yajl_gen_get_buf(yajl_gen hand,
+ const unsigned char ** buf,
+ unsigned int * len);
+
+ /** clear yajl's output buffer, but maintain all internal generation
+ * state. This function will not "reset" the generator state, and is
+ * intended to enable incremental JSON outputing. */
+ YAJL_API void yajl_gen_clear(yajl_gen hand);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif
diff --git a/yajl-1.0.8/include/yajl/yajl_parse.h b/yajl-1.0.8/include/yajl/yajl_parse.h
new file mode 100644
index 0000000..ede1e5b
--- /dev/null
+++ b/yajl-1.0.8/include/yajl/yajl_parse.h
@@ -0,0 +1,193 @@
+/*
+ * Copyright 2007-2009, Lloyd Hilaiel.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in
+ * the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * 3. Neither the name of Lloyd Hilaiel nor the names of its
+ * contributors may be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT,
+ * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+ * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
+ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/**
+ * \file yajl_parse.h
+ * Interface to YAJL's JSON parsing facilities.
+ */
+
+#include <yajl/yajl_common.h>
+
+#ifndef __YAJL_PARSE_H__
+#define __YAJL_PARSE_H__
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+ /** error codes returned from this interface */
+ typedef enum {
+ /** no error was encountered */
+ yajl_status_ok,
+ /** a client callback returned zero, stopping the parse */
+ yajl_status_client_canceled,
+ /** The parse cannot yet complete because more json input text
+ * is required, call yajl_parse with the next buffer of input text.
+ * (pertinent only when stream parsing) */
+ yajl_status_insufficient_data,
+ /** An error occured during the parse. Call yajl_get_error for
+ * more information about the encountered error */
+ yajl_status_error
+ } yajl_status;
+
+ /** attain a human readable, english, string for an error */
+ YAJL_API const char * yajl_status_to_string(yajl_status code);
+
+ /** an opaque handle to a parser */
+ typedef struct yajl_handle_t * yajl_handle;
+
+ /** yajl is an event driven parser. this means as json elements are
+ * parsed, you are called back to do something with the data. The
+ * functions in this table indicate the various events for which
+ * you will be called back. Each callback accepts a "context"
+ * pointer, this is a void * that is passed into the yajl_parse
+ * function which the client code may use to pass around context.
+ *
+ * All callbacks return an integer. If non-zero, the parse will
+ * continue. If zero, the parse will be canceled and
+ * yajl_status_client_canceled will be returned from the parse.
+ *
+ * Note about handling of numbers:
+ * yajl will only convert numbers that can be represented in a double
+ * or a long int. All other numbers will be passed to the client
+ * in string form using the yajl_number callback. Furthermore, if
+ * yajl_number is not NULL, it will always be used to return numbers,
+ * that is yajl_integer and yajl_double will be ignored. If
+ * yajl_number is NULL but one of yajl_integer or yajl_double are
+ * defined, parsing of a number larger than is representable
+ * in a double or long int will result in a parse error.
+ */
+ typedef struct {
+ int (* yajl_null)(void * ctx);
+ int (* yajl_boolean)(void * ctx, int boolVal);
+ int (* yajl_integer)(void * ctx, long integerVal);
+ int (* yajl_double)(void * ctx, double doubleVal);
+ /** A callback which passes the string representation of the number
+ * back to the client. Will be used for all numbers when present */
+ int (* yajl_number)(void * ctx, const char * numberVal,
+ unsigned int numberLen);
+
+ /** strings are returned as pointers into the JSON text when,
+ * possible, as a result, they are _not_ null padded */
+ int (* yajl_string)(void * ctx, const unsigned char * stringVal,
+ unsigned int stringLen);
+
+ int (* yajl_start_map)(void * ctx);
+ int (* yajl_map_key)(void * ctx, const unsigned char * key,
+ unsigned int stringLen);
+ int (* yajl_end_map)(void * ctx);
+
+ int (* yajl_start_array)(void * ctx);
+ int (* yajl_end_array)(void * ctx);
+ } yajl_callbacks;
+
+ /** configuration structure for the generator */
+ typedef struct {
+ /** if nonzero, javascript style comments will be allowed in
+ * the json input, both slash star and slash slash */
+ unsigned int allowComments;
+ /** if nonzero, invalid UTF8 strings will cause a parse
+ * error */
+ unsigned int checkUTF8;
+ } yajl_parser_config;
+
+ /** allocate a parser handle
+ * \param callbacks a yajl callbacks structure specifying the
+ * functions to call when different JSON entities
+ * are encountered in the input text. May be NULL,
+ * which is only useful for validation.
+ * \param config configuration parameters for the parse.
+ * \param ctx a context pointer that will be passed to callbacks.
+ */
+ YAJL_API yajl_handle yajl_alloc(const yajl_callbacks * callbacks,
+ const yajl_parser_config * config,
+ const yajl_alloc_funcs * allocFuncs,
+ void * ctx);
+
+ /** free a parser handle */
+ YAJL_API void yajl_free(yajl_handle handle);
+
+ /** Parse some json!
+ * \param hand - a handle to the json parser allocated with yajl_alloc
+ * \param jsonText - a pointer to the UTF8 json text to be parsed
+ * \param jsonTextLength - the length, in bytes, of input text
+ */
+ YAJL_API yajl_status yajl_parse(yajl_handle hand,
+ const unsigned char * jsonText,
+ unsigned int jsonTextLength);
+
+ /** Parse any remaining buffered json.
+ * Since yajl is a stream-based parser, without an explicit end of
+ * input, yajl sometimes can't decide if content at the end of the
+ * stream is valid or not. For example, if "1" has been fed in,
+ * yajl can't know whether another digit is next or some character
+ * that would terminate the integer token.
+ *
+ * \param hand - a handle to the json parser allocated with yajl_alloc
+ */
+ YAJL_API yajl_status yajl_parse_complete(yajl_handle hand);
+
+ /** get an error string describing the state of the
+ * parse.
+ *
+ * If verbose is non-zero, the message will include the JSON
+ * text where the error occured, along with an arrow pointing to
+ * the specific char.
+ *
+ * \returns A dynamically allocated string will be returned which should
+ * be freed with yajl_free_error
+ */
+ YAJL_API unsigned char * yajl_get_error(yajl_handle hand, int verbose,
+ const unsigned char * jsonText,
+ unsigned int jsonTextLength);
+
+ /**
+ * get the amount of data consumed from the last chunk passed to YAJL.
+ *
+ * In the case of a successful parse this can help you understand if
+ * the entire buffer was consumed (which will allow you to handle
+ * "junk at end of input".
+ *
+ * In the event an error is encountered during parsing, this function
+ * affords the client a way to get the offset into the most recent
+ * chunk where the error occured. 0 will be returned if no error
+ * was encountered.
+ */
+ YAJL_API unsigned int yajl_get_bytes_consumed(yajl_handle hand);
+
+ /** free an error returned from yajl_get_error */
+ YAJL_API void yajl_free_error(yajl_handle hand, unsigned char * str);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif
diff --git a/yajl-1.0.8/lib/libyajl.1.0.8.dylib b/yajl-1.0.8/lib/libyajl.1.0.8.dylib
new file mode 100755
index 0000000..579c3f4
--- /dev/null
+++ b/yajl-1.0.8/lib/libyajl.1.0.8.dylib
Binary files differ
diff --git a/yajl-1.0.8/lib/libyajl.1.dylib b/yajl-1.0.8/lib/libyajl.1.dylib
new file mode 100755
index 0000000..579c3f4
--- /dev/null
+++ b/yajl-1.0.8/lib/libyajl.1.dylib
Binary files differ
diff --git a/yajl-1.0.8/lib/libyajl.dylib b/yajl-1.0.8/lib/libyajl.dylib
new file mode 100755
index 0000000..579c3f4
--- /dev/null
+++ b/yajl-1.0.8/lib/libyajl.dylib
Binary files differ
diff --git a/yajl-1.0.8/lib/libyajl_s.a b/yajl-1.0.8/lib/libyajl_s.a
new file mode 100644
index 0000000..c2780ed
--- /dev/null
+++ b/yajl-1.0.8/lib/libyajl_s.a
Binary files differ
diff --git a/yajl-1.0.8/share/doc/yajl-1.0.8/annotated.html b/yajl-1.0.8/share/doc/yajl-1.0.8/annotated.html
new file mode 100644
index 0000000..e808ca6
--- /dev/null
+++ b/yajl-1.0.8/share/doc/yajl-1.0.8/annotated.html
@@ -0,0 +1,38 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>YAJL: Data Structures</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.6.1 -->
+<div class="navigation" id="top">
+ <div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ </ul>
+ </div>
+ <div class="tabs">
+ <ul>
+ <li class="current"><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
+ <li><a href="functions.html"><span>Data&nbsp;Fields</span></a></li>
+ </ul>
+ </div>
+</div>
+<div class="contents">
+<h1>Data Structures</h1>Here are the data structures with brief descriptions:<table>
+ <tr><td class="indexkey"><a class="el" href="structyajl__alloc__funcs.html">yajl_alloc_funcs</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey"><a class="el" href="structyajl__callbacks.html">yajl_callbacks</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey"><a class="el" href="structyajl__gen__config.html">yajl_gen_config</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey"><a class="el" href="structyajl__parser__config.html">yajl_parser_config</a></td><td class="indexvalue"></td></tr>
+</table>
+</div>
+<hr size="1"/><address style="text-align: right;"><small>Generated on Fri Dec 18 09:38:46 2009 for YAJL by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
+</body>
+</html>
diff --git a/yajl-1.0.8/share/doc/yajl-1.0.8/classes.html b/yajl-1.0.8/share/doc/yajl-1.0.8/classes.html
new file mode 100644
index 0000000..0065a02
--- /dev/null
+++ b/yajl-1.0.8/share/doc/yajl-1.0.8/classes.html
@@ -0,0 +1,36 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>YAJL: Alphabetical List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.6.1 -->
+<div class="navigation" id="top">
+ <div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ </ul>
+ </div>
+ <div class="tabs">
+ <ul>
+ <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
+ <li><a href="functions.html"><span>Data&nbsp;Fields</span></a></li>
+ </ul>
+ </div>
+</div>
+<div class="contents">
+<h1>Data Structure Index</h1><div class="qindex"><a class="qindex" href="#letter_Y">Y</a></div>
+<table align="center" width="95%" border="0" cellspacing="0" cellpadding="0">
+<tr><td><a name="letter_Y"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;Y&nbsp;&nbsp;</div></td></tr></table>
+</td><td><a class="el" href="structyajl__alloc__funcs.html">yajl_alloc_funcs</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="structyajl__callbacks.html">yajl_callbacks</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="structyajl__gen__config.html">yajl_gen_config</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="structyajl__parser__config.html">yajl_parser_config</a>&nbsp;&nbsp;&nbsp;</td></tr></table><div class="qindex"><a class="qindex" href="#letter_Y">Y</a></div>
+</div>
+<hr size="1"/><address style="text-align: right;"><small>Generated on Fri Dec 18 09:38:46 2009 for YAJL by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
+</body>
+</html>
diff --git a/yajl-1.0.8/share/doc/yajl-1.0.8/doxygen.css b/yajl-1.0.8/share/doc/yajl-1.0.8/doxygen.css
new file mode 100644
index 0000000..9ca3caf
--- /dev/null
+++ b/yajl-1.0.8/share/doc/yajl-1.0.8/doxygen.css
@@ -0,0 +1,498 @@
+/* The standard CSS for doxygen */
+
+body, table, div, p, dl {
+ font-family: Lucida Grande, Verdana, Geneva, Arial, sans-serif;
+ font-size: 12px;
+}
+
+/* @group Heading Levels */
+
+h1 {
+ text-align: center;
+ font-size: 150%;
+}
+
+h2 {
+ font-size: 120%;
+}
+
+h3 {
+ font-size: 100%;
+}
+
+dt {
+ font-weight: bold;
+}
+
+div.multicol {
+ -moz-column-gap: 1em;
+ -webkit-column-gap: 1em;
+ -moz-column-count: 3;
+ -webkit-column-count: 3;
+}
+
+p.startli, p.startdd {
+ margin-top: 2px;
+}
+
+p.endli {
+ margin-bottom: 0px;
+}
+
+p.enddd {
+ margin-bottom: 4px;
+}
+
+/* @end */
+
+caption {
+ font-weight: bold;
+}
+
+span.legend {
+ font-size: 70%;
+ text-align: center;
+}
+
+div.qindex, div.navtab{
+ background-color: #e8eef2;
+ border: 1px solid #84b0c7;
+ text-align: center;
+ margin: 2px;
+ padding: 2px;
+}
+
+div.qindex, div.navpath {
+ width: 100%;
+ line-height: 140%;
+}
+
+div.navtab {
+ margin-right: 15px;
+}
+
+/* @group Link Styling */
+
+a {
+ color: #153788;
+ font-weight: normal;
+ text-decoration: none;
+}
+
+.contents a:visited {
+ color: #1b77c5;
+}
+
+a:hover {
+ text-decoration: underline;
+}
+
+a.qindex {
+ font-weight: bold;
+}
+
+a.qindexHL {
+ font-weight: bold;
+ background-color: #6666cc;
+ color: #ffffff;
+ border: 1px double #9295C2;
+}
+
+.contents a.qindexHL:visited {
+ color: #ffffff;
+}
+
+a.el {
+ font-weight: bold;
+}
+
+a.elRef {
+}
+
+a.code {
+}
+
+a.codeRef {
+}
+
+/* @end */
+
+dl.el {
+ margin-left: -1cm;
+}
+
+.fragment {
+ font-family: monospace, fixed;
+ font-size: 105%;
+}
+
+pre.fragment {
+ border: 1px solid #CCCCCC;
+ background-color: #f5f5f5;
+ padding: 4px 6px;
+ margin: 4px 8px 4px 2px;
+}
+
+div.ah {
+ background-color: black;
+ font-weight: bold;
+ color: #ffffff;
+ margin-bottom: 3px;
+ margin-top: 3px
+}
+
+div.groupHeader {
+ margin-left: 16px;
+ margin-top: 12px;
+ margin-bottom: 6px;
+ font-weight: bold;
+}
+
+div.groupText {
+ margin-left: 16px;
+ font-style: italic;
+}
+
+body {
+ background: white;
+ color: black;
+ margin-right: 20px;
+ margin-left: 20px;
+}
+
+td.indexkey {
+ background-color: #e8eef2;
+ font-weight: bold;
+ border: 1px solid #CCCCCC;
+ margin: 2px 0px 2px 0;
+ padding: 2px 10px;
+}
+
+td.indexvalue {
+ background-color: #e8eef2;
+ border: 1px solid #CCCCCC;
+ padding: 2px 10px;
+ margin: 2px 0px;
+}
+
+tr.memlist {
+ background-color: #f0f0f0;
+}
+
+p.formulaDsp {
+ text-align: center;
+}
+
+img.formulaDsp {
+
+}
+
+img.formulaInl {
+ vertical-align: middle;
+}
+
+div.center {
+ text-align: center;
+ margin-top: 0px;
+ margin-bottom: 0px;
+ padding: 0px;
+}
+
+div.center img {
+ border: 0px;
+}
+
+img.footer {
+ border: 0px;
+ vertical-align: middle;
+}
+
+/* @group Code Colorization */
+
+span.keyword {
+ color: #008000
+}
+
+span.keywordtype {
+ color: #604020
+}
+
+span.keywordflow {
+ color: #e08000
+}
+
+span.comment {
+ color: #800000
+}
+
+span.preprocessor {
+ color: #806020
+}
+
+span.stringliteral {
+ color: #002080
+}
+
+span.charliteral {
+ color: #008080
+}
+
+span.vhdldigit {
+ color: #ff00ff
+}
+
+span.vhdlchar {
+ color: #000000
+}
+
+span.vhdlkeyword {
+ color: #700070
+}
+
+span.vhdllogic {
+ color: #ff0000
+}
+
+/* @end */
+
+.search {
+ color: #003399;
+ font-weight: bold;
+}
+
+form.search {
+ margin-bottom: 0px;
+ margin-top: 0px;
+}
+
+input.search {
+ font-size: 75%;
+ color: #000080;
+ font-weight: normal;
+ background-color: #e8eef2;
+}
+
+td.tiny {
+ font-size: 75%;
+}
+
+.dirtab {
+ padding: 4px;
+ border-collapse: collapse;
+ border: 1px solid #84b0c7;
+}
+
+th.dirtab {
+ background: #e8eef2;
+ font-weight: bold;
+}
+
+hr {
+ height: 0;
+ border: none;
+ border-top: 1px solid #666;
+}
+
+/* @group Member Descriptions */
+
+.mdescLeft, .mdescRight,
+.memItemLeft, .memItemRight,
+.memTemplItemLeft, .memTemplItemRight, .memTemplParams {
+ background-color: #FAFAFA;
+ border: none;
+ margin: 4px;
+ padding: 1px 0 0 8px;
+}
+
+.mdescLeft, .mdescRight {
+ padding: 0px 8px 4px 8px;
+ color: #555;
+}
+
+.memItemLeft, .memItemRight, .memTemplParams {
+ border-top: 1px solid #ccc;
+}
+
+.memItemLeft, .memTemplItemLeft {
+ white-space: nowrap;
+}
+
+.memTemplParams {
+ color: #606060;
+ white-space: nowrap;
+}
+
+/* @end */
+
+/* @group Member Details */
+
+/* Styles for detailed member documentation */
+
+.memtemplate {
+ font-size: 80%;
+ color: #606060;
+ font-weight: normal;
+ margin-left: 3px;
+}
+
+.memnav {
+ background-color: #e8eef2;
+ border: 1px solid #84b0c7;
+ text-align: center;
+ margin: 2px;
+ margin-right: 15px;
+ padding: 2px;
+}
+
+.memitem {
+ padding: 0;
+ margin-bottom: 10px;
+}
+
+.memname {
+ white-space: nowrap;
+ font-weight: bold;
+}
+
+.memproto, .memdoc {
+ border: 1px solid #84b0c7;
+}
+
+.memproto {
+ padding: 0;
+ background-color: #d5e1e8;
+ font-weight: bold;
+ -webkit-border-top-left-radius: 8px;
+ -webkit-border-top-right-radius: 8px;
+ -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+ -moz-border-radius-topleft: 8px;
+ -moz-border-radius-topright: 8px;
+ -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px;
+
+}
+
+.memdoc {
+ padding: 2px 5px;
+ background-color: #eef3f5;
+ border-top-width: 0;
+ -webkit-border-bottom-left-radius: 8px;
+ -webkit-border-bottom-right-radius: 8px;
+ -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+ -moz-border-radius-bottomleft: 8px;
+ -moz-border-radius-bottomright: 8px;
+ -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px;
+}
+
+.paramkey {
+ text-align: right;
+}
+
+.paramtype {
+ white-space: nowrap;
+}
+
+.paramname {
+ color: #602020;
+ white-space: nowrap;
+}
+.paramname em {
+ font-style: normal;
+}
+
+/* @end */
+
+/* @group Directory (tree) */
+
+/* for the tree view */
+
+.ftvtree {
+ font-family: sans-serif;
+ margin: 0.5em;
+}
+
+/* these are for tree view when used as main index */
+
+.directory {
+ font-size: 9pt;
+ font-weight: bold;
+}
+
+.directory h3 {
+ margin: 0px;
+ margin-top: 1em;
+ font-size: 11pt;
+}
+
+/*
+The following two styles can be used to replace the root node title
+with an image of your choice. Simply uncomment the next two styles,
+specify the name of your image and be sure to set 'height' to the
+proper pixel height of your image.
+*/
+
+/*
+.directory h3.swap {
+ height: 61px;
+ background-repeat: no-repeat;
+ background-image: url("yourimage.gif");
+}
+.directory h3.swap span {
+ display: none;
+}
+*/
+
+.directory > h3 {
+ margin-top: 0;
+}
+
+.directory p {
+ margin: 0px;
+ white-space: nowrap;
+}
+
+.directory div {
+ display: none;
+ margin: 0px;
+}
+
+.directory img {
+ vertical-align: -30%;
+}
+
+/* these are for tree view when not used as main index */
+
+.directory-alt {
+ font-size: 100%;
+ font-weight: bold;
+}
+
+.directory-alt h3 {
+ margin: 0px;
+ margin-top: 1em;
+ font-size: 11pt;
+}
+
+.directory-alt > h3 {
+ margin-top: 0;
+}
+
+.directory-alt p {
+ margin: 0px;
+ white-space: nowrap;
+}
+
+.directory-alt div {
+ display: none;
+ margin: 0px;
+}
+
+.directory-alt img {
+ vertical-align: -30%;
+}
+
+/* @end */
+
+address {
+ font-style: normal;
+ color: #333;
+}
diff --git a/yajl-1.0.8/share/doc/yajl-1.0.8/doxygen.png b/yajl-1.0.8/share/doc/yajl-1.0.8/doxygen.png
new file mode 100644
index 0000000..f0a274b
--- /dev/null
+++ b/yajl-1.0.8/share/doc/yajl-1.0.8/doxygen.png
Binary files differ
diff --git a/yajl-1.0.8/share/doc/yajl-1.0.8/files.html b/yajl-1.0.8/share/doc/yajl-1.0.8/files.html
new file mode 100644
index 0000000..570bea3
--- /dev/null
+++ b/yajl-1.0.8/share/doc/yajl-1.0.8/files.html
@@ -0,0 +1,38 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>YAJL: File Index</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.6.1 -->
+<div class="navigation" id="top">
+ <div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ </ul>
+ </div>
+ <div class="tabs">
+ <ul>
+ <li class="current"><a href="files.html"><span>File&nbsp;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+</div>
+<div class="contents">
+<h1>File List</h1>Here is a list of all files with brief descriptions:<table>
+ <tr><td class="indexkey"><a class="el" href="yajl.html">yajl</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey"><a class="el" href="yajl__common_8h.html">yajl_common.h</a> <a href="yajl__common_8h_source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey"><a class="el" href="yajl__gen_8h.html">yajl_gen.h</a> <a href="yajl__gen_8h_source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey"><a class="el" href="yajl__parse_8h.html">yajl_parse.h</a> <a href="yajl__parse_8h_source.html">[code]</a></td><td class="indexvalue"></td></tr>
+</table>
+</div>
+<hr size="1"/><address style="text-align: right;"><small>Generated on Fri Dec 18 09:38:46 2009 for YAJL by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
+</body>
+</html>
diff --git a/yajl-1.0.8/share/doc/yajl-1.0.8/functions.html b/yajl-1.0.8/share/doc/yajl-1.0.8/functions.html
new file mode 100644
index 0000000..f435b2b
--- /dev/null
+++ b/yajl-1.0.8/share/doc/yajl-1.0.8/functions.html
@@ -0,0 +1,97 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>YAJL: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.6.1 -->
+<div class="navigation" id="top">
+ <div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ </ul>
+ </div>
+ <div class="tabs">
+ <ul>
+ <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&nbsp;Fields</span></a></li>
+ </ul>
+ </div>
+ <div class="tabs">
+ <ul>
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+</div>
+<div class="contents">
+Here is a list of all struct and union fields with links to the structures/unions they belong to:<ul>
+<li>allowComments
+: <a class="el" href="structyajl__parser__config.html#a756447fe054dc7a0b423d679e8391163">yajl_parser_config</a>
+</li>
+<li>beautify
+: <a class="el" href="structyajl__gen__config.html#a85437a875ae65161b4f28bac6ff89c99">yajl_gen_config</a>
+</li>
+<li>checkUTF8
+: <a class="el" href="structyajl__parser__config.html#a33f7ab7fb27bf626441f15d649dea5d9">yajl_parser_config</a>
+</li>
+<li>ctx
+: <a class="el" href="structyajl__alloc__funcs.html#afa64c0d73d185a6fdabd648e9746f6b5">yajl_alloc_funcs</a>
+</li>
+<li>free
+: <a class="el" href="structyajl__alloc__funcs.html#a0c29b65b64754fdadbbbe9ea04701a2f">yajl_alloc_funcs</a>
+</li>
+<li>indentString
+: <a class="el" href="structyajl__gen__config.html#aa260f86485635c65ab7cf7bbb6f34107">yajl_gen_config</a>
+</li>
+<li>malloc
+: <a class="el" href="structyajl__alloc__funcs.html#a4e32ade73f896e6446f8cb0ad0ee7456">yajl_alloc_funcs</a>
+</li>
+<li>realloc
+: <a class="el" href="structyajl__alloc__funcs.html#ae677d7c736fe2d735f83f3dd17cfacb7">yajl_alloc_funcs</a>
+</li>
+<li>yajl_boolean
+: <a class="el" href="structyajl__callbacks.html#a9e4e6a69c6e88dbb1db692cc51fdcb85">yajl_callbacks</a>
+</li>
+<li>yajl_double
+: <a class="el" href="structyajl__callbacks.html#a6e4b6fc64ddb2707950eb811304d1c46">yajl_callbacks</a>
+</li>
+<li>yajl_end_array
+: <a class="el" href="structyajl__callbacks.html#a4671213ae60fed9bc885c38829362b0c">yajl_callbacks</a>
+</li>
+<li>yajl_end_map
+: <a class="el" href="structyajl__callbacks.html#aff8abd4229027390adf59afcbb4e0f42">yajl_callbacks</a>
+</li>
+<li>yajl_integer
+: <a class="el" href="structyajl__callbacks.html#a929c2dc82d37b48fc03ce20f22d40769">yajl_callbacks</a>
+</li>
+<li>yajl_map_key
+: <a class="el" href="structyajl__callbacks.html#ae0c22a317a89a4d2bcb71a45673b28c9">yajl_callbacks</a>
+</li>
+<li>yajl_null
+: <a class="el" href="structyajl__callbacks.html#a119925fa35d01fd556faa502397a6eb8">yajl_callbacks</a>
+</li>
+<li>yajl_number
+: <a class="el" href="structyajl__callbacks.html#a485231e16d8cfc35efef17dfe2da2964">yajl_callbacks</a>
+</li>
+<li>yajl_start_array
+: <a class="el" href="structyajl__callbacks.html#aaf4cf875e2a6e1ab1a8af94d16f60083">yajl_callbacks</a>
+</li>
+<li>yajl_start_map
+: <a class="el" href="structyajl__callbacks.html#a9da6fafbc2069780a02710778e61462e">yajl_callbacks</a>
+</li>
+<li>yajl_string
+: <a class="el" href="structyajl__callbacks.html#a401e63b822dccecc78dc548a5a35cff1">yajl_callbacks</a>
+</li>
+</ul>
+</div>
+<hr size="1"/><address style="text-align: right;"><small>Generated on Fri Dec 18 09:38:46 2009 for YAJL by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
+</body>
+</html>
diff --git a/yajl-1.0.8/share/doc/yajl-1.0.8/functions_vars.html b/yajl-1.0.8/share/doc/yajl-1.0.8/functions_vars.html
new file mode 100644
index 0000000..e47bfed
--- /dev/null
+++ b/yajl-1.0.8/share/doc/yajl-1.0.8/functions_vars.html
@@ -0,0 +1,97 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>YAJL: Data Fields - Variables</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.6.1 -->
+<div class="navigation" id="top">
+ <div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ </ul>
+ </div>
+ <div class="tabs">
+ <ul>
+ <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&nbsp;Fields</span></a></li>
+ </ul>
+ </div>
+ <div class="tabs">
+ <ul>
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+</div>
+<div class="contents">
+&nbsp;<ul>
+<li>allowComments
+: <a class="el" href="structyajl__parser__config.html#a756447fe054dc7a0b423d679e8391163">yajl_parser_config</a>
+</li>
+<li>beautify
+: <a class="el" href="structyajl__gen__config.html#a85437a875ae65161b4f28bac6ff89c99">yajl_gen_config</a>
+</li>
+<li>checkUTF8
+: <a class="el" href="structyajl__parser__config.html#a33f7ab7fb27bf626441f15d649dea5d9">yajl_parser_config</a>
+</li>
+<li>ctx
+: <a class="el" href="structyajl__alloc__funcs.html#afa64c0d73d185a6fdabd648e9746f6b5">yajl_alloc_funcs</a>
+</li>
+<li>free
+: <a class="el" href="structyajl__alloc__funcs.html#a0c29b65b64754fdadbbbe9ea04701a2f">yajl_alloc_funcs</a>
+</li>
+<li>indentString
+: <a class="el" href="structyajl__gen__config.html#aa260f86485635c65ab7cf7bbb6f34107">yajl_gen_config</a>
+</li>
+<li>malloc
+: <a class="el" href="structyajl__alloc__funcs.html#a4e32ade73f896e6446f8cb0ad0ee7456">yajl_alloc_funcs</a>
+</li>
+<li>realloc
+: <a class="el" href="structyajl__alloc__funcs.html#ae677d7c736fe2d735f83f3dd17cfacb7">yajl_alloc_funcs</a>
+</li>
+<li>yajl_boolean
+: <a class="el" href="structyajl__callbacks.html#a9e4e6a69c6e88dbb1db692cc51fdcb85">yajl_callbacks</a>
+</li>
+<li>yajl_double
+: <a class="el" href="structyajl__callbacks.html#a6e4b6fc64ddb2707950eb811304d1c46">yajl_callbacks</a>
+</li>
+<li>yajl_end_array
+: <a class="el" href="structyajl__callbacks.html#a4671213ae60fed9bc885c38829362b0c">yajl_callbacks</a>
+</li>
+<li>yajl_end_map
+: <a class="el" href="structyajl__callbacks.html#aff8abd4229027390adf59afcbb4e0f42">yajl_callbacks</a>
+</li>
+<li>yajl_integer
+: <a class="el" href="structyajl__callbacks.html#a929c2dc82d37b48fc03ce20f22d40769">yajl_callbacks</a>
+</li>
+<li>yajl_map_key
+: <a class="el" href="structyajl__callbacks.html#ae0c22a317a89a4d2bcb71a45673b28c9">yajl_callbacks</a>
+</li>
+<li>yajl_null
+: <a class="el" href="structyajl__callbacks.html#a119925fa35d01fd556faa502397a6eb8">yajl_callbacks</a>
+</li>
+<li>yajl_number
+: <a class="el" href="structyajl__callbacks.html#a485231e16d8cfc35efef17dfe2da2964">yajl_callbacks</a>
+</li>
+<li>yajl_start_array
+: <a class="el" href="structyajl__callbacks.html#aaf4cf875e2a6e1ab1a8af94d16f60083">yajl_callbacks</a>
+</li>
+<li>yajl_start_map
+: <a class="el" href="structyajl__callbacks.html#a9da6fafbc2069780a02710778e61462e">yajl_callbacks</a>
+</li>
+<li>yajl_string
+: <a class="el" href="structyajl__callbacks.html#a401e63b822dccecc78dc548a5a35cff1">yajl_callbacks</a>
+</li>
+</ul>
+</div>
+<hr size="1"/><address style="text-align: right;"><small>Generated on Fri Dec 18 09:38:46 2009 for YAJL by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
+</body>
+</html>
diff --git a/yajl-1.0.8/share/doc/yajl-1.0.8/globals.html b/yajl-1.0.8/share/doc/yajl-1.0.8/globals.html
new file mode 100644
index 0000000..55a45e0
--- /dev/null
+++ b/yajl-1.0.8/share/doc/yajl-1.0.8/globals.html
@@ -0,0 +1,183 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>YAJL: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.6.1 -->
+<div class="navigation" id="top">
+ <div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ </ul>
+ </div>
+ <div class="tabs">
+ <ul>
+ <li><a href="files.html"><span>File&nbsp;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div class="tabs">
+ <ul>
+ <li class="current"><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Defines</span></a></li>
+ </ul>
+ </div>
+ <div class="tabs">
+ <ul>
+ <li><a href="#index_y"><span>y</span></a></li>
+ </ul>
+ </div>
+</div>
+<div class="contents">
+Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:
+
+<h3><a class="anchor" id="index_y">- y -</a></h3><ul>
+<li>yajl_alloc()
+: <a class="el" href="yajl__parse_8h.html#ab80d9d2cd7a50a9299b7d6a658a3eb7f">yajl_parse.h</a>
+</li>
+<li>YAJL_API
+: <a class="el" href="yajl__common_8h.html#a112d9a9234313b4fa3d419c0723146c5">yajl_common.h</a>
+</li>
+<li>yajl_free()
+: <a class="el" href="yajl__parse_8h.html#a17a804d07aa6cb03c047096df4b2e866">yajl_parse.h</a>
+</li>
+<li>yajl_free_error()
+: <a class="el" href="yajl__parse_8h.html#ab752a2010e051cbef8169935b1476017">yajl_parse.h</a>
+</li>
+<li>yajl_free_func
+: <a class="el" href="yajl__common_8h.html#a198f518fe5c41d9c3fc3818ec4e2b6f0">yajl_common.h</a>
+</li>
+<li>yajl_gen
+: <a class="el" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen.h</a>
+</li>
+<li>yajl_gen_alloc()
+: <a class="el" href="yajl__gen_8h.html#a23d15a99325caf8e2029d055d7785b76">yajl_gen.h</a>
+</li>
+<li>yajl_gen_alloc2()
+: <a class="el" href="yajl__gen_8h.html#a16344b7507e05a2702f77247af0ac4ac">yajl_gen.h</a>
+</li>
+<li>yajl_gen_array_close()
+: <a class="el" href="yajl__gen_8h.html#a47b2e6e6f095c9fac62cb302629cb266">yajl_gen.h</a>
+</li>
+<li>yajl_gen_array_open()
+: <a class="el" href="yajl__gen_8h.html#a47fa41264cff538c1b6d022dc67ea59e">yajl_gen.h</a>
+</li>
+<li>yajl_gen_bool()
+: <a class="el" href="yajl__gen_8h.html#af289e0519f7ad7c9523ec9ae0f94ff97">yajl_gen.h</a>
+</li>
+<li>yajl_gen_clear()
+: <a class="el" href="yajl__gen_8h.html#a2e8267e496446a517948952f6f1ef3cb">yajl_gen.h</a>
+</li>
+<li>yajl_gen_double()
+: <a class="el" href="yajl__gen_8h.html#acbafa654956dd452650ced866927f64c">yajl_gen.h</a>
+</li>
+<li>yajl_gen_free()
+: <a class="el" href="yajl__gen_8h.html#a4546ceff8f26e209a79d875ab40fe808">yajl_gen.h</a>
+</li>
+<li>yajl_gen_generation_complete
+: <a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63caa8274e47b1f4dd68841a67e56868f7bb4">yajl_gen.h</a>
+</li>
+<li>yajl_gen_get_buf()
+: <a class="el" href="yajl__gen_8h.html#ae59a572028ef98b3aff11802b1583712">yajl_gen.h</a>
+</li>
+<li>yajl_gen_in_error_state
+: <a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63caa9ea74847e6d0e91bc7ee544e9851dc18">yajl_gen.h</a>
+</li>
+<li>yajl_gen_integer()
+: <a class="el" href="yajl__gen_8h.html#ad24b1fc406024b3636ff8f976d068eb3">yajl_gen.h</a>
+</li>
+<li>yajl_gen_invalid_number
+: <a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63caa870e2d12c18f71a51697ddc4050a1262">yajl_gen.h</a>
+</li>
+<li>yajl_gen_keys_must_be_strings
+: <a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63caacc1716680733d72f34676755cdc4e876">yajl_gen.h</a>
+</li>
+<li>yajl_gen_map_close()
+: <a class="el" href="yajl__gen_8h.html#a0cb9e2d38eb8861f91903b3e1832ee09">yajl_gen.h</a>
+</li>
+<li>yajl_gen_map_open()
+: <a class="el" href="yajl__gen_8h.html#a3f5c340a31b5af0a1c3f38b505c22691">yajl_gen.h</a>
+</li>
+<li>yajl_gen_no_buf
+: <a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63caae50f6bbe222a87d4d202933e5347b0d7">yajl_gen.h</a>
+</li>
+<li>yajl_gen_null()
+: <a class="el" href="yajl__gen_8h.html#a430c1d19322d71298af9870f62b4a771">yajl_gen.h</a>
+</li>
+<li>yajl_gen_number()
+: <a class="el" href="yajl__gen_8h.html#a1664d40dc4038ef90476f8218c696c23">yajl_gen.h</a>
+</li>
+<li>yajl_gen_status
+: <a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63ca">yajl_gen.h</a>
+</li>
+<li>yajl_gen_status_ok
+: <a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63caa457aa396721f15a7cf34508bf00e22d7">yajl_gen.h</a>
+</li>
+<li>yajl_gen_string()
+: <a class="el" href="yajl__gen_8h.html#add4fbe27fd9cad440b41dbb9f94a4c0f">yajl_gen.h</a>
+</li>
+<li>yajl_get_bytes_consumed()
+: <a class="el" href="yajl__parse_8h.html#a5a1afb1f97b6967bd27f53403f868f30">yajl_parse.h</a>
+</li>
+<li>yajl_get_error()
+: <a class="el" href="yajl__parse_8h.html#ae665f5b192a777b7252edd0a1d4a40e8">yajl_parse.h</a>
+</li>
+<li>yajl_handle
+: <a class="el" href="yajl__parse_8h.html#acb85b92f3d7cb6f0743b4e68d0172323">yajl_parse.h</a>
+</li>
+<li>yajl_malloc_func
+: <a class="el" href="yajl__common_8h.html#aa3099e2f5b71d4886c47140dfdb19f71">yajl_common.h</a>
+</li>
+<li>YAJL_MAX_DEPTH
+: <a class="el" href="yajl__common_8h.html#a5c4e27acd65107c08224f00d0dc57d9e">yajl_common.h</a>
+</li>
+<li>yajl_max_depth_exceeded
+: <a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63caa2db8bdfc64aab69fe95a33ba76d087e8">yajl_gen.h</a>
+</li>
+<li>yajl_parse()
+: <a class="el" href="yajl__parse_8h.html#af7fc3bb5b868d2de99624d5a013fca8b">yajl_parse.h</a>
+</li>
+<li>yajl_parse_complete()
+: <a class="el" href="yajl__parse_8h.html#ac348460bb319bcbeb646b542bf150b93">yajl_parse.h</a>
+</li>
+<li>yajl_print_t
+: <a class="el" href="yajl__gen_8h.html#ab5ce9d34211be4fe3f05db71182f3b63">yajl_gen.h</a>
+</li>
+<li>yajl_realloc_func
+: <a class="el" href="yajl__common_8h.html#a58a4923c4711df6074864fe3206da417">yajl_common.h</a>
+</li>
+<li>yajl_status
+: <a class="el" href="yajl__parse_8h.html#a1d2bc7f4962c55436daaba61ffaf1f7d">yajl_parse.h</a>
+</li>
+<li>yajl_status_client_canceled
+: <a class="el" href="yajl__parse_8h.html#a1d2bc7f4962c55436daaba61ffaf1f7da44d6b8f18ecb5e30be3eb5b2f1f5717e">yajl_parse.h</a>
+</li>
+<li>yajl_status_error
+: <a class="el" href="yajl__parse_8h.html#a1d2bc7f4962c55436daaba61ffaf1f7daeea581fa9c967d34ad5f062ef59718fd">yajl_parse.h</a>
+</li>
+<li>yajl_status_insufficient_data
+: <a class="el" href="yajl__parse_8h.html#a1d2bc7f4962c55436daaba61ffaf1f7da88c7cd7b308d09c32dad74b47b9ae3f4">yajl_parse.h</a>
+</li>
+<li>yajl_status_ok
+: <a class="el" href="yajl__parse_8h.html#a1d2bc7f4962c55436daaba61ffaf1f7da67a2a1b5d684de357adb0e1ea444ffd7">yajl_parse.h</a>
+</li>
+<li>yajl_status_to_string()
+: <a class="el" href="yajl__parse_8h.html#a883c11ca49ee36d31b45925852e468d2">yajl_parse.h</a>
+</li>
+</ul>
+</div>
+<hr size="1"/><address style="text-align: right;"><small>Generated on Fri Dec 18 09:38:46 2009 for YAJL by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
+</body>
+</html>
diff --git a/yajl-1.0.8/share/doc/yajl-1.0.8/globals_defs.html b/yajl-1.0.8/share/doc/yajl-1.0.8/globals_defs.html
new file mode 100644
index 0000000..8f9bcfe
--- /dev/null
+++ b/yajl-1.0.8/share/doc/yajl-1.0.8/globals_defs.html
@@ -0,0 +1,50 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>YAJL: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.6.1 -->
+<div class="navigation" id="top">
+ <div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ </ul>
+ </div>
+ <div class="tabs">
+ <ul>
+ <li><a href="files.html"><span>File&nbsp;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div class="tabs">
+ <ul>
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li class="current"><a href="globals_defs.html"><span>Defines</span></a></li>
+ </ul>
+ </div>
+</div>
+<div class="contents">
+&nbsp;<ul>
+<li>YAJL_API
+: <a class="el" href="yajl__common_8h.html#a112d9a9234313b4fa3d419c0723146c5">yajl_common.h</a>
+</li>
+<li>YAJL_MAX_DEPTH
+: <a class="el" href="yajl__common_8h.html#a5c4e27acd65107c08224f00d0dc57d9e">yajl_common.h</a>
+</li>
+</ul>
+</div>
+<hr size="1"/><address style="text-align: right;"><small>Generated on Fri Dec 18 09:38:46 2009 for YAJL by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
+</body>
+</html>
diff --git a/yajl-1.0.8/share/doc/yajl-1.0.8/globals_enum.html b/yajl-1.0.8/share/doc/yajl-1.0.8/globals_enum.html
new file mode 100644
index 0000000..971e6f7
--- /dev/null
+++ b/yajl-1.0.8/share/doc/yajl-1.0.8/globals_enum.html
@@ -0,0 +1,50 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>YAJL: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.6.1 -->
+<div class="navigation" id="top">
+ <div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ </ul>
+ </div>
+ <div class="tabs">
+ <ul>
+ <li><a href="files.html"><span>File&nbsp;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div class="tabs">
+ <ul>
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li class="current"><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Defines</span></a></li>
+ </ul>
+ </div>
+</div>
+<div class="contents">
+&nbsp;<ul>
+<li>yajl_gen_status
+: <a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63ca">yajl_gen.h</a>
+</li>
+<li>yajl_status
+: <a class="el" href="yajl__parse_8h.html#a1d2bc7f4962c55436daaba61ffaf1f7d">yajl_parse.h</a>
+</li>
+</ul>
+</div>
+<hr size="1"/><address style="text-align: right;"><small>Generated on Fri Dec 18 09:38:46 2009 for YAJL by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
+</body>
+</html>
diff --git a/yajl-1.0.8/share/doc/yajl-1.0.8/globals_eval.html b/yajl-1.0.8/share/doc/yajl-1.0.8/globals_eval.html
new file mode 100644
index 0000000..5744229
--- /dev/null
+++ b/yajl-1.0.8/share/doc/yajl-1.0.8/globals_eval.html
@@ -0,0 +1,77 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>YAJL: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.6.1 -->
+<div class="navigation" id="top">
+ <div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ </ul>
+ </div>
+ <div class="tabs">
+ <ul>
+ <li><a href="files.html"><span>File&nbsp;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div class="tabs">
+ <ul>
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li class="current"><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Defines</span></a></li>
+ </ul>
+ </div>
+</div>
+<div class="contents">
+&nbsp;<ul>
+<li>yajl_gen_generation_complete
+: <a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63caa8274e47b1f4dd68841a67e56868f7bb4">yajl_gen.h</a>
+</li>
+<li>yajl_gen_in_error_state
+: <a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63caa9ea74847e6d0e91bc7ee544e9851dc18">yajl_gen.h</a>
+</li>
+<li>yajl_gen_invalid_number
+: <a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63caa870e2d12c18f71a51697ddc4050a1262">yajl_gen.h</a>
+</li>
+<li>yajl_gen_keys_must_be_strings
+: <a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63caacc1716680733d72f34676755cdc4e876">yajl_gen.h</a>
+</li>
+<li>yajl_gen_no_buf
+: <a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63caae50f6bbe222a87d4d202933e5347b0d7">yajl_gen.h</a>
+</li>
+<li>yajl_gen_status_ok
+: <a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63caa457aa396721f15a7cf34508bf00e22d7">yajl_gen.h</a>
+</li>
+<li>yajl_max_depth_exceeded
+: <a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63caa2db8bdfc64aab69fe95a33ba76d087e8">yajl_gen.h</a>
+</li>
+<li>yajl_status_client_canceled
+: <a class="el" href="yajl__parse_8h.html#a1d2bc7f4962c55436daaba61ffaf1f7da44d6b8f18ecb5e30be3eb5b2f1f5717e">yajl_parse.h</a>
+</li>
+<li>yajl_status_error
+: <a class="el" href="yajl__parse_8h.html#a1d2bc7f4962c55436daaba61ffaf1f7daeea581fa9c967d34ad5f062ef59718fd">yajl_parse.h</a>
+</li>
+<li>yajl_status_insufficient_data
+: <a class="el" href="yajl__parse_8h.html#a1d2bc7f4962c55436daaba61ffaf1f7da88c7cd7b308d09c32dad74b47b9ae3f4">yajl_parse.h</a>
+</li>
+<li>yajl_status_ok
+: <a class="el" href="yajl__parse_8h.html#a1d2bc7f4962c55436daaba61ffaf1f7da67a2a1b5d684de357adb0e1ea444ffd7">yajl_parse.h</a>
+</li>
+</ul>
+</div>
+<hr size="1"/><address style="text-align: right;"><small>Generated on Fri Dec 18 09:38:46 2009 for YAJL by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
+</body>
+</html>
diff --git a/yajl-1.0.8/share/doc/yajl-1.0.8/globals_func.html b/yajl-1.0.8/share/doc/yajl-1.0.8/globals_func.html
new file mode 100644
index 0000000..9ef4f0c
--- /dev/null
+++ b/yajl-1.0.8/share/doc/yajl-1.0.8/globals_func.html
@@ -0,0 +1,113 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>YAJL: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.6.1 -->
+<div class="navigation" id="top">
+ <div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ </ul>
+ </div>
+ <div class="tabs">
+ <ul>
+ <li><a href="files.html"><span>File&nbsp;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div class="tabs">
+ <ul>
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li class="current"><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Defines</span></a></li>
+ </ul>
+ </div>
+</div>
+<div class="contents">
+&nbsp;<ul>
+<li>yajl_alloc()
+: <a class="el" href="yajl__parse_8h.html#ab80d9d2cd7a50a9299b7d6a658a3eb7f">yajl_parse.h</a>
+</li>
+<li>yajl_free()
+: <a class="el" href="yajl__parse_8h.html#a17a804d07aa6cb03c047096df4b2e866">yajl_parse.h</a>
+</li>
+<li>yajl_free_error()
+: <a class="el" href="yajl__parse_8h.html#ab752a2010e051cbef8169935b1476017">yajl_parse.h</a>
+</li>
+<li>yajl_gen_alloc()
+: <a class="el" href="yajl__gen_8h.html#a23d15a99325caf8e2029d055d7785b76">yajl_gen.h</a>
+</li>
+<li>yajl_gen_alloc2()
+: <a class="el" href="yajl__gen_8h.html#a16344b7507e05a2702f77247af0ac4ac">yajl_gen.h</a>
+</li>
+<li>yajl_gen_array_close()
+: <a class="el" href="yajl__gen_8h.html#a47b2e6e6f095c9fac62cb302629cb266">yajl_gen.h</a>
+</li>
+<li>yajl_gen_array_open()
+: <a class="el" href="yajl__gen_8h.html#a47fa41264cff538c1b6d022dc67ea59e">yajl_gen.h</a>
+</li>
+<li>yajl_gen_bool()
+: <a class="el" href="yajl__gen_8h.html#af289e0519f7ad7c9523ec9ae0f94ff97">yajl_gen.h</a>
+</li>
+<li>yajl_gen_clear()
+: <a class="el" href="yajl__gen_8h.html#a2e8267e496446a517948952f6f1ef3cb">yajl_gen.h</a>
+</li>
+<li>yajl_gen_double()
+: <a class="el" href="yajl__gen_8h.html#acbafa654956dd452650ced866927f64c">yajl_gen.h</a>
+</li>
+<li>yajl_gen_free()
+: <a class="el" href="yajl__gen_8h.html#a4546ceff8f26e209a79d875ab40fe808">yajl_gen.h</a>
+</li>
+<li>yajl_gen_get_buf()
+: <a class="el" href="yajl__gen_8h.html#ae59a572028ef98b3aff11802b1583712">yajl_gen.h</a>
+</li>
+<li>yajl_gen_integer()
+: <a class="el" href="yajl__gen_8h.html#ad24b1fc406024b3636ff8f976d068eb3">yajl_gen.h</a>
+</li>
+<li>yajl_gen_map_close()
+: <a class="el" href="yajl__gen_8h.html#a0cb9e2d38eb8861f91903b3e1832ee09">yajl_gen.h</a>
+</li>
+<li>yajl_gen_map_open()
+: <a class="el" href="yajl__gen_8h.html#a3f5c340a31b5af0a1c3f38b505c22691">yajl_gen.h</a>
+</li>
+<li>yajl_gen_null()
+: <a class="el" href="yajl__gen_8h.html#a430c1d19322d71298af9870f62b4a771">yajl_gen.h</a>
+</li>
+<li>yajl_gen_number()
+: <a class="el" href="yajl__gen_8h.html#a1664d40dc4038ef90476f8218c696c23">yajl_gen.h</a>
+</li>
+<li>yajl_gen_string()
+: <a class="el" href="yajl__gen_8h.html#add4fbe27fd9cad440b41dbb9f94a4c0f">yajl_gen.h</a>
+</li>
+<li>yajl_get_bytes_consumed()
+: <a class="el" href="yajl__parse_8h.html#a5a1afb1f97b6967bd27f53403f868f30">yajl_parse.h</a>
+</li>
+<li>yajl_get_error()
+: <a class="el" href="yajl__parse_8h.html#ae665f5b192a777b7252edd0a1d4a40e8">yajl_parse.h</a>
+</li>
+<li>yajl_parse()
+: <a class="el" href="yajl__parse_8h.html#af7fc3bb5b868d2de99624d5a013fca8b">yajl_parse.h</a>
+</li>
+<li>yajl_parse_complete()
+: <a class="el" href="yajl__parse_8h.html#ac348460bb319bcbeb646b542bf150b93">yajl_parse.h</a>
+</li>
+<li>yajl_status_to_string()
+: <a class="el" href="yajl__parse_8h.html#a883c11ca49ee36d31b45925852e468d2">yajl_parse.h</a>
+</li>
+</ul>
+</div>
+<hr size="1"/><address style="text-align: right;"><small>Generated on Fri Dec 18 09:38:46 2009 for YAJL by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
+</body>
+</html>
diff --git a/yajl-1.0.8/share/doc/yajl-1.0.8/globals_type.html b/yajl-1.0.8/share/doc/yajl-1.0.8/globals_type.html
new file mode 100644
index 0000000..d7e548f
--- /dev/null
+++ b/yajl-1.0.8/share/doc/yajl-1.0.8/globals_type.html
@@ -0,0 +1,62 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>YAJL: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.6.1 -->
+<div class="navigation" id="top">
+ <div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ </ul>
+ </div>
+ <div class="tabs">
+ <ul>
+ <li><a href="files.html"><span>File&nbsp;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div class="tabs">
+ <ul>
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li class="current"><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Defines</span></a></li>
+ </ul>
+ </div>
+</div>
+<div class="contents">
+&nbsp;<ul>
+<li>yajl_free_func
+: <a class="el" href="yajl__common_8h.html#a198f518fe5c41d9c3fc3818ec4e2b6f0">yajl_common.h</a>
+</li>
+<li>yajl_gen
+: <a class="el" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen.h</a>
+</li>
+<li>yajl_handle
+: <a class="el" href="yajl__parse_8h.html#acb85b92f3d7cb6f0743b4e68d0172323">yajl_parse.h</a>
+</li>
+<li>yajl_malloc_func
+: <a class="el" href="yajl__common_8h.html#aa3099e2f5b71d4886c47140dfdb19f71">yajl_common.h</a>
+</li>
+<li>yajl_print_t
+: <a class="el" href="yajl__gen_8h.html#ab5ce9d34211be4fe3f05db71182f3b63">yajl_gen.h</a>
+</li>
+<li>yajl_realloc_func
+: <a class="el" href="yajl__common_8h.html#a58a4923c4711df6074864fe3206da417">yajl_common.h</a>
+</li>
+</ul>
+</div>
+<hr size="1"/><address style="text-align: right;"><small>Generated on Fri Dec 18 09:38:46 2009 for YAJL by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
+</body>
+</html>
diff --git a/yajl-1.0.8/share/doc/yajl-1.0.8/index.html b/yajl-1.0.8/share/doc/yajl-1.0.8/index.html
new file mode 100644
index 0000000..bbfec9b
--- /dev/null
+++ b/yajl-1.0.8/share/doc/yajl-1.0.8/index.html
@@ -0,0 +1,212 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>YAJL: Yet Another JSON Library (YAJL)</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.6.1 -->
+<div class="navigation" id="top">
+ <div class="tabs">
+ <ul>
+ <li class="current"><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ </ul>
+ </div>
+</div>
+<div class="contents">
+<h1>Yet Another JSON Library (YAJL)</h1><h3>1.0.8 </h3><dl class="author"><dt><b>Author:</b></dt><dd>Lloyd Hilaiel </dd></dl>
+<dl class="date"><dt><b>Date:</b></dt><dd>2007-2009</dd></dl>
+<p>Yet Another JSON Library (YAJL) is a small event-driven (SAX-style) JSON parser written in ANSI C, and a small validating JSON generator. YAJL is released under the BSD license.</p>
+<h2><a class="anchor" id="features">
+Features</a></h2>
+<ol type="1">
+<li>Stream (incremental) parsing and generation of JSON</li>
+<li>ANSI C</li>
+<li>Human readable error messages with context</li>
+<li>tiny</li>
+<li>event driven</li>
+<li>support for generating "beautified" JSON</li>
+</ol>
+<h2><a class="anchor" id="usage">
+Usage</a></h2>
+<p>The following code sample is a complete JSON "reformating" program. It demonstrates how to perform stream parsing and generation.</p>
+<div class="fragment"><pre class="fragment"><span class="preprocessor">#include &lt;yajl/yajl_parse.h&gt;</span>
+<span class="preprocessor">#include &lt;yajl/yajl_gen.h&gt;</span>
+
+<span class="preprocessor">#include &lt;stdio.h&gt;</span>
+<span class="preprocessor">#include &lt;stdlib.h&gt;</span>
+<span class="preprocessor">#include &lt;string.h&gt;</span>
+
+<span class="keyword">static</span> <span class="keywordtype">int</span> reformat_null(<span class="keywordtype">void</span> * ctx)
+{
+ <a class="code" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a> g = (<a class="code" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a>) ctx;
+ <a class="code" href="yajl__gen_8h.html#a430c1d19322d71298af9870f62b4a771">yajl_gen_null</a>(g);
+ <span class="keywordflow">return</span> 1;
+}
+
+<span class="keyword">static</span> <span class="keywordtype">int</span> reformat_boolean(<span class="keywordtype">void</span> * ctx, <span class="keywordtype">int</span> <span class="keywordtype">boolean</span>)
+{
+ <a class="code" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a> g = (<a class="code" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a>) ctx;
+ <a class="code" href="yajl__gen_8h.html#af289e0519f7ad7c9523ec9ae0f94ff97">yajl_gen_bool</a>(g, <span class="keywordtype">boolean</span>);
+ <span class="keywordflow">return</span> 1;
+}
+
+<span class="keyword">static</span> <span class="keywordtype">int</span> reformat_number(<span class="keywordtype">void</span> * ctx, <span class="keyword">const</span> <span class="keywordtype">char</span> * s, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> l)
+{
+ <a class="code" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a> g = (<a class="code" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a>) ctx;
+ <a class="code" href="yajl__gen_8h.html#a1664d40dc4038ef90476f8218c696c23">yajl_gen_number</a>(g, s, l);
+ <span class="keywordflow">return</span> 1;
+}
+
+<span class="keyword">static</span> <span class="keywordtype">int</span> reformat_string(<span class="keywordtype">void</span> * ctx, <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> * stringVal,
+ <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> stringLen)
+{
+ <a class="code" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a> g = (<a class="code" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a>) ctx;
+ <a class="code" href="yajl__gen_8h.html#add4fbe27fd9cad440b41dbb9f94a4c0f">yajl_gen_string</a>(g, stringVal, stringLen);
+ <span class="keywordflow">return</span> 1;
+}
+
+<span class="keyword">static</span> <span class="keywordtype">int</span> reformat_map_key(<span class="keywordtype">void</span> * ctx, <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> * stringVal,
+ <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> stringLen)
+{
+ <a class="code" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a> g = (<a class="code" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a>) ctx;
+ <a class="code" href="yajl__gen_8h.html#add4fbe27fd9cad440b41dbb9f94a4c0f">yajl_gen_string</a>(g, stringVal, stringLen);
+ <span class="keywordflow">return</span> 1;
+}
+
+<span class="keyword">static</span> <span class="keywordtype">int</span> reformat_start_map(<span class="keywordtype">void</span> * ctx)
+{
+ <a class="code" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a> g = (<a class="code" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a>) ctx;
+ <a class="code" href="yajl__gen_8h.html#a3f5c340a31b5af0a1c3f38b505c22691">yajl_gen_map_open</a>(g);
+ <span class="keywordflow">return</span> 1;
+}
+
+
+<span class="keyword">static</span> <span class="keywordtype">int</span> reformat_end_map(<span class="keywordtype">void</span> * ctx)
+{
+ <a class="code" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a> g = (<a class="code" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a>) ctx;
+ <a class="code" href="yajl__gen_8h.html#a0cb9e2d38eb8861f91903b3e1832ee09">yajl_gen_map_close</a>(g);
+ <span class="keywordflow">return</span> 1;
+}
+
+<span class="keyword">static</span> <span class="keywordtype">int</span> reformat_start_array(<span class="keywordtype">void</span> * ctx)
+{
+ <a class="code" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a> g = (<a class="code" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a>) ctx;
+ <a class="code" href="yajl__gen_8h.html#a47fa41264cff538c1b6d022dc67ea59e">yajl_gen_array_open</a>(g);
+ <span class="keywordflow">return</span> 1;
+}
+
+<span class="keyword">static</span> <span class="keywordtype">int</span> reformat_end_array(<span class="keywordtype">void</span> * ctx)
+{
+ <a class="code" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a> g = (<a class="code" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a>) ctx;
+ <a class="code" href="yajl__gen_8h.html#a47b2e6e6f095c9fac62cb302629cb266">yajl_gen_array_close</a>(g);
+ <span class="keywordflow">return</span> 1;
+}
+
+<span class="keyword">static</span> <a class="code" href="structyajl__callbacks.html">yajl_callbacks</a> callbacks = {
+ reformat_null,
+ reformat_boolean,
+ NULL,
+ NULL,
+ reformat_number,
+ reformat_string,
+ reformat_start_map,
+ reformat_map_key,
+ reformat_end_map,
+ reformat_start_array,
+ reformat_end_array
+};
+
+<span class="keyword">static</span> <span class="keywordtype">void</span>
+usage(<span class="keyword">const</span> <span class="keywordtype">char</span> * progname)
+{
+ fprintf(stderr, <span class="stringliteral">&quot;usage: %s &lt;filename&gt;\n&quot;</span>
+ <span class="stringliteral">&quot; -m minimize json rather than beautify (default)\n&quot;</span>
+ <span class="stringliteral">&quot; -u allow invalid UTF8 inside strings during parsing\n&quot;</span>,
+ progname);
+ exit(1);
+
+}
+
+<span class="keywordtype">int</span>
+main(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> ** argv)
+{
+ <a class="code" href="yajl__parse_8h.html#acb85b92f3d7cb6f0743b4e68d0172323">yajl_handle</a> hand;
+ <span class="keyword">static</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> fileData[65536];
+ <span class="comment">/* generator config */</span>
+ <a class="code" href="structyajl__gen__config.html">yajl_gen_config</a> conf = { 1, <span class="stringliteral">&quot; &quot;</span> };
+ <a class="code" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a> g;
+ <a class="code" href="yajl__parse_8h.html#a1d2bc7f4962c55436daaba61ffaf1f7d">yajl_status</a> stat;
+ <span class="keywordtype">size_t</span> rd;
+ <span class="comment">/* allow comments */</span>
+ <a class="code" href="structyajl__parser__config.html">yajl_parser_config</a> cfg = { 1, 1 };
+ <span class="keywordtype">int</span> done = 0;
+
+ <span class="comment">/* check arguments. We expect exactly one! */</span>
+ <span class="keywordflow">if</span> (argc == 2) {
+ <span class="keywordflow">if</span> (!strcmp(<span class="stringliteral">&quot;-m&quot;</span>, argv[1])) {
+ conf.<a class="code" href="structyajl__gen__config.html#a85437a875ae65161b4f28bac6ff89c99">beautify</a> = 0;
+
+ } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (!strcmp(<span class="stringliteral">&quot;-u&quot;</span>, argv[1])) {
+ cfg.<a class="code" href="structyajl__parser__config.html#a33f7ab7fb27bf626441f15d649dea5d9">checkUTF8</a> = 0;
+ } <span class="keywordflow">else</span> {
+ usage(argv[0]);
+ }
+ } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (argc != 1) {
+ usage(argv[0]);
+ }
+
+ g = <a class="code" href="yajl__gen_8h.html#a23d15a99325caf8e2029d055d7785b76">yajl_gen_alloc</a>(&amp;conf, NULL);
+
+ <span class="comment">/* ok. open file. let&apos;s read and parse */</span>
+ hand = <a class="code" href="yajl__parse_8h.html#ab80d9d2cd7a50a9299b7d6a658a3eb7f">yajl_alloc</a>(&amp;callbacks, &amp;cfg, NULL, (<span class="keywordtype">void</span> *) g);
+
+ <span class="keywordflow">while</span> (!done) {
+ rd = fread((<span class="keywordtype">void</span> *) fileData, 1, <span class="keyword">sizeof</span>(fileData) - 1, stdin);
+
+ <span class="keywordflow">if</span> (rd == 0) {
+ <span class="keywordflow">if</span> (!feof(stdin)) {
+ fprintf(stderr, <span class="stringliteral">&quot;error on file read.\n&quot;</span>);
+ <span class="keywordflow">break</span>;
+ }
+ done = 1;
+ }
+ fileData[rd] = 0;
+
+ <span class="keywordflow">if</span> (done)
+ <span class="comment">/* parse any remaining buffered data */</span>
+ stat = <a class="code" href="yajl__parse_8h.html#ac348460bb319bcbeb646b542bf150b93">yajl_parse_complete</a>(hand);
+ <span class="keywordflow">else</span>
+ <span class="comment">/* read file data, pass to parser */</span>
+ stat = <a class="code" href="yajl__parse_8h.html#af7fc3bb5b868d2de99624d5a013fca8b">yajl_parse</a>(hand, fileData, rd);
+
+ <span class="keywordflow">if</span> (stat != <a class="code" href="yajl__parse_8h.html#a1d2bc7f4962c55436daaba61ffaf1f7da67a2a1b5d684de357adb0e1ea444ffd7">yajl_status_ok</a> &amp;&amp;
+ stat != <a class="code" href="yajl__parse_8h.html#a1d2bc7f4962c55436daaba61ffaf1f7da88c7cd7b308d09c32dad74b47b9ae3f4">yajl_status_insufficient_data</a>)
+ {
+ <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> * str = <a class="code" href="yajl__parse_8h.html#ae665f5b192a777b7252edd0a1d4a40e8">yajl_get_error</a>(hand, 1, fileData, rd);
+ fprintf(stderr, (<span class="keyword">const</span> <span class="keywordtype">char</span> *) str);
+ <a class="code" href="yajl__parse_8h.html#ab752a2010e051cbef8169935b1476017">yajl_free_error</a>(hand, str);
+ } <span class="keywordflow">else</span> {
+ <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> * buf;
+ <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> len;
+ <a class="code" href="yajl__gen_8h.html#ae59a572028ef98b3aff11802b1583712">yajl_gen_get_buf</a>(g, &amp;buf, &amp;len);
+ fwrite(buf, 1, len, stdout);
+ <a class="code" href="yajl__gen_8h.html#a2e8267e496446a517948952f6f1ef3cb">yajl_gen_clear</a>(g);
+ }
+ }
+
+ <a class="code" href="yajl__gen_8h.html#a4546ceff8f26e209a79d875ab40fe808">yajl_gen_free</a>(g);
+ <a class="code" href="yajl__parse_8h.html#a17a804d07aa6cb03c047096df4b2e866">yajl_free</a>(hand);
+
+ <span class="keywordflow">return</span> 0;
+}
+</pre></div> </div>
+<hr size="1"/><address style="text-align: right;"><small>Generated on Fri Dec 18 09:38:45 2009 for YAJL by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
+</body>
+</html>
diff --git a/yajl-1.0.8/share/doc/yajl-1.0.8/structyajl__alloc__funcs.html b/yajl-1.0.8/share/doc/yajl-1.0.8/structyajl__alloc__funcs.html
new file mode 100644
index 0000000..05e77a1
--- /dev/null
+++ b/yajl-1.0.8/share/doc/yajl-1.0.8/structyajl__alloc__funcs.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>YAJL: yajl_alloc_funcs Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.6.1 -->
+<div class="navigation" id="top">
+ <div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ </ul>
+ </div>
+ <div class="tabs">
+ <ul>
+ <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
+ <li><a href="functions.html"><span>Data&nbsp;Fields</span></a></li>
+ </ul>
+ </div>
+</div>
+<div class="contents">
+<h1>yajl_alloc_funcs Struct Reference</h1><!-- doxytag: class="yajl_alloc_funcs" -->
+<p><code>#include &lt;<a class="el" href="yajl__common_8h_source.html">yajl_common.h</a>&gt;</code></p>
+<table border="0" cellpadding="0" cellspacing="0">
+<tr><td colspan="2"><h2>Data Fields</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="yajl__common_8h.html#aa3099e2f5b71d4886c47140dfdb19f71">yajl_malloc_func</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structyajl__alloc__funcs.html#a4e32ade73f896e6446f8cb0ad0ee7456">malloc</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="yajl__common_8h.html#a58a4923c4711df6074864fe3206da417">yajl_realloc_func</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structyajl__alloc__funcs.html#ae677d7c736fe2d735f83f3dd17cfacb7">realloc</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="yajl__common_8h.html#a198f518fe5c41d9c3fc3818ec4e2b6f0">yajl_free_func</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structyajl__alloc__funcs.html#a0c29b65b64754fdadbbbe9ea04701a2f">free</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structyajl__alloc__funcs.html#afa64c0d73d185a6fdabd648e9746f6b5">ctx</a></td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<p>A structure which can be passed to yajl_*_alloc routines to allow the client to specify memory allocation functions to be used. </p>
+<hr/><h2>Field Documentation</h2>
+<a class="anchor" id="afa64c0d73d185a6fdabd648e9746f6b5"></a><!-- doxytag: member="yajl_alloc_funcs::ctx" ref="afa64c0d73d185a6fdabd648e9746f6b5" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* <a class="el" href="structyajl__alloc__funcs.html#afa64c0d73d185a6fdabd648e9746f6b5">yajl_alloc_funcs::ctx</a></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+<p>a context pointer that will be passed to above allocation routines </p>
+
+</div>
+</div>
+<a class="anchor" id="a0c29b65b64754fdadbbbe9ea04701a2f"></a><!-- doxytag: member="yajl_alloc_funcs::free" ref="a0c29b65b64754fdadbbbe9ea04701a2f" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="yajl__common_8h.html#a198f518fe5c41d9c3fc3818ec4e2b6f0">yajl_free_func</a> <a class="el" href="structyajl__alloc__funcs.html#a0c29b65b64754fdadbbbe9ea04701a2f">yajl_alloc_funcs::free</a></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+<p>pointer to a function that can free memory allocated using reallocFunction or mallocFunction </p>
+
+</div>
+</div>
+<a class="anchor" id="a4e32ade73f896e6446f8cb0ad0ee7456"></a><!-- doxytag: member="yajl_alloc_funcs::malloc" ref="a4e32ade73f896e6446f8cb0ad0ee7456" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="yajl__common_8h.html#aa3099e2f5b71d4886c47140dfdb19f71">yajl_malloc_func</a> <a class="el" href="structyajl__alloc__funcs.html#a4e32ade73f896e6446f8cb0ad0ee7456">yajl_alloc_funcs::malloc</a></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+<p>pointer to a function that can allocate uninitialized memory </p>
+
+</div>
+</div>
+<a class="anchor" id="ae677d7c736fe2d735f83f3dd17cfacb7"></a><!-- doxytag: member="yajl_alloc_funcs::realloc" ref="ae677d7c736fe2d735f83f3dd17cfacb7" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="yajl__common_8h.html#a58a4923c4711df6074864fe3206da417">yajl_realloc_func</a> <a class="el" href="structyajl__alloc__funcs.html#ae677d7c736fe2d735f83f3dd17cfacb7">yajl_alloc_funcs::realloc</a></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+<p>pointer to a function that can resize memory allocations </p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="yajl__common_8h_source.html">yajl_common.h</a></li>
+</ul>
+</div>
+<hr size="1"/><address style="text-align: right;"><small>Generated on Fri Dec 18 09:38:46 2009 for YAJL by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
+</body>
+</html>
diff --git a/yajl-1.0.8/share/doc/yajl-1.0.8/structyajl__callbacks.html b/yajl-1.0.8/share/doc/yajl-1.0.8/structyajl__callbacks.html
new file mode 100644
index 0000000..788f84c
--- /dev/null
+++ b/yajl-1.0.8/share/doc/yajl-1.0.8/structyajl__callbacks.html
@@ -0,0 +1,201 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>YAJL: yajl_callbacks Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.6.1 -->
+<div class="navigation" id="top">
+ <div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ </ul>
+ </div>
+ <div class="tabs">
+ <ul>
+ <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
+ <li><a href="functions.html"><span>Data&nbsp;Fields</span></a></li>
+ </ul>
+ </div>
+</div>
+<div class="contents">
+<h1>yajl_callbacks Struct Reference</h1><!-- doxytag: class="yajl_callbacks" -->
+<p><code>#include &lt;<a class="el" href="yajl__parse_8h_source.html">yajl_parse.h</a>&gt;</code></p>
+<table border="0" cellpadding="0" cellspacing="0">
+<tr><td colspan="2"><h2>Data Fields</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">int(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structyajl__callbacks.html#a119925fa35d01fd556faa502397a6eb8">yajl_null</a> )(void *ctx)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">int(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structyajl__callbacks.html#a9e4e6a69c6e88dbb1db692cc51fdcb85">yajl_boolean</a> )(void *ctx, int boolVal)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">int(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structyajl__callbacks.html#a929c2dc82d37b48fc03ce20f22d40769">yajl_integer</a> )(void *ctx, long integerVal)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">int(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structyajl__callbacks.html#a6e4b6fc64ddb2707950eb811304d1c46">yajl_double</a> )(void *ctx, double doubleVal)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">int(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structyajl__callbacks.html#a485231e16d8cfc35efef17dfe2da2964">yajl_number</a> )(void *ctx, const char *numberVal, unsigned int numberLen)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">int(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structyajl__callbacks.html#a401e63b822dccecc78dc548a5a35cff1">yajl_string</a> )(void *ctx, const unsigned char *stringVal, unsigned int stringLen)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">int(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structyajl__callbacks.html#a9da6fafbc2069780a02710778e61462e">yajl_start_map</a> )(void *ctx)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">int(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structyajl__callbacks.html#ae0c22a317a89a4d2bcb71a45673b28c9">yajl_map_key</a> )(void *ctx, const unsigned char *key, unsigned int stringLen)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">int(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structyajl__callbacks.html#aff8abd4229027390adf59afcbb4e0f42">yajl_end_map</a> )(void *ctx)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">int(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structyajl__callbacks.html#aaf4cf875e2a6e1ab1a8af94d16f60083">yajl_start_array</a> )(void *ctx)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">int(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structyajl__callbacks.html#a4671213ae60fed9bc885c38829362b0c">yajl_end_array</a> )(void *ctx)</td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<p>yajl is an event driven parser. this means as json elements are parsed, you are called back to do something with the data. The functions in this table indicate the various events for which you will be called back. Each callback accepts a "context" pointer, this is a void * that is passed into the yajl_parse function which the client code may use to pass around context.</p>
+<p>All callbacks return an integer. If non-zero, the parse will continue. If zero, the parse will be canceled and yajl_status_client_canceled will be returned from the parse.</p>
+<p>Note about handling of numbers: yajl will only convert numbers that can be represented in a double or a long int. All other numbers will be passed to the client in string form using the yajl_number callback. Furthermore, if yajl_number is not NULL, it will always be used to return numbers, that is yajl_integer and yajl_double will be ignored. If yajl_number is NULL but one of yajl_integer or yajl_double are defined, parsing of a number larger than is representable in a double or long int will result in a parse error. </p>
+<hr/><h2>Field Documentation</h2>
+<a class="anchor" id="a9e4e6a69c6e88dbb1db692cc51fdcb85"></a><!-- doxytag: member="yajl_callbacks::yajl_boolean" ref="a9e4e6a69c6e88dbb1db692cc51fdcb85" args=")(void *ctx, int boolVal)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int(* <a class="el" href="structyajl__callbacks.html#a9e4e6a69c6e88dbb1db692cc51fdcb85">yajl_callbacks::yajl_boolean</a>)(void *ctx, int boolVal)</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6e4b6fc64ddb2707950eb811304d1c46"></a><!-- doxytag: member="yajl_callbacks::yajl_double" ref="a6e4b6fc64ddb2707950eb811304d1c46" args=")(void *ctx, double doubleVal)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int(* <a class="el" href="structyajl__callbacks.html#a6e4b6fc64ddb2707950eb811304d1c46">yajl_callbacks::yajl_double</a>)(void *ctx, double doubleVal)</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4671213ae60fed9bc885c38829362b0c"></a><!-- doxytag: member="yajl_callbacks::yajl_end_array" ref="a4671213ae60fed9bc885c38829362b0c" args=")(void *ctx)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int(* <a class="el" href="structyajl__callbacks.html#a4671213ae60fed9bc885c38829362b0c">yajl_callbacks::yajl_end_array</a>)(void *ctx)</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aff8abd4229027390adf59afcbb4e0f42"></a><!-- doxytag: member="yajl_callbacks::yajl_end_map" ref="aff8abd4229027390adf59afcbb4e0f42" args=")(void *ctx)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int(* <a class="el" href="structyajl__callbacks.html#aff8abd4229027390adf59afcbb4e0f42">yajl_callbacks::yajl_end_map</a>)(void *ctx)</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a929c2dc82d37b48fc03ce20f22d40769"></a><!-- doxytag: member="yajl_callbacks::yajl_integer" ref="a929c2dc82d37b48fc03ce20f22d40769" args=")(void *ctx, long integerVal)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int(* <a class="el" href="structyajl__callbacks.html#a929c2dc82d37b48fc03ce20f22d40769">yajl_callbacks::yajl_integer</a>)(void *ctx, long integerVal)</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae0c22a317a89a4d2bcb71a45673b28c9"></a><!-- doxytag: member="yajl_callbacks::yajl_map_key" ref="ae0c22a317a89a4d2bcb71a45673b28c9" args=")(void *ctx, const unsigned char *key, unsigned int stringLen)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int(* <a class="el" href="structyajl__callbacks.html#ae0c22a317a89a4d2bcb71a45673b28c9">yajl_callbacks::yajl_map_key</a>)(void *ctx, const unsigned char *key, unsigned int stringLen)</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a119925fa35d01fd556faa502397a6eb8"></a><!-- doxytag: member="yajl_callbacks::yajl_null" ref="a119925fa35d01fd556faa502397a6eb8" args=")(void *ctx)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int(* <a class="el" href="structyajl__callbacks.html#a119925fa35d01fd556faa502397a6eb8">yajl_callbacks::yajl_null</a>)(void *ctx)</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a485231e16d8cfc35efef17dfe2da2964"></a><!-- doxytag: member="yajl_callbacks::yajl_number" ref="a485231e16d8cfc35efef17dfe2da2964" args=")(void *ctx, const char *numberVal, unsigned int numberLen)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int(* <a class="el" href="structyajl__callbacks.html#a485231e16d8cfc35efef17dfe2da2964">yajl_callbacks::yajl_number</a>)(void *ctx, const char *numberVal, unsigned int numberLen)</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+<p>A callback which passes the string representation of the number back to the client. Will be used for all numbers when present </p>
+
+</div>
+</div>
+<a class="anchor" id="aaf4cf875e2a6e1ab1a8af94d16f60083"></a><!-- doxytag: member="yajl_callbacks::yajl_start_array" ref="aaf4cf875e2a6e1ab1a8af94d16f60083" args=")(void *ctx)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int(* <a class="el" href="structyajl__callbacks.html#aaf4cf875e2a6e1ab1a8af94d16f60083">yajl_callbacks::yajl_start_array</a>)(void *ctx)</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9da6fafbc2069780a02710778e61462e"></a><!-- doxytag: member="yajl_callbacks::yajl_start_map" ref="a9da6fafbc2069780a02710778e61462e" args=")(void *ctx)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int(* <a class="el" href="structyajl__callbacks.html#a9da6fafbc2069780a02710778e61462e">yajl_callbacks::yajl_start_map</a>)(void *ctx)</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a401e63b822dccecc78dc548a5a35cff1"></a><!-- doxytag: member="yajl_callbacks::yajl_string" ref="a401e63b822dccecc78dc548a5a35cff1" args=")(void *ctx, const unsigned char *stringVal, unsigned int stringLen)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int(* <a class="el" href="structyajl__callbacks.html#a401e63b822dccecc78dc548a5a35cff1">yajl_callbacks::yajl_string</a>)(void *ctx, const unsigned char *stringVal, unsigned int stringLen)</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+<p>strings are returned as pointers into the JSON text when, possible, as a result, they are _not_ null padded </p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="yajl__parse_8h_source.html">yajl_parse.h</a></li>
+</ul>
+</div>
+<hr size="1"/><address style="text-align: right;"><small>Generated on Fri Dec 18 09:38:46 2009 for YAJL by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
+</body>
+</html>
diff --git a/yajl-1.0.8/share/doc/yajl-1.0.8/structyajl__gen__config.html b/yajl-1.0.8/share/doc/yajl-1.0.8/structyajl__gen__config.html
new file mode 100644
index 0000000..ab1516b
--- /dev/null
+++ b/yajl-1.0.8/share/doc/yajl-1.0.8/structyajl__gen__config.html
@@ -0,0 +1,73 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>YAJL: yajl_gen_config Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.6.1 -->
+<div class="navigation" id="top">
+ <div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ </ul>
+ </div>
+ <div class="tabs">
+ <ul>
+ <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
+ <li><a href="functions.html"><span>Data&nbsp;Fields</span></a></li>
+ </ul>
+ </div>
+</div>
+<div class="contents">
+<h1>yajl_gen_config Struct Reference</h1><!-- doxytag: class="yajl_gen_config" -->
+<p><code>#include &lt;<a class="el" href="yajl__gen_8h_source.html">yajl_gen.h</a>&gt;</code></p>
+<table border="0" cellpadding="0" cellspacing="0">
+<tr><td colspan="2"><h2>Data Fields</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structyajl__gen__config.html#a85437a875ae65161b4f28bac6ff89c99">beautify</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structyajl__gen__config.html#aa260f86485635c65ab7cf7bbb6f34107">indentString</a></td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<p>configuration structure for the generator </p>
+<hr/><h2>Field Documentation</h2>
+<a class="anchor" id="a85437a875ae65161b4f28bac6ff89c99"></a><!-- doxytag: member="yajl_gen_config::beautify" ref="a85437a875ae65161b4f28bac6ff89c99" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">unsigned int <a class="el" href="structyajl__gen__config.html#a85437a875ae65161b4f28bac6ff89c99">yajl_gen_config::beautify</a></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+<p>generate indented (beautiful) output </p>
+
+</div>
+</div>
+<a class="anchor" id="aa260f86485635c65ab7cf7bbb6f34107"></a><!-- doxytag: member="yajl_gen_config::indentString" ref="aa260f86485635c65ab7cf7bbb6f34107" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* <a class="el" href="structyajl__gen__config.html#aa260f86485635c65ab7cf7bbb6f34107">yajl_gen_config::indentString</a></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+<p>an opportunity to define an indent string. such as \t or some number of spaces. default is four spaces ' '. This member is only relevant when beautify is true </p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="yajl__gen_8h_source.html">yajl_gen.h</a></li>
+</ul>
+</div>
+<hr size="1"/><address style="text-align: right;"><small>Generated on Fri Dec 18 09:38:46 2009 for YAJL by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
+</body>
+</html>
diff --git a/yajl-1.0.8/share/doc/yajl-1.0.8/structyajl__parser__config.html b/yajl-1.0.8/share/doc/yajl-1.0.8/structyajl__parser__config.html
new file mode 100644
index 0000000..0cfea98
--- /dev/null
+++ b/yajl-1.0.8/share/doc/yajl-1.0.8/structyajl__parser__config.html
@@ -0,0 +1,73 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>YAJL: yajl_parser_config Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.6.1 -->
+<div class="navigation" id="top">
+ <div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ </ul>
+ </div>
+ <div class="tabs">
+ <ul>
+ <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
+ <li><a href="functions.html"><span>Data&nbsp;Fields</span></a></li>
+ </ul>
+ </div>
+</div>
+<div class="contents">
+<h1>yajl_parser_config Struct Reference</h1><!-- doxytag: class="yajl_parser_config" -->
+<p><code>#include &lt;<a class="el" href="yajl__parse_8h_source.html">yajl_parse.h</a>&gt;</code></p>
+<table border="0" cellpadding="0" cellspacing="0">
+<tr><td colspan="2"><h2>Data Fields</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structyajl__parser__config.html#a756447fe054dc7a0b423d679e8391163">allowComments</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structyajl__parser__config.html#a33f7ab7fb27bf626441f15d649dea5d9">checkUTF8</a></td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<p>configuration structure for the generator </p>
+<hr/><h2>Field Documentation</h2>
+<a class="anchor" id="a756447fe054dc7a0b423d679e8391163"></a><!-- doxytag: member="yajl_parser_config::allowComments" ref="a756447fe054dc7a0b423d679e8391163" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">unsigned int <a class="el" href="structyajl__parser__config.html#a756447fe054dc7a0b423d679e8391163">yajl_parser_config::allowComments</a></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+<p>if nonzero, javascript style comments will be allowed in the json input, both slash star and slash slash </p>
+
+</div>
+</div>
+<a class="anchor" id="a33f7ab7fb27bf626441f15d649dea5d9"></a><!-- doxytag: member="yajl_parser_config::checkUTF8" ref="a33f7ab7fb27bf626441f15d649dea5d9" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">unsigned int <a class="el" href="structyajl__parser__config.html#a33f7ab7fb27bf626441f15d649dea5d9">yajl_parser_config::checkUTF8</a></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+<p>if nonzero, invalid UTF8 strings will cause a parse error </p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="yajl__parse_8h_source.html">yajl_parse.h</a></li>
+</ul>
+</div>
+<hr size="1"/><address style="text-align: right;"><small>Generated on Fri Dec 18 09:38:46 2009 for YAJL by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
+</body>
+</html>
diff --git a/yajl-1.0.8/share/doc/yajl-1.0.8/tab_b.gif b/yajl-1.0.8/share/doc/yajl-1.0.8/tab_b.gif
new file mode 100644
index 0000000..0d62348
--- /dev/null
+++ b/yajl-1.0.8/share/doc/yajl-1.0.8/tab_b.gif
Binary files differ
diff --git a/yajl-1.0.8/share/doc/yajl-1.0.8/tab_l.gif b/yajl-1.0.8/share/doc/yajl-1.0.8/tab_l.gif
new file mode 100644
index 0000000..9b1e633
--- /dev/null
+++ b/yajl-1.0.8/share/doc/yajl-1.0.8/tab_l.gif
Binary files differ
diff --git a/yajl-1.0.8/share/doc/yajl-1.0.8/tab_r.gif b/yajl-1.0.8/share/doc/yajl-1.0.8/tab_r.gif
new file mode 100644
index 0000000..ce9dd9f
--- /dev/null
+++ b/yajl-1.0.8/share/doc/yajl-1.0.8/tab_r.gif
Binary files differ
diff --git a/yajl-1.0.8/share/doc/yajl-1.0.8/tabs.css b/yajl-1.0.8/share/doc/yajl-1.0.8/tabs.css
new file mode 100644
index 0000000..a444163
--- /dev/null
+++ b/yajl-1.0.8/share/doc/yajl-1.0.8/tabs.css
@@ -0,0 +1,105 @@
+/* tabs styles, based on http://www.alistapart.com/articles/slidingdoors */
+
+DIV.tabs
+{
+ float : left;
+ width : 100%;
+ background : url("tab_b.gif") repeat-x bottom;
+ margin-bottom : 4px;
+}
+
+DIV.tabs UL
+{
+ margin : 0px;
+ padding-left : 10px;
+ list-style : none;
+}
+
+DIV.tabs LI, DIV.tabs FORM
+{
+ display : inline;
+ margin : 0px;
+ padding : 0px;
+}
+
+DIV.tabs FORM
+{
+ float : right;
+}
+
+DIV.tabs A
+{
+ float : left;
+ background : url("tab_r.gif") no-repeat right top;
+ border-bottom : 1px solid #84B0C7;
+ font-size : 80%;
+ font-weight : bold;
+ text-decoration : none;
+}
+
+DIV.tabs A:hover
+{
+ background-position: 100% -150px;
+}
+
+DIV.tabs A:link, DIV.tabs A:visited,
+DIV.tabs A:active, DIV.tabs A:hover
+{
+ color: #1A419D;
+}
+
+DIV.tabs SPAN
+{
+ float : left;
+ display : block;
+ background : url("tab_l.gif") no-repeat left top;
+ padding : 5px 9px;
+ white-space : nowrap;
+}
+
+DIV.tabs #MSearchBox
+{
+ float : right;
+ display : inline;
+ font-size : 1em;
+}
+
+DIV.tabs TD
+{
+ font-size : 80%;
+ font-weight : bold;
+ text-decoration : none;
+}
+
+
+
+/* Commented Backslash Hack hides rule from IE5-Mac \*/
+DIV.tabs SPAN {float : none;}
+/* End IE5-Mac hack */
+
+DIV.tabs A:hover SPAN
+{
+ background-position: 0% -150px;
+}
+
+DIV.tabs LI.current A
+{
+ background-position: 100% -150px;
+ border-width : 0px;
+}
+
+DIV.tabs LI.current SPAN
+{
+ background-position: 0% -150px;
+ padding-bottom : 6px;
+}
+
+DIV.navpath
+{
+ background : none;
+ border : none;
+ border-bottom : 1px solid #84B0C7;
+ text-align : center;
+ margin : 2px;
+ padding : 2px;
+}
diff --git a/yajl-1.0.8/share/doc/yajl-1.0.8/yajl.html b/yajl-1.0.8/share/doc/yajl-1.0.8/yajl.html
new file mode 100644
index 0000000..8667d7b
--- /dev/null
+++ b/yajl-1.0.8/share/doc/yajl-1.0.8/yajl.html
@@ -0,0 +1,34 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>YAJL: yajl File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.6.1 -->
+<div class="navigation" id="top">
+ <div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ </ul>
+ </div>
+ <div class="tabs">
+ <ul>
+ <li><a href="files.html"><span>File&nbsp;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+</div>
+<div class="contents">
+<h1>yajl File Reference</h1><table border="0" cellpadding="0" cellspacing="0">
+</table>
+</div>
+<hr size="1"/><address style="text-align: right;"><small>Generated on Fri Dec 18 09:38:45 2009 for YAJL by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
+</body>
+</html>
diff --git a/yajl-1.0.8/share/doc/yajl-1.0.8/yajl__common_8h.html b/yajl-1.0.8/share/doc/yajl-1.0.8/yajl__common_8h.html
new file mode 100644
index 0000000..f1ae32b
--- /dev/null
+++ b/yajl-1.0.8/share/doc/yajl-1.0.8/yajl__common_8h.html
@@ -0,0 +1,115 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>YAJL: yajl_common.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.6.1 -->
+<div class="navigation" id="top">
+ <div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ </ul>
+ </div>
+ <div class="tabs">
+ <ul>
+ <li><a href="files.html"><span>File&nbsp;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+</div>
+<div class="contents">
+<h1>yajl_common.h File Reference</h1>
+<p><a href="yajl__common_8h_source.html">Go to the source code of this file.</a></p>
+<table border="0" cellpadding="0" cellspacing="0">
+<tr><td colspan="2"><h2>Data Structures</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structyajl__alloc__funcs.html">yajl_alloc_funcs</a></td></tr>
+<tr><td colspan="2"><h2>Defines</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="yajl__common_8h.html#a5c4e27acd65107c08224f00d0dc57d9e">YAJL_MAX_DEPTH</a>&nbsp;&nbsp;&nbsp;128</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="yajl__common_8h.html#a112d9a9234313b4fa3d419c0723146c5">YAJL_API</a></td></tr>
+<tr><td colspan="2"><h2>Typedefs</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">typedef void *(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="yajl__common_8h.html#aa3099e2f5b71d4886c47140dfdb19f71">yajl_malloc_func</a> )(void *ctx, unsigned int sz)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">typedef void(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="yajl__common_8h.html#a198f518fe5c41d9c3fc3818ec4e2b6f0">yajl_free_func</a> )(void *ctx, void *ptr)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">typedef void *(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="yajl__common_8h.html#a58a4923c4711df6074864fe3206da417">yajl_realloc_func</a> )(void *ctx, void *ptr, unsigned int sz)</td></tr>
+</table>
+<hr/><h2>Define Documentation</h2>
+<a class="anchor" id="a112d9a9234313b4fa3d419c0723146c5"></a><!-- doxytag: member="yajl_common.h::YAJL_API" ref="a112d9a9234313b4fa3d419c0723146c5" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define YAJL_API</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5c4e27acd65107c08224f00d0dc57d9e"></a><!-- doxytag: member="yajl_common.h::YAJL_MAX_DEPTH" ref="a5c4e27acd65107c08224f00d0dc57d9e" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define YAJL_MAX_DEPTH&nbsp;&nbsp;&nbsp;128</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+</div>
+</div>
+<hr/><h2>Typedef Documentation</h2>
+<a class="anchor" id="a198f518fe5c41d9c3fc3818ec4e2b6f0"></a><!-- doxytag: member="yajl_common.h::yajl_free_func" ref="a198f518fe5c41d9c3fc3818ec4e2b6f0" args=")(void *ctx, void *ptr)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef void(* <a class="el" href="yajl__common_8h.html#a198f518fe5c41d9c3fc3818ec4e2b6f0">yajl_free_func</a>)(void *ctx, void *ptr)</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+<p>pointer to a free function, supporting client overriding memory allocation routines </p>
+
+</div>
+</div>
+<a class="anchor" id="aa3099e2f5b71d4886c47140dfdb19f71"></a><!-- doxytag: member="yajl_common.h::yajl_malloc_func" ref="aa3099e2f5b71d4886c47140dfdb19f71" args=")(void *ctx, unsigned int sz)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef void*(* <a class="el" href="yajl__common_8h.html#aa3099e2f5b71d4886c47140dfdb19f71">yajl_malloc_func</a>)(void *ctx, unsigned int sz)</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+<p>pointer to a malloc function, supporting client overriding memory allocation routines </p>
+
+</div>
+</div>
+<a class="anchor" id="a58a4923c4711df6074864fe3206da417"></a><!-- doxytag: member="yajl_common.h::yajl_realloc_func" ref="a58a4923c4711df6074864fe3206da417" args=")(void *ctx, void *ptr, unsigned int sz)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef void*(* <a class="el" href="yajl__common_8h.html#a58a4923c4711df6074864fe3206da417">yajl_realloc_func</a>)(void *ctx, void *ptr, unsigned int sz)</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+<p>pointer to a realloc function which can resize an allocation. </p>
+
+</div>
+</div>
+</div>
+<hr size="1"/><address style="text-align: right;"><small>Generated on Fri Dec 18 09:38:45 2009 for YAJL by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
+</body>
+</html>
diff --git a/yajl-1.0.8/share/doc/yajl-1.0.8/yajl__common_8h_source.html b/yajl-1.0.8/share/doc/yajl-1.0.8/yajl__common_8h_source.html
new file mode 100644
index 0000000..89ab8e6
--- /dev/null
+++ b/yajl-1.0.8/share/doc/yajl-1.0.8/yajl__common_8h_source.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>YAJL: yajl_common.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.6.1 -->
+<div class="navigation" id="top">
+ <div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ </ul>
+ </div>
+ <div class="tabs">
+ <ul>
+ <li><a href="files.html"><span>File&nbsp;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<h1>yajl_common.h</h1><a href="yajl__common_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/*</span>
+<a name="l00002"></a>00002 <span class="comment"> * Copyright 2007-2009, Lloyd Hilaiel.</span>
+<a name="l00003"></a>00003 <span class="comment"> * </span>
+<a name="l00004"></a>00004 <span class="comment"> * Redistribution and use in source and binary forms, with or without</span>
+<a name="l00005"></a>00005 <span class="comment"> * modification, are permitted provided that the following conditions are</span>
+<a name="l00006"></a>00006 <span class="comment"> * met:</span>
+<a name="l00007"></a>00007 <span class="comment"> * </span>
+<a name="l00008"></a>00008 <span class="comment"> * 1. Redistributions of source code must retain the above copyright</span>
+<a name="l00009"></a>00009 <span class="comment"> * notice, this list of conditions and the following disclaimer.</span>
+<a name="l00010"></a>00010 <span class="comment"> * </span>
+<a name="l00011"></a>00011 <span class="comment"> * 2. Redistributions in binary form must reproduce the above copyright</span>
+<a name="l00012"></a>00012 <span class="comment"> * notice, this list of conditions and the following disclaimer in</span>
+<a name="l00013"></a>00013 <span class="comment"> * the documentation and/or other materials provided with the</span>
+<a name="l00014"></a>00014 <span class="comment"> * distribution.</span>
+<a name="l00015"></a>00015 <span class="comment"> * </span>
+<a name="l00016"></a>00016 <span class="comment"> * 3. Neither the name of Lloyd Hilaiel nor the names of its</span>
+<a name="l00017"></a>00017 <span class="comment"> * contributors may be used to endorse or promote products derived</span>
+<a name="l00018"></a>00018 <span class="comment"> * from this software without specific prior written permission.</span>
+<a name="l00019"></a>00019 <span class="comment"> * </span>
+<a name="l00020"></a>00020 <span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS&apos;&apos; AND ANY EXPRESS OR</span>
+<a name="l00021"></a>00021 <span class="comment"> * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED</span>
+<a name="l00022"></a>00022 <span class="comment"> * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE</span>
+<a name="l00023"></a>00023 <span class="comment"> * DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT,</span>
+<a name="l00024"></a>00024 <span class="comment"> * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES</span>
+<a name="l00025"></a>00025 <span class="comment"> * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR</span>
+<a name="l00026"></a>00026 <span class="comment"> * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)</span>
+<a name="l00027"></a>00027 <span class="comment"> * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,</span>
+<a name="l00028"></a>00028 <span class="comment"> * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING</span>
+<a name="l00029"></a>00029 <span class="comment"> * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE</span>
+<a name="l00030"></a>00030 <span class="comment"> * POSSIBILITY OF SUCH DAMAGE.</span>
+<a name="l00031"></a>00031 <span class="comment"> */</span>
+<a name="l00032"></a>00032
+<a name="l00033"></a>00033 <span class="preprocessor">#ifndef __YAJL_COMMON_H__</span>
+<a name="l00034"></a>00034 <span class="preprocessor"></span><span class="preprocessor">#define __YAJL_COMMON_H__</span>
+<a name="l00035"></a>00035 <span class="preprocessor"></span>
+<a name="l00036"></a>00036 <span class="preprocessor">#ifdef __cplusplus</span>
+<a name="l00037"></a>00037 <span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {
+<a name="l00038"></a>00038 <span class="preprocessor">#endif </span>
+<a name="l00039"></a>00039 <span class="preprocessor"></span>
+<a name="l00040"></a><a class="code" href="yajl__common_8h.html#a5c4e27acd65107c08224f00d0dc57d9e">00040</a> <span class="preprocessor">#define YAJL_MAX_DEPTH 128</span>
+<a name="l00041"></a>00041 <span class="preprocessor"></span>
+<a name="l00042"></a>00042 <span class="comment">/* msft dll export gunk. To build a DLL on windows, you</span>
+<a name="l00043"></a>00043 <span class="comment"> * must define WIN32, YAJL_SHARED, and YAJL_BUILD. To use a shared</span>
+<a name="l00044"></a>00044 <span class="comment"> * DLL, you must define YAJL_SHARED and WIN32 */</span>
+<a name="l00045"></a>00045 <span class="preprocessor">#if defined(WIN32) &amp;&amp; defined(YAJL_SHARED)</span>
+<a name="l00046"></a>00046 <span class="preprocessor"></span><span class="preprocessor"># ifdef YAJL_BUILD</span>
+<a name="l00047"></a>00047 <span class="preprocessor"></span><span class="preprocessor"># define YAJL_API __declspec(dllexport)</span>
+<a name="l00048"></a>00048 <span class="preprocessor"></span><span class="preprocessor"># else</span>
+<a name="l00049"></a>00049 <span class="preprocessor"></span><span class="preprocessor"># define YAJL_API __declspec(dllimport)</span>
+<a name="l00050"></a>00050 <span class="preprocessor"></span><span class="preprocessor"># endif</span>
+<a name="l00051"></a>00051 <span class="preprocessor"></span><span class="preprocessor">#else</span>
+<a name="l00052"></a><a class="code" href="yajl__common_8h.html#a112d9a9234313b4fa3d419c0723146c5">00052</a> <span class="preprocessor"></span><span class="preprocessor"># define YAJL_API</span>
+<a name="l00053"></a>00053 <span class="preprocessor"></span><span class="preprocessor">#endif </span>
+<a name="l00054"></a>00054 <span class="preprocessor"></span>
+<a name="l00057"></a><a class="code" href="yajl__common_8h.html#aa3099e2f5b71d4886c47140dfdb19f71">00057</a> <span class="keyword">typedef</span> <span class="keywordtype">void</span> * (*yajl_malloc_func)(<span class="keywordtype">void</span> *ctx, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> sz);
+<a name="l00058"></a>00058
+<a name="l00061"></a><a class="code" href="yajl__common_8h.html#a198f518fe5c41d9c3fc3818ec4e2b6f0">00061</a> <span class="keyword">typedef</span> void (*<a class="code" href="yajl__common_8h.html#a198f518fe5c41d9c3fc3818ec4e2b6f0">yajl_free_func</a>)(<span class="keywordtype">void</span> *ctx, <span class="keywordtype">void</span> * ptr);
+<a name="l00062"></a>00062
+<a name="l00064"></a><a class="code" href="yajl__common_8h.html#a58a4923c4711df6074864fe3206da417">00064</a> <span class="keyword">typedef</span> <span class="keywordtype">void</span> * (*yajl_realloc_func)(<span class="keywordtype">void</span> *ctx, <span class="keywordtype">void</span> * ptr, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> sz);
+<a name="l00065"></a>00065
+<a name="l00068"></a><a class="code" href="structyajl__alloc__funcs.html">00068</a> <span class="keyword">typedef</span> <span class="keyword">struct</span>
+<a name="l00069"></a>00069 {
+<a name="l00071"></a><a class="code" href="structyajl__alloc__funcs.html#a4e32ade73f896e6446f8cb0ad0ee7456">00071</a> <a class="code" href="yajl__common_8h.html#aa3099e2f5b71d4886c47140dfdb19f71">yajl_malloc_func</a> malloc;
+<a name="l00073"></a><a class="code" href="structyajl__alloc__funcs.html#ae677d7c736fe2d735f83f3dd17cfacb7">00073</a> <a class="code" href="yajl__common_8h.html#a58a4923c4711df6074864fe3206da417">yajl_realloc_func</a> realloc;
+<a name="l00076"></a><a class="code" href="structyajl__alloc__funcs.html#a0c29b65b64754fdadbbbe9ea04701a2f">00076</a> <a class="code" href="yajl__common_8h.html#a198f518fe5c41d9c3fc3818ec4e2b6f0">yajl_free_func</a> free;
+<a name="l00078"></a><a class="code" href="structyajl__alloc__funcs.html#afa64c0d73d185a6fdabd648e9746f6b5">00078</a> <span class="keywordtype">void</span> * ctx;
+<a name="l00079"></a>00079 } <a class="code" href="structyajl__alloc__funcs.html">yajl_alloc_funcs</a>;
+<a name="l00080"></a>00080
+<a name="l00081"></a>00081 <span class="preprocessor">#ifdef __cplusplus</span>
+<a name="l00082"></a>00082 <span class="preprocessor"></span>}
+<a name="l00083"></a>00083 <span class="preprocessor">#endif </span>
+<a name="l00084"></a>00084 <span class="preprocessor"></span>
+<a name="l00085"></a>00085 <span class="preprocessor">#endif</span>
+</pre></div></div>
+<hr size="1"/><address style="text-align: right;"><small>Generated on Fri Dec 18 09:38:45 2009 for YAJL by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
+</body>
+</html>
diff --git a/yajl-1.0.8/share/doc/yajl-1.0.8/yajl__gen_8h.html b/yajl-1.0.8/share/doc/yajl-1.0.8/yajl__gen_8h.html
new file mode 100644
index 0000000..2f72fee
--- /dev/null
+++ b/yajl-1.0.8/share/doc/yajl-1.0.8/yajl__gen_8h.html
@@ -0,0 +1,538 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>YAJL: yajl_gen.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.6.1 -->
+<div class="navigation" id="top">
+ <div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ </ul>
+ </div>
+ <div class="tabs">
+ <ul>
+ <li><a href="files.html"><span>File&nbsp;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+</div>
+<div class="contents">
+<h1>yajl_gen.h File Reference</h1><code>#include &lt;yajl/yajl_common.h&gt;</code><br/>
+
+<p><a href="yajl__gen_8h_source.html">Go to the source code of this file.</a></p>
+<table border="0" cellpadding="0" cellspacing="0">
+<tr><td colspan="2"><h2>Data Structures</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structyajl__gen__config.html">yajl_gen_config</a></td></tr>
+<tr><td colspan="2"><h2>Typedefs</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">typedef struct yajl_gen_t *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">typedef void(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="yajl__gen_8h.html#ab5ce9d34211be4fe3f05db71182f3b63">yajl_print_t</a> )(void *ctx, const char *str, unsigned int len)</td></tr>
+<tr><td colspan="2"><h2>Enumerations</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63ca">yajl_gen_status</a> { <br/>
+&nbsp;&nbsp;<a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63caa457aa396721f15a7cf34508bf00e22d7">yajl_gen_status_ok</a> = 0,
+<a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63caacc1716680733d72f34676755cdc4e876">yajl_gen_keys_must_be_strings</a>,
+<a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63caa2db8bdfc64aab69fe95a33ba76d087e8">yajl_max_depth_exceeded</a>,
+<a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63caa9ea74847e6d0e91bc7ee544e9851dc18">yajl_gen_in_error_state</a>,
+<br/>
+&nbsp;&nbsp;<a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63caa8274e47b1f4dd68841a67e56868f7bb4">yajl_gen_generation_complete</a>,
+<a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63caa870e2d12c18f71a51697ddc4050a1262">yajl_gen_invalid_number</a>,
+<a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63caae50f6bbe222a87d4d202933e5347b0d7">yajl_gen_no_buf</a>
+<br/>
+ }</td></tr>
+<tr><td colspan="2"><h2>Functions</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="yajl__gen_8h.html#a23d15a99325caf8e2029d055d7785b76">yajl_gen_alloc</a> (const <a class="el" href="structyajl__gen__config.html">yajl_gen_config</a> *config, const <a class="el" href="structyajl__alloc__funcs.html">yajl_alloc_funcs</a> *allocFuncs)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="yajl__gen_8h.html#a16344b7507e05a2702f77247af0ac4ac">yajl_gen_alloc2</a> (<a class="el" href="yajl__gen_8h.html#ab5ce9d34211be4fe3f05db71182f3b63">yajl_print_t</a> callback, const <a class="el" href="structyajl__gen__config.html">yajl_gen_config</a> *config, const <a class="el" href="structyajl__alloc__funcs.html">yajl_alloc_funcs</a> *allocFuncs, void *ctx)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="yajl__gen_8h.html#a4546ceff8f26e209a79d875ab40fe808">yajl_gen_free</a> (<a class="el" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a> handle)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63ca">yajl_gen_status</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="yajl__gen_8h.html#ad24b1fc406024b3636ff8f976d068eb3">yajl_gen_integer</a> (<a class="el" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a> hand, long int number)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63ca">yajl_gen_status</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="yajl__gen_8h.html#acbafa654956dd452650ced866927f64c">yajl_gen_double</a> (<a class="el" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a> hand, double number)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63ca">yajl_gen_status</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="yajl__gen_8h.html#a1664d40dc4038ef90476f8218c696c23">yajl_gen_number</a> (<a class="el" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a> hand, const char *num, unsigned int len)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63ca">yajl_gen_status</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="yajl__gen_8h.html#add4fbe27fd9cad440b41dbb9f94a4c0f">yajl_gen_string</a> (<a class="el" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a> hand, const unsigned char *str, unsigned int len)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63ca">yajl_gen_status</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="yajl__gen_8h.html#a430c1d19322d71298af9870f62b4a771">yajl_gen_null</a> (<a class="el" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a> hand)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63ca">yajl_gen_status</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="yajl__gen_8h.html#af289e0519f7ad7c9523ec9ae0f94ff97">yajl_gen_bool</a> (<a class="el" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a> hand, int boolean)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63ca">yajl_gen_status</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="yajl__gen_8h.html#a3f5c340a31b5af0a1c3f38b505c22691">yajl_gen_map_open</a> (<a class="el" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a> hand)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63ca">yajl_gen_status</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="yajl__gen_8h.html#a0cb9e2d38eb8861f91903b3e1832ee09">yajl_gen_map_close</a> (<a class="el" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a> hand)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63ca">yajl_gen_status</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="yajl__gen_8h.html#a47fa41264cff538c1b6d022dc67ea59e">yajl_gen_array_open</a> (<a class="el" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a> hand)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63ca">yajl_gen_status</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="yajl__gen_8h.html#a47b2e6e6f095c9fac62cb302629cb266">yajl_gen_array_close</a> (<a class="el" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a> hand)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63ca">yajl_gen_status</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="yajl__gen_8h.html#ae59a572028ef98b3aff11802b1583712">yajl_gen_get_buf</a> (<a class="el" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a> hand, const unsigned char **buf, unsigned int *len)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="yajl__gen_8h.html#a2e8267e496446a517948952f6f1ef3cb">yajl_gen_clear</a> (<a class="el" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a> hand)</td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<p>Interface to YAJL's JSON generation facilities. </p>
+<hr/><h2>Typedef Documentation</h2>
+<a class="anchor" id="a497f7224309c1a0118f40c87e3fd3f65"></a><!-- doxytag: member="yajl_gen.h::yajl_gen" ref="a497f7224309c1a0118f40c87e3fd3f65" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct yajl_gen_t* <a class="el" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+<p>an opaque handle to a generator </p>
+
+</div>
+</div>
+<a class="anchor" id="ab5ce9d34211be4fe3f05db71182f3b63"></a><!-- doxytag: member="yajl_gen.h::yajl_print_t" ref="ab5ce9d34211be4fe3f05db71182f3b63" args=")(void *ctx, const char *str, unsigned int len)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef void(* <a class="el" href="yajl__gen_8h.html#ab5ce9d34211be4fe3f05db71182f3b63">yajl_print_t</a>)(void *ctx, const char *str, unsigned int len)</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+<p>a callback used for "printing" the results. </p>
+
+</div>
+</div>
+<hr/><h2>Enumeration Type Documentation</h2>
+<a class="anchor" id="aff033c27f29817c1fc794a16197f63ca"></a><!-- doxytag: member="yajl_gen.h::yajl_gen_status" ref="aff033c27f29817c1fc794a16197f63ca" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63ca">yajl_gen_status</a></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+<p>generator status codes </p>
+<dl><dt><b>Enumerator: </b></dt><dd><table border="0" cellspacing="2" cellpadding="0">
+<tr><td valign="top"><em><a class="anchor" id="aff033c27f29817c1fc794a16197f63caa457aa396721f15a7cf34508bf00e22d7"></a><!-- doxytag: member="yajl_gen_status_ok" ref="aff033c27f29817c1fc794a16197f63caa457aa396721f15a7cf34508bf00e22d7" args="" -->yajl_gen_status_ok</em>&nbsp;</td><td>
+<p>no error </p>
+</td></tr>
+<tr><td valign="top"><em><a class="anchor" id="aff033c27f29817c1fc794a16197f63caacc1716680733d72f34676755cdc4e876"></a><!-- doxytag: member="yajl_gen_keys_must_be_strings" ref="aff033c27f29817c1fc794a16197f63caacc1716680733d72f34676755cdc4e876" args="" -->yajl_gen_keys_must_be_strings</em>&nbsp;</td><td>
+<p>at a point where a map key is generated, a function other than yajl_gen_string was called </p>
+</td></tr>
+<tr><td valign="top"><em><a class="anchor" id="aff033c27f29817c1fc794a16197f63caa2db8bdfc64aab69fe95a33ba76d087e8"></a><!-- doxytag: member="yajl_max_depth_exceeded" ref="aff033c27f29817c1fc794a16197f63caa2db8bdfc64aab69fe95a33ba76d087e8" args="" -->yajl_max_depth_exceeded</em>&nbsp;</td><td>
+<p>YAJL's maximum generation depth was exceeded. see YAJL_MAX_DEPTH </p>
+</td></tr>
+<tr><td valign="top"><em><a class="anchor" id="aff033c27f29817c1fc794a16197f63caa9ea74847e6d0e91bc7ee544e9851dc18"></a><!-- doxytag: member="yajl_gen_in_error_state" ref="aff033c27f29817c1fc794a16197f63caa9ea74847e6d0e91bc7ee544e9851dc18" args="" -->yajl_gen_in_error_state</em>&nbsp;</td><td>
+<p>A generator function (yajl_gen_XXX) was called while in an error state </p>
+</td></tr>
+<tr><td valign="top"><em><a class="anchor" id="aff033c27f29817c1fc794a16197f63caa8274e47b1f4dd68841a67e56868f7bb4"></a><!-- doxytag: member="yajl_gen_generation_complete" ref="aff033c27f29817c1fc794a16197f63caa8274e47b1f4dd68841a67e56868f7bb4" args="" -->yajl_gen_generation_complete</em>&nbsp;</td><td>
+<p>A complete JSON document has been generated </p>
+</td></tr>
+<tr><td valign="top"><em><a class="anchor" id="aff033c27f29817c1fc794a16197f63caa870e2d12c18f71a51697ddc4050a1262"></a><!-- doxytag: member="yajl_gen_invalid_number" ref="aff033c27f29817c1fc794a16197f63caa870e2d12c18f71a51697ddc4050a1262" args="" -->yajl_gen_invalid_number</em>&nbsp;</td><td>
+<p>yajl_gen_double was passed an invalid floating point value (infinity or NaN). </p>
+</td></tr>
+<tr><td valign="top"><em><a class="anchor" id="aff033c27f29817c1fc794a16197f63caae50f6bbe222a87d4d202933e5347b0d7"></a><!-- doxytag: member="yajl_gen_no_buf" ref="aff033c27f29817c1fc794a16197f63caae50f6bbe222a87d4d202933e5347b0d7" args="" -->yajl_gen_no_buf</em>&nbsp;</td><td>
+<p>A print callback was passed in, so there is no internal buffer to get from </p>
+</td></tr>
+</table>
+</dd>
+</dl>
+
+</div>
+</div>
+<hr/><h2>Function Documentation</h2>
+<a class="anchor" id="a23d15a99325caf8e2029d055d7785b76"></a><!-- doxytag: member="yajl_gen.h::yajl_gen_alloc" ref="a23d15a99325caf8e2029d055d7785b76" args="(const yajl_gen_config *config, const yajl_alloc_funcs *allocFuncs)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a> yajl_gen_alloc </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structyajl__gen__config.html">yajl_gen_config</a> *&nbsp;</td>
+ <td class="paramname"> <em>config</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structyajl__alloc__funcs.html">yajl_alloc_funcs</a> *&nbsp;</td>
+ <td class="paramname"> <em>allocFuncs</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+<p>allocate a generator handle </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>config</em>&nbsp;</td><td>a pointer to a structure containing parameters which configure the behavior of the json generator </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>allocFuncs</em>&nbsp;</td><td>an optional pointer to a structure which allows the client to overide the memory allocation used by yajl. May be NULL, in which case malloc/free/realloc will be used.</td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="return"><dt><b>Returns:</b></dt><dd>an allocated handle on success, NULL on failure (bad params) </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a16344b7507e05a2702f77247af0ac4ac"></a><!-- doxytag: member="yajl_gen.h::yajl_gen_alloc2" ref="a16344b7507e05a2702f77247af0ac4ac" args="(yajl_print_t callback, const yajl_gen_config *config, const yajl_alloc_funcs *allocFuncs, void *ctx)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a> yajl_gen_alloc2 </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="yajl__gen_8h.html#ab5ce9d34211be4fe3f05db71182f3b63">yajl_print_t</a>&nbsp;</td>
+ <td class="paramname"> <em>callback</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structyajl__gen__config.html">yajl_gen_config</a> *&nbsp;</td>
+ <td class="paramname"> <em>config</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structyajl__alloc__funcs.html">yajl_alloc_funcs</a> *&nbsp;</td>
+ <td class="paramname"> <em>allocFuncs</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&nbsp;</td>
+ <td class="paramname"> <em>ctx</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+<p>allocate a generator handle that will print to the specified callback rather than storing the results in an internal buffer. </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>callback</em>&nbsp;</td><td>a pointer to a printer function. May be NULL in which case, the results will be store in an internal buffer. </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>config</em>&nbsp;</td><td>a pointer to a structure containing parameters which configure the behavior of the json generator. </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>allocFuncs</em>&nbsp;</td><td>an optional pointer to a structure which allows the client to overide the memory allocation used by yajl. May be NULL, in which case malloc/free/realloc will be used. </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>ctx</em>&nbsp;</td><td>a context pointer that will be passed to the printer callback.</td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="return"><dt><b>Returns:</b></dt><dd>an allocated handle on success, NULL on failure (bad params) </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a47b2e6e6f095c9fac62cb302629cb266"></a><!-- doxytag: member="yajl_gen.h::yajl_gen_array_close" ref="a47b2e6e6f095c9fac62cb302629cb266" args="(yajl_gen hand)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63ca">yajl_gen_status</a> yajl_gen_array_close </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a>&nbsp;</td>
+ <td class="paramname"> <em>hand</em></td>
+ <td>&nbsp;)&nbsp;</td>
+ <td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a47fa41264cff538c1b6d022dc67ea59e"></a><!-- doxytag: member="yajl_gen.h::yajl_gen_array_open" ref="a47fa41264cff538c1b6d022dc67ea59e" args="(yajl_gen hand)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63ca">yajl_gen_status</a> yajl_gen_array_open </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a>&nbsp;</td>
+ <td class="paramname"> <em>hand</em></td>
+ <td>&nbsp;)&nbsp;</td>
+ <td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af289e0519f7ad7c9523ec9ae0f94ff97"></a><!-- doxytag: member="yajl_gen.h::yajl_gen_bool" ref="af289e0519f7ad7c9523ec9ae0f94ff97" args="(yajl_gen hand, int boolean)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63ca">yajl_gen_status</a> yajl_gen_bool </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a>&nbsp;</td>
+ <td class="paramname"> <em>hand</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&nbsp;</td>
+ <td class="paramname"> <em>boolean</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2e8267e496446a517948952f6f1ef3cb"></a><!-- doxytag: member="yajl_gen.h::yajl_gen_clear" ref="a2e8267e496446a517948952f6f1ef3cb" args="(yajl_gen hand)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void yajl_gen_clear </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a>&nbsp;</td>
+ <td class="paramname"> <em>hand</em></td>
+ <td>&nbsp;)&nbsp;</td>
+ <td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+<p>clear yajl's output buffer, but maintain all internal generation state. This function will not "reset" the generator state, and is intended to enable incremental JSON outputing. </p>
+
+</div>
+</div>
+<a class="anchor" id="acbafa654956dd452650ced866927f64c"></a><!-- doxytag: member="yajl_gen.h::yajl_gen_double" ref="acbafa654956dd452650ced866927f64c" args="(yajl_gen hand, double number)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63ca">yajl_gen_status</a> yajl_gen_double </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a>&nbsp;</td>
+ <td class="paramname"> <em>hand</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">double&nbsp;</td>
+ <td class="paramname"> <em>number</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+<p>generate a floating point number. number may not be infinity or NaN, as these have no representation in JSON. In these cases the generator will return 'yajl_gen_invalid_number' </p>
+
+</div>
+</div>
+<a class="anchor" id="a4546ceff8f26e209a79d875ab40fe808"></a><!-- doxytag: member="yajl_gen.h::yajl_gen_free" ref="a4546ceff8f26e209a79d875ab40fe808" args="(yajl_gen handle)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void yajl_gen_free </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a>&nbsp;</td>
+ <td class="paramname"> <em>handle</em></td>
+ <td>&nbsp;)&nbsp;</td>
+ <td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+<p>free a generator handle </p>
+
+</div>
+</div>
+<a class="anchor" id="ae59a572028ef98b3aff11802b1583712"></a><!-- doxytag: member="yajl_gen.h::yajl_gen_get_buf" ref="ae59a572028ef98b3aff11802b1583712" args="(yajl_gen hand, const unsigned char **buf, unsigned int *len)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63ca">yajl_gen_status</a> yajl_gen_get_buf </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a>&nbsp;</td>
+ <td class="paramname"> <em>hand</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const unsigned char **&nbsp;</td>
+ <td class="paramname"> <em>buf</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">unsigned int *&nbsp;</td>
+ <td class="paramname"> <em>len</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+<p>access the null terminated generator buffer. If incrementally outputing JSON, one should call yajl_gen_clear to clear the buffer. This allows stream generation. </p>
+
+</div>
+</div>
+<a class="anchor" id="ad24b1fc406024b3636ff8f976d068eb3"></a><!-- doxytag: member="yajl_gen.h::yajl_gen_integer" ref="ad24b1fc406024b3636ff8f976d068eb3" args="(yajl_gen hand, long int number)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63ca">yajl_gen_status</a> yajl_gen_integer </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a>&nbsp;</td>
+ <td class="paramname"> <em>hand</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">long int&nbsp;</td>
+ <td class="paramname"> <em>number</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0cb9e2d38eb8861f91903b3e1832ee09"></a><!-- doxytag: member="yajl_gen.h::yajl_gen_map_close" ref="a0cb9e2d38eb8861f91903b3e1832ee09" args="(yajl_gen hand)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63ca">yajl_gen_status</a> yajl_gen_map_close </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a>&nbsp;</td>
+ <td class="paramname"> <em>hand</em></td>
+ <td>&nbsp;)&nbsp;</td>
+ <td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3f5c340a31b5af0a1c3f38b505c22691"></a><!-- doxytag: member="yajl_gen.h::yajl_gen_map_open" ref="a3f5c340a31b5af0a1c3f38b505c22691" args="(yajl_gen hand)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63ca">yajl_gen_status</a> yajl_gen_map_open </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a>&nbsp;</td>
+ <td class="paramname"> <em>hand</em></td>
+ <td>&nbsp;)&nbsp;</td>
+ <td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a430c1d19322d71298af9870f62b4a771"></a><!-- doxytag: member="yajl_gen.h::yajl_gen_null" ref="a430c1d19322d71298af9870f62b4a771" args="(yajl_gen hand)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63ca">yajl_gen_status</a> yajl_gen_null </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a>&nbsp;</td>
+ <td class="paramname"> <em>hand</em></td>
+ <td>&nbsp;)&nbsp;</td>
+ <td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1664d40dc4038ef90476f8218c696c23"></a><!-- doxytag: member="yajl_gen.h::yajl_gen_number" ref="a1664d40dc4038ef90476f8218c696c23" args="(yajl_gen hand, const char *num, unsigned int len)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63ca">yajl_gen_status</a> yajl_gen_number </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a>&nbsp;</td>
+ <td class="paramname"> <em>hand</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&nbsp;</td>
+ <td class="paramname"> <em>num</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">unsigned int&nbsp;</td>
+ <td class="paramname"> <em>len</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="add4fbe27fd9cad440b41dbb9f94a4c0f"></a><!-- doxytag: member="yajl_gen.h::yajl_gen_string" ref="add4fbe27fd9cad440b41dbb9f94a4c0f" args="(yajl_gen hand, const unsigned char *str, unsigned int len)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63ca">yajl_gen_status</a> yajl_gen_string </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a>&nbsp;</td>
+ <td class="paramname"> <em>hand</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const unsigned char *&nbsp;</td>
+ <td class="paramname"> <em>str</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">unsigned int&nbsp;</td>
+ <td class="paramname"> <em>len</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+</div>
+</div>
+</div>
+<hr size="1"/><address style="text-align: right;"><small>Generated on Fri Dec 18 09:38:46 2009 for YAJL by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
+</body>
+</html>
diff --git a/yajl-1.0.8/share/doc/yajl-1.0.8/yajl__gen_8h_source.html b/yajl-1.0.8/share/doc/yajl-1.0.8/yajl__gen_8h_source.html
new file mode 100644
index 0000000..8ab8531
--- /dev/null
+++ b/yajl-1.0.8/share/doc/yajl-1.0.8/yajl__gen_8h_source.html
@@ -0,0 +1,128 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>YAJL: yajl_gen.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.6.1 -->
+<div class="navigation" id="top">
+ <div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ </ul>
+ </div>
+ <div class="tabs">
+ <ul>
+ <li><a href="files.html"><span>File&nbsp;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<h1>yajl_gen.h</h1><a href="yajl__gen_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/*</span>
+<a name="l00002"></a>00002 <span class="comment"> * Copyright 2007-2009, Lloyd Hilaiel.</span>
+<a name="l00003"></a>00003 <span class="comment"> * </span>
+<a name="l00004"></a>00004 <span class="comment"> * Redistribution and use in source and binary forms, with or without</span>
+<a name="l00005"></a>00005 <span class="comment"> * modification, are permitted provided that the following conditions are</span>
+<a name="l00006"></a>00006 <span class="comment"> * met:</span>
+<a name="l00007"></a>00007 <span class="comment"> * </span>
+<a name="l00008"></a>00008 <span class="comment"> * 1. Redistributions of source code must retain the above copyright</span>
+<a name="l00009"></a>00009 <span class="comment"> * notice, this list of conditions and the following disclaimer.</span>
+<a name="l00010"></a>00010 <span class="comment"> * </span>
+<a name="l00011"></a>00011 <span class="comment"> * 2. Redistributions in binary form must reproduce the above copyright</span>
+<a name="l00012"></a>00012 <span class="comment"> * notice, this list of conditions and the following disclaimer in</span>
+<a name="l00013"></a>00013 <span class="comment"> * the documentation and/or other materials provided with the</span>
+<a name="l00014"></a>00014 <span class="comment"> * distribution.</span>
+<a name="l00015"></a>00015 <span class="comment"> * </span>
+<a name="l00016"></a>00016 <span class="comment"> * 3. Neither the name of Lloyd Hilaiel nor the names of its</span>
+<a name="l00017"></a>00017 <span class="comment"> * contributors may be used to endorse or promote products derived</span>
+<a name="l00018"></a>00018 <span class="comment"> * from this software without specific prior written permission.</span>
+<a name="l00019"></a>00019 <span class="comment"> * </span>
+<a name="l00020"></a>00020 <span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS&apos;&apos; AND ANY EXPRESS OR</span>
+<a name="l00021"></a>00021 <span class="comment"> * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED</span>
+<a name="l00022"></a>00022 <span class="comment"> * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE</span>
+<a name="l00023"></a>00023 <span class="comment"> * DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT,</span>
+<a name="l00024"></a>00024 <span class="comment"> * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES</span>
+<a name="l00025"></a>00025 <span class="comment"> * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR</span>
+<a name="l00026"></a>00026 <span class="comment"> * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)</span>
+<a name="l00027"></a>00027 <span class="comment"> * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,</span>
+<a name="l00028"></a>00028 <span class="comment"> * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING</span>
+<a name="l00029"></a>00029 <span class="comment"> * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE</span>
+<a name="l00030"></a>00030 <span class="comment"> * POSSIBILITY OF SUCH DAMAGE.</span>
+<a name="l00031"></a>00031 <span class="comment"> */</span>
+<a name="l00032"></a>00032
+<a name="l00038"></a>00038 <span class="preprocessor">#include &lt;yajl/yajl_common.h&gt;</span>
+<a name="l00039"></a>00039
+<a name="l00040"></a>00040 <span class="preprocessor">#ifndef __YAJL_GEN_H__</span>
+<a name="l00041"></a>00041 <span class="preprocessor"></span><span class="preprocessor">#define __YAJL_GEN_H__</span>
+<a name="l00042"></a>00042 <span class="preprocessor"></span>
+<a name="l00043"></a>00043 <span class="preprocessor">#ifdef __cplusplus</span>
+<a name="l00044"></a>00044 <span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {
+<a name="l00045"></a>00045 <span class="preprocessor">#endif </span>
+<a name="l00046"></a>00046 <span class="preprocessor"></span>
+<a name="l00047"></a><a class="code" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63ca">00047</a> <span class="keyword">typedef</span> <span class="keyword">enum</span> {
+<a name="l00049"></a><a class="code" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63caa457aa396721f15a7cf34508bf00e22d7">00049</a> <a class="code" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63caa457aa396721f15a7cf34508bf00e22d7">yajl_gen_status_ok</a> = 0,
+<a name="l00052"></a><a class="code" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63caacc1716680733d72f34676755cdc4e876">00052</a> <a class="code" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63caacc1716680733d72f34676755cdc4e876">yajl_gen_keys_must_be_strings</a>,
+<a name="l00055"></a><a class="code" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63caa2db8bdfc64aab69fe95a33ba76d087e8">00055</a> <a class="code" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63caa2db8bdfc64aab69fe95a33ba76d087e8">yajl_max_depth_exceeded</a>,
+<a name="l00058"></a><a class="code" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63caa9ea74847e6d0e91bc7ee544e9851dc18">00058</a> <a class="code" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63caa9ea74847e6d0e91bc7ee544e9851dc18">yajl_gen_in_error_state</a>,
+<a name="l00060"></a><a class="code" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63caa8274e47b1f4dd68841a67e56868f7bb4">00060</a> <a class="code" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63caa8274e47b1f4dd68841a67e56868f7bb4">yajl_gen_generation_complete</a>,
+<a name="l00063"></a><a class="code" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63caa870e2d12c18f71a51697ddc4050a1262">00063</a> <a class="code" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63caa870e2d12c18f71a51697ddc4050a1262">yajl_gen_invalid_number</a>,
+<a name="l00066"></a><a class="code" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63caae50f6bbe222a87d4d202933e5347b0d7">00066</a> <a class="code" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63caae50f6bbe222a87d4d202933e5347b0d7">yajl_gen_no_buf</a>
+<a name="l00067"></a>00067 } <a class="code" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63ca">yajl_gen_status</a>;
+<a name="l00068"></a>00068
+<a name="l00070"></a><a class="code" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">00070</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>yajl_gen_t * <a class="code" href="yajl__gen_8h.html#a497f7224309c1a0118f40c87e3fd3f65">yajl_gen</a>;
+<a name="l00071"></a>00071
+<a name="l00073"></a><a class="code" href="yajl__gen_8h.html#ab5ce9d34211be4fe3f05db71182f3b63">00073</a> <span class="keyword">typedef</span> void (*<a class="code" href="yajl__gen_8h.html#ab5ce9d34211be4fe3f05db71182f3b63">yajl_print_t</a>)(<span class="keywordtype">void</span> * ctx,
+<a name="l00074"></a>00074 <span class="keyword">const</span> <span class="keywordtype">char</span> * str,
+<a name="l00075"></a>00075 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> len);
+<a name="l00076"></a>00076
+<a name="l00078"></a><a class="code" href="structyajl__gen__config.html">00078</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{
+<a name="l00080"></a><a class="code" href="structyajl__gen__config.html#a85437a875ae65161b4f28bac6ff89c99">00080</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> beautify;
+<a name="l00084"></a><a class="code" href="structyajl__gen__config.html#aa260f86485635c65ab7cf7bbb6f34107">00084</a> <span class="keyword">const</span> <span class="keywordtype">char</span> * indentString;
+<a name="l00085"></a>00085 } <a class="code" href="structyajl__gen__config.html">yajl_gen_config</a>;
+<a name="l00086"></a>00086
+<a name="l00097"></a>00097 yajl_gen <a class="code" href="yajl__common_8h.html#a112d9a9234313b4fa3d419c0723146c5">YAJL_API</a> <a class="code" href="yajl__gen_8h.html#a23d15a99325caf8e2029d055d7785b76">yajl_gen_alloc</a>(<span class="keyword">const</span> <a class="code" href="structyajl__gen__config.html">yajl_gen_config</a> * config,
+<a name="l00098"></a>00098 <span class="keyword">const</span> <a class="code" href="structyajl__alloc__funcs.html">yajl_alloc_funcs</a> * allocFuncs);
+<a name="l00099"></a>00099
+<a name="l00117"></a>00117 yajl_gen <a class="code" href="yajl__common_8h.html#a112d9a9234313b4fa3d419c0723146c5">YAJL_API</a> <a class="code" href="yajl__gen_8h.html#a16344b7507e05a2702f77247af0ac4ac">yajl_gen_alloc2</a>(<a class="code" href="yajl__gen_8h.html#ab5ce9d34211be4fe3f05db71182f3b63">yajl_print_t</a> callback,
+<a name="l00118"></a>00118 <span class="keyword">const</span> <a class="code" href="structyajl__gen__config.html">yajl_gen_config</a> * config,
+<a name="l00119"></a>00119 <span class="keyword">const</span> <a class="code" href="structyajl__alloc__funcs.html">yajl_alloc_funcs</a> * allocFuncs,
+<a name="l00120"></a>00120 <span class="keywordtype">void</span> * ctx);
+<a name="l00121"></a>00121
+<a name="l00123"></a>00123 <span class="keywordtype">void</span> <a class="code" href="yajl__common_8h.html#a112d9a9234313b4fa3d419c0723146c5">YAJL_API</a> <a class="code" href="yajl__gen_8h.html#a4546ceff8f26e209a79d875ab40fe808">yajl_gen_free</a>(yajl_gen handle);
+<a name="l00124"></a>00124
+<a name="l00125"></a>00125 <a class="code" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63ca">yajl_gen_status</a> <a class="code" href="yajl__common_8h.html#a112d9a9234313b4fa3d419c0723146c5">YAJL_API</a> <a class="code" href="yajl__gen_8h.html#ad24b1fc406024b3636ff8f976d068eb3">yajl_gen_integer</a>(yajl_gen hand, <span class="keywordtype">long</span> <span class="keywordtype">int</span> number);
+<a name="l00129"></a>00129 <a class="code" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63ca">yajl_gen_status</a> <a class="code" href="yajl__common_8h.html#a112d9a9234313b4fa3d419c0723146c5">YAJL_API</a> <a class="code" href="yajl__gen_8h.html#acbafa654956dd452650ced866927f64c">yajl_gen_double</a>(yajl_gen hand, <span class="keywordtype">double</span> number);
+<a name="l00130"></a>00130 <a class="code" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63ca">yajl_gen_status</a> <a class="code" href="yajl__common_8h.html#a112d9a9234313b4fa3d419c0723146c5">YAJL_API</a> <a class="code" href="yajl__gen_8h.html#a1664d40dc4038ef90476f8218c696c23">yajl_gen_number</a>(yajl_gen hand,
+<a name="l00131"></a>00131 <span class="keyword">const</span> <span class="keywordtype">char</span> * num,
+<a name="l00132"></a>00132 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> len);
+<a name="l00133"></a>00133 <a class="code" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63ca">yajl_gen_status</a> <a class="code" href="yajl__common_8h.html#a112d9a9234313b4fa3d419c0723146c5">YAJL_API</a> <a class="code" href="yajl__gen_8h.html#add4fbe27fd9cad440b41dbb9f94a4c0f">yajl_gen_string</a>(yajl_gen hand,
+<a name="l00134"></a>00134 <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> * str,
+<a name="l00135"></a>00135 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> len);
+<a name="l00136"></a>00136 <a class="code" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63ca">yajl_gen_status</a> <a class="code" href="yajl__common_8h.html#a112d9a9234313b4fa3d419c0723146c5">YAJL_API</a> <a class="code" href="yajl__gen_8h.html#a430c1d19322d71298af9870f62b4a771">yajl_gen_null</a>(yajl_gen hand);
+<a name="l00137"></a>00137 <a class="code" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63ca">yajl_gen_status</a> <a class="code" href="yajl__common_8h.html#a112d9a9234313b4fa3d419c0723146c5">YAJL_API</a> <a class="code" href="yajl__gen_8h.html#af289e0519f7ad7c9523ec9ae0f94ff97">yajl_gen_bool</a>(yajl_gen hand, <span class="keywordtype">int</span> <span class="keywordtype">boolean</span>);
+<a name="l00138"></a>00138 <a class="code" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63ca">yajl_gen_status</a> <a class="code" href="yajl__common_8h.html#a112d9a9234313b4fa3d419c0723146c5">YAJL_API</a> <a class="code" href="yajl__gen_8h.html#a3f5c340a31b5af0a1c3f38b505c22691">yajl_gen_map_open</a>(yajl_gen hand);
+<a name="l00139"></a>00139 <a class="code" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63ca">yajl_gen_status</a> <a class="code" href="yajl__common_8h.html#a112d9a9234313b4fa3d419c0723146c5">YAJL_API</a> <a class="code" href="yajl__gen_8h.html#a0cb9e2d38eb8861f91903b3e1832ee09">yajl_gen_map_close</a>(yajl_gen hand);
+<a name="l00140"></a>00140 <a class="code" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63ca">yajl_gen_status</a> <a class="code" href="yajl__common_8h.html#a112d9a9234313b4fa3d419c0723146c5">YAJL_API</a> <a class="code" href="yajl__gen_8h.html#a47fa41264cff538c1b6d022dc67ea59e">yajl_gen_array_open</a>(yajl_gen hand);
+<a name="l00141"></a>00141 <a class="code" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63ca">yajl_gen_status</a> <a class="code" href="yajl__common_8h.html#a112d9a9234313b4fa3d419c0723146c5">YAJL_API</a> <a class="code" href="yajl__gen_8h.html#a47b2e6e6f095c9fac62cb302629cb266">yajl_gen_array_close</a>(yajl_gen hand);
+<a name="l00142"></a>00142
+<a name="l00146"></a>00146 <a class="code" href="yajl__gen_8h.html#aff033c27f29817c1fc794a16197f63ca">yajl_gen_status</a> <a class="code" href="yajl__common_8h.html#a112d9a9234313b4fa3d419c0723146c5">YAJL_API</a> <a class="code" href="yajl__gen_8h.html#ae59a572028ef98b3aff11802b1583712">yajl_gen_get_buf</a>(yajl_gen hand,
+<a name="l00147"></a>00147 <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> ** buf,
+<a name="l00148"></a>00148 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> * len);
+<a name="l00149"></a>00149
+<a name="l00153"></a>00153 <span class="keywordtype">void</span> <a class="code" href="yajl__common_8h.html#a112d9a9234313b4fa3d419c0723146c5">YAJL_API</a> <a class="code" href="yajl__gen_8h.html#a2e8267e496446a517948952f6f1ef3cb">yajl_gen_clear</a>(yajl_gen hand);
+<a name="l00154"></a>00154
+<a name="l00155"></a>00155 <span class="preprocessor">#ifdef __cplusplus</span>
+<a name="l00156"></a>00156 <span class="preprocessor"></span>}
+<a name="l00157"></a>00157 <span class="preprocessor">#endif </span>
+<a name="l00158"></a>00158 <span class="preprocessor"></span>
+<a name="l00159"></a>00159 <span class="preprocessor">#endif</span>
+</pre></div></div>
+<hr size="1"/><address style="text-align: right;"><small>Generated on Fri Dec 18 09:38:45 2009 for YAJL by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
+</body>
+</html>
diff --git a/yajl-1.0.8/share/doc/yajl-1.0.8/yajl__parse_8h.html b/yajl-1.0.8/share/doc/yajl-1.0.8/yajl__parse_8h.html
new file mode 100644
index 0000000..4a3c364
--- /dev/null
+++ b/yajl-1.0.8/share/doc/yajl-1.0.8/yajl__parse_8h.html
@@ -0,0 +1,350 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>YAJL: yajl_parse.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.6.1 -->
+<div class="navigation" id="top">
+ <div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ </ul>
+ </div>
+ <div class="tabs">
+ <ul>
+ <li><a href="files.html"><span>File&nbsp;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+</div>
+<div class="contents">
+<h1>yajl_parse.h File Reference</h1><code>#include &lt;yajl/yajl_common.h&gt;</code><br/>
+
+<p><a href="yajl__parse_8h_source.html">Go to the source code of this file.</a></p>
+<table border="0" cellpadding="0" cellspacing="0">
+<tr><td colspan="2"><h2>Data Structures</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structyajl__callbacks.html">yajl_callbacks</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structyajl__parser__config.html">yajl_parser_config</a></td></tr>
+<tr><td colspan="2"><h2>Typedefs</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">typedef struct yajl_handle_t *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="yajl__parse_8h.html#acb85b92f3d7cb6f0743b4e68d0172323">yajl_handle</a></td></tr>
+<tr><td colspan="2"><h2>Enumerations</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="yajl__parse_8h.html#a1d2bc7f4962c55436daaba61ffaf1f7d">yajl_status</a> { <a class="el" href="yajl__parse_8h.html#a1d2bc7f4962c55436daaba61ffaf1f7da67a2a1b5d684de357adb0e1ea444ffd7">yajl_status_ok</a>,
+<a class="el" href="yajl__parse_8h.html#a1d2bc7f4962c55436daaba61ffaf1f7da44d6b8f18ecb5e30be3eb5b2f1f5717e">yajl_status_client_canceled</a>,
+<a class="el" href="yajl__parse_8h.html#a1d2bc7f4962c55436daaba61ffaf1f7da88c7cd7b308d09c32dad74b47b9ae3f4">yajl_status_insufficient_data</a>,
+<a class="el" href="yajl__parse_8h.html#a1d2bc7f4962c55436daaba61ffaf1f7daeea581fa9c967d34ad5f062ef59718fd">yajl_status_error</a>
+ }</td></tr>
+<tr><td colspan="2"><h2>Functions</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="yajl__parse_8h.html#a883c11ca49ee36d31b45925852e468d2">yajl_status_to_string</a> (<a class="el" href="yajl__parse_8h.html#a1d2bc7f4962c55436daaba61ffaf1f7d">yajl_status</a> code)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="yajl__parse_8h.html#acb85b92f3d7cb6f0743b4e68d0172323">yajl_handle</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="yajl__parse_8h.html#ab80d9d2cd7a50a9299b7d6a658a3eb7f">yajl_alloc</a> (const <a class="el" href="structyajl__callbacks.html">yajl_callbacks</a> *callbacks, const <a class="el" href="structyajl__parser__config.html">yajl_parser_config</a> *config, const <a class="el" href="structyajl__alloc__funcs.html">yajl_alloc_funcs</a> *allocFuncs, void *ctx)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="yajl__parse_8h.html#a17a804d07aa6cb03c047096df4b2e866">yajl_free</a> (<a class="el" href="yajl__parse_8h.html#acb85b92f3d7cb6f0743b4e68d0172323">yajl_handle</a> handle)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="yajl__parse_8h.html#a1d2bc7f4962c55436daaba61ffaf1f7d">yajl_status</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="yajl__parse_8h.html#af7fc3bb5b868d2de99624d5a013fca8b">yajl_parse</a> (<a class="el" href="yajl__parse_8h.html#acb85b92f3d7cb6f0743b4e68d0172323">yajl_handle</a> hand, const unsigned char *jsonText, unsigned int jsonTextLength)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="yajl__parse_8h.html#a1d2bc7f4962c55436daaba61ffaf1f7d">yajl_status</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="yajl__parse_8h.html#ac348460bb319bcbeb646b542bf150b93">yajl_parse_complete</a> (<a class="el" href="yajl__parse_8h.html#acb85b92f3d7cb6f0743b4e68d0172323">yajl_handle</a> hand)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">unsigned char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="yajl__parse_8h.html#ae665f5b192a777b7252edd0a1d4a40e8">yajl_get_error</a> (<a class="el" href="yajl__parse_8h.html#acb85b92f3d7cb6f0743b4e68d0172323">yajl_handle</a> hand, int verbose, const unsigned char *jsonText, unsigned int jsonTextLength)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="yajl__parse_8h.html#a5a1afb1f97b6967bd27f53403f868f30">yajl_get_bytes_consumed</a> (<a class="el" href="yajl__parse_8h.html#acb85b92f3d7cb6f0743b4e68d0172323">yajl_handle</a> hand)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="yajl__parse_8h.html#ab752a2010e051cbef8169935b1476017">yajl_free_error</a> (<a class="el" href="yajl__parse_8h.html#acb85b92f3d7cb6f0743b4e68d0172323">yajl_handle</a> hand, unsigned char *str)</td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<p>Interface to YAJL's JSON parsing facilities. </p>
+<hr/><h2>Typedef Documentation</h2>
+<a class="anchor" id="acb85b92f3d7cb6f0743b4e68d0172323"></a><!-- doxytag: member="yajl_parse.h::yajl_handle" ref="acb85b92f3d7cb6f0743b4e68d0172323" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct yajl_handle_t* <a class="el" href="yajl__parse_8h.html#acb85b92f3d7cb6f0743b4e68d0172323">yajl_handle</a></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+<p>an opaque handle to a parser </p>
+
+</div>
+</div>
+<hr/><h2>Enumeration Type Documentation</h2>
+<a class="anchor" id="a1d2bc7f4962c55436daaba61ffaf1f7d"></a><!-- doxytag: member="yajl_parse.h::yajl_status" ref="a1d2bc7f4962c55436daaba61ffaf1f7d" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="yajl__parse_8h.html#a1d2bc7f4962c55436daaba61ffaf1f7d">yajl_status</a></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+<p>error codes returned from this interface </p>
+<dl><dt><b>Enumerator: </b></dt><dd><table border="0" cellspacing="2" cellpadding="0">
+<tr><td valign="top"><em><a class="anchor" id="a1d2bc7f4962c55436daaba61ffaf1f7da67a2a1b5d684de357adb0e1ea444ffd7"></a><!-- doxytag: member="yajl_status_ok" ref="a1d2bc7f4962c55436daaba61ffaf1f7da67a2a1b5d684de357adb0e1ea444ffd7" args="" -->yajl_status_ok</em>&nbsp;</td><td>
+<p>no error was encountered </p>
+</td></tr>
+<tr><td valign="top"><em><a class="anchor" id="a1d2bc7f4962c55436daaba61ffaf1f7da44d6b8f18ecb5e30be3eb5b2f1f5717e"></a><!-- doxytag: member="yajl_status_client_canceled" ref="a1d2bc7f4962c55436daaba61ffaf1f7da44d6b8f18ecb5e30be3eb5b2f1f5717e" args="" -->yajl_status_client_canceled</em>&nbsp;</td><td>
+<p>a client callback returned zero, stopping the parse </p>
+</td></tr>
+<tr><td valign="top"><em><a class="anchor" id="a1d2bc7f4962c55436daaba61ffaf1f7da88c7cd7b308d09c32dad74b47b9ae3f4"></a><!-- doxytag: member="yajl_status_insufficient_data" ref="a1d2bc7f4962c55436daaba61ffaf1f7da88c7cd7b308d09c32dad74b47b9ae3f4" args="" -->yajl_status_insufficient_data</em>&nbsp;</td><td>
+<p>The parse cannot yet complete because more json input text is required, call yajl_parse with the next buffer of input text. (pertinent only when stream parsing) </p>
+</td></tr>
+<tr><td valign="top"><em><a class="anchor" id="a1d2bc7f4962c55436daaba61ffaf1f7daeea581fa9c967d34ad5f062ef59718fd"></a><!-- doxytag: member="yajl_status_error" ref="a1d2bc7f4962c55436daaba61ffaf1f7daeea581fa9c967d34ad5f062ef59718fd" args="" -->yajl_status_error</em>&nbsp;</td><td>
+<p>An error occured during the parse. Call yajl_get_error for more information about the encountered error </p>
+</td></tr>
+</table>
+</dd>
+</dl>
+
+</div>
+</div>
+<hr/><h2>Function Documentation</h2>
+<a class="anchor" id="ab80d9d2cd7a50a9299b7d6a658a3eb7f"></a><!-- doxytag: member="yajl_parse.h::yajl_alloc" ref="ab80d9d2cd7a50a9299b7d6a658a3eb7f" args="(const yajl_callbacks *callbacks, const yajl_parser_config *config, const yajl_alloc_funcs *allocFuncs, void *ctx)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="yajl__parse_8h.html#acb85b92f3d7cb6f0743b4e68d0172323">yajl_handle</a> yajl_alloc </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structyajl__callbacks.html">yajl_callbacks</a> *&nbsp;</td>
+ <td class="paramname"> <em>callbacks</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structyajl__parser__config.html">yajl_parser_config</a> *&nbsp;</td>
+ <td class="paramname"> <em>config</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structyajl__alloc__funcs.html">yajl_alloc_funcs</a> *&nbsp;</td>
+ <td class="paramname"> <em>allocFuncs</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&nbsp;</td>
+ <td class="paramname"> <em>ctx</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+<p>allocate a parser handle </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>callbacks</em>&nbsp;</td><td>a yajl callbacks structure specifying the functions to call when different JSON entities are encountered in the input text. May be NULL, which is only useful for validation. </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>config</em>&nbsp;</td><td>configuration parameters for the parse. </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>ctx</em>&nbsp;</td><td>a context pointer that will be passed to callbacks. </td></tr>
+ </table>
+ </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="a17a804d07aa6cb03c047096df4b2e866"></a><!-- doxytag: member="yajl_parse.h::yajl_free" ref="a17a804d07aa6cb03c047096df4b2e866" args="(yajl_handle handle)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void yajl_free </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="yajl__parse_8h.html#acb85b92f3d7cb6f0743b4e68d0172323">yajl_handle</a>&nbsp;</td>
+ <td class="paramname"> <em>handle</em></td>
+ <td>&nbsp;)&nbsp;</td>
+ <td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+<p>free a parser handle </p>
+
+</div>
+</div>
+<a class="anchor" id="ab752a2010e051cbef8169935b1476017"></a><!-- doxytag: member="yajl_parse.h::yajl_free_error" ref="ab752a2010e051cbef8169935b1476017" args="(yajl_handle hand, unsigned char *str)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void yajl_free_error </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="yajl__parse_8h.html#acb85b92f3d7cb6f0743b4e68d0172323">yajl_handle</a>&nbsp;</td>
+ <td class="paramname"> <em>hand</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">unsigned char *&nbsp;</td>
+ <td class="paramname"> <em>str</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+<p>free an error returned from yajl_get_error </p>
+
+</div>
+</div>
+<a class="anchor" id="a5a1afb1f97b6967bd27f53403f868f30"></a><!-- doxytag: member="yajl_parse.h::yajl_get_bytes_consumed" ref="a5a1afb1f97b6967bd27f53403f868f30" args="(yajl_handle hand)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">unsigned int yajl_get_bytes_consumed </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="yajl__parse_8h.html#acb85b92f3d7cb6f0743b4e68d0172323">yajl_handle</a>&nbsp;</td>
+ <td class="paramname"> <em>hand</em></td>
+ <td>&nbsp;)&nbsp;</td>
+ <td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+<p>get the amount of data consumed from the last chunk passed to YAJL.</p>
+<p>In the case of a successful parse this can help you understand if the entire buffer was consumed (which will allow you to handle "junk at end of input".</p>
+<p>In the event an error is encountered during parsing, this function affords the client a way to get the offset into the most recent chunk where the error occured. 0 will be returned if no error was encountered. </p>
+
+</div>
+</div>
+<a class="anchor" id="ae665f5b192a777b7252edd0a1d4a40e8"></a><!-- doxytag: member="yajl_parse.h::yajl_get_error" ref="ae665f5b192a777b7252edd0a1d4a40e8" args="(yajl_handle hand, int verbose, const unsigned char *jsonText, unsigned int jsonTextLength)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">unsigned char* yajl_get_error </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="yajl__parse_8h.html#acb85b92f3d7cb6f0743b4e68d0172323">yajl_handle</a>&nbsp;</td>
+ <td class="paramname"> <em>hand</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&nbsp;</td>
+ <td class="paramname"> <em>verbose</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const unsigned char *&nbsp;</td>
+ <td class="paramname"> <em>jsonText</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">unsigned int&nbsp;</td>
+ <td class="paramname"> <em>jsonTextLength</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+<p>get an error string describing the state of the parse.</p>
+<p>If verbose is non-zero, the message will include the JSON text where the error occured, along with an arrow pointing to the specific char.</p>
+<dl class="return"><dt><b>Returns:</b></dt><dd>A dynamically allocated string will be returned which should be freed with yajl_free_error </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="af7fc3bb5b868d2de99624d5a013fca8b"></a><!-- doxytag: member="yajl_parse.h::yajl_parse" ref="af7fc3bb5b868d2de99624d5a013fca8b" args="(yajl_handle hand, const unsigned char *jsonText, unsigned int jsonTextLength)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="yajl__parse_8h.html#a1d2bc7f4962c55436daaba61ffaf1f7d">yajl_status</a> yajl_parse </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="yajl__parse_8h.html#acb85b92f3d7cb6f0743b4e68d0172323">yajl_handle</a>&nbsp;</td>
+ <td class="paramname"> <em>hand</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const unsigned char *&nbsp;</td>
+ <td class="paramname"> <em>jsonText</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">unsigned int&nbsp;</td>
+ <td class="paramname"> <em>jsonTextLength</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+<p>Parse some json! </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>hand</em>&nbsp;</td><td>- a handle to the json parser allocated with yajl_alloc </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>jsonText</em>&nbsp;</td><td>- a pointer to the UTF8 json text to be parsed </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>jsonTextLength</em>&nbsp;</td><td>- the length, in bytes, of input text </td></tr>
+ </table>
+ </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="ac348460bb319bcbeb646b542bf150b93"></a><!-- doxytag: member="yajl_parse.h::yajl_parse_complete" ref="ac348460bb319bcbeb646b542bf150b93" args="(yajl_handle hand)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="yajl__parse_8h.html#a1d2bc7f4962c55436daaba61ffaf1f7d">yajl_status</a> yajl_parse_complete </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="yajl__parse_8h.html#acb85b92f3d7cb6f0743b4e68d0172323">yajl_handle</a>&nbsp;</td>
+ <td class="paramname"> <em>hand</em></td>
+ <td>&nbsp;)&nbsp;</td>
+ <td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+<p>Parse any remaining buffered json. Since yajl is a stream-based parser, without an explicit end of input, yajl sometimes can't decide if content at the end of the stream is valid or not. For example, if "1" has been fed in, yajl can't know whether another digit is next or some character that would terminate the integer token.</p>
+<dl><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>hand</em>&nbsp;</td><td>- a handle to the json parser allocated with yajl_alloc </td></tr>
+ </table>
+ </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="a883c11ca49ee36d31b45925852e468d2"></a><!-- doxytag: member="yajl_parse.h::yajl_status_to_string" ref="a883c11ca49ee36d31b45925852e468d2" args="(yajl_status code)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* yajl_status_to_string </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="yajl__parse_8h.html#a1d2bc7f4962c55436daaba61ffaf1f7d">yajl_status</a>&nbsp;</td>
+ <td class="paramname"> <em>code</em></td>
+ <td>&nbsp;)&nbsp;</td>
+ <td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+<p>attain a human readable, english, string for an error </p>
+
+</div>
+</div>
+</div>
+<hr size="1"/><address style="text-align: right;"><small>Generated on Fri Dec 18 09:38:46 2009 for YAJL by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
+</body>
+</html>
diff --git a/yajl-1.0.8/share/doc/yajl-1.0.8/yajl__parse_8h_source.html b/yajl-1.0.8/share/doc/yajl-1.0.8/yajl__parse_8h_source.html
new file mode 100644
index 0000000..217c142
--- /dev/null
+++ b/yajl-1.0.8/share/doc/yajl-1.0.8/yajl__parse_8h_source.html
@@ -0,0 +1,133 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>YAJL: yajl_parse.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.6.1 -->
+<div class="navigation" id="top">
+ <div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ </ul>
+ </div>
+ <div class="tabs">
+ <ul>
+ <li><a href="files.html"><span>File&nbsp;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<h1>yajl_parse.h</h1><a href="yajl__parse_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/*</span>
+<a name="l00002"></a>00002 <span class="comment"> * Copyright 2007-2009, Lloyd Hilaiel.</span>
+<a name="l00003"></a>00003 <span class="comment"> * </span>
+<a name="l00004"></a>00004 <span class="comment"> * Redistribution and use in source and binary forms, with or without</span>
+<a name="l00005"></a>00005 <span class="comment"> * modification, are permitted provided that the following conditions are</span>
+<a name="l00006"></a>00006 <span class="comment"> * met:</span>
+<a name="l00007"></a>00007 <span class="comment"> * </span>
+<a name="l00008"></a>00008 <span class="comment"> * 1. Redistributions of source code must retain the above copyright</span>
+<a name="l00009"></a>00009 <span class="comment"> * notice, this list of conditions and the following disclaimer.</span>
+<a name="l00010"></a>00010 <span class="comment"> * </span>
+<a name="l00011"></a>00011 <span class="comment"> * 2. Redistributions in binary form must reproduce the above copyright</span>
+<a name="l00012"></a>00012 <span class="comment"> * notice, this list of conditions and the following disclaimer in</span>
+<a name="l00013"></a>00013 <span class="comment"> * the documentation and/or other materials provided with the</span>
+<a name="l00014"></a>00014 <span class="comment"> * distribution.</span>
+<a name="l00015"></a>00015 <span class="comment"> * </span>
+<a name="l00016"></a>00016 <span class="comment"> * 3. Neither the name of Lloyd Hilaiel nor the names of its</span>
+<a name="l00017"></a>00017 <span class="comment"> * contributors may be used to endorse or promote products derived</span>
+<a name="l00018"></a>00018 <span class="comment"> * from this software without specific prior written permission.</span>
+<a name="l00019"></a>00019 <span class="comment"> * </span>
+<a name="l00020"></a>00020 <span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS&apos;&apos; AND ANY EXPRESS OR</span>
+<a name="l00021"></a>00021 <span class="comment"> * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED</span>
+<a name="l00022"></a>00022 <span class="comment"> * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE</span>
+<a name="l00023"></a>00023 <span class="comment"> * DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT,</span>
+<a name="l00024"></a>00024 <span class="comment"> * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES</span>
+<a name="l00025"></a>00025 <span class="comment"> * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR</span>
+<a name="l00026"></a>00026 <span class="comment"> * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)</span>
+<a name="l00027"></a>00027 <span class="comment"> * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,</span>
+<a name="l00028"></a>00028 <span class="comment"> * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING</span>
+<a name="l00029"></a>00029 <span class="comment"> * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE</span>
+<a name="l00030"></a>00030 <span class="comment"> * POSSIBILITY OF SUCH DAMAGE.</span>
+<a name="l00031"></a>00031 <span class="comment"> */</span>
+<a name="l00032"></a>00032
+<a name="l00038"></a>00038 <span class="preprocessor">#include &lt;yajl/yajl_common.h&gt;</span>
+<a name="l00039"></a>00039
+<a name="l00040"></a>00040 <span class="preprocessor">#ifndef __YAJL_PARSE_H__</span>
+<a name="l00041"></a>00041 <span class="preprocessor"></span><span class="preprocessor">#define __YAJL_PARSE_H__</span>
+<a name="l00042"></a>00042 <span class="preprocessor"></span>
+<a name="l00043"></a>00043 <span class="preprocessor">#ifdef __cplusplus</span>
+<a name="l00044"></a>00044 <span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {
+<a name="l00045"></a>00045 <span class="preprocessor">#endif </span>
+<a name="l00046"></a>00046 <span class="preprocessor"></span>
+<a name="l00047"></a><a class="code" href="yajl__parse_8h.html#a1d2bc7f4962c55436daaba61ffaf1f7d">00047</a> <span class="keyword">typedef</span> <span class="keyword">enum</span> {
+<a name="l00049"></a><a class="code" href="yajl__parse_8h.html#a1d2bc7f4962c55436daaba61ffaf1f7da67a2a1b5d684de357adb0e1ea444ffd7">00049</a> <a class="code" href="yajl__parse_8h.html#a1d2bc7f4962c55436daaba61ffaf1f7da67a2a1b5d684de357adb0e1ea444ffd7">yajl_status_ok</a>,
+<a name="l00051"></a><a class="code" href="yajl__parse_8h.html#a1d2bc7f4962c55436daaba61ffaf1f7da44d6b8f18ecb5e30be3eb5b2f1f5717e">00051</a> <a class="code" href="yajl__parse_8h.html#a1d2bc7f4962c55436daaba61ffaf1f7da44d6b8f18ecb5e30be3eb5b2f1f5717e">yajl_status_client_canceled</a>,
+<a name="l00055"></a><a class="code" href="yajl__parse_8h.html#a1d2bc7f4962c55436daaba61ffaf1f7da88c7cd7b308d09c32dad74b47b9ae3f4">00055</a> <a class="code" href="yajl__parse_8h.html#a1d2bc7f4962c55436daaba61ffaf1f7da88c7cd7b308d09c32dad74b47b9ae3f4">yajl_status_insufficient_data</a>,
+<a name="l00058"></a><a class="code" href="yajl__parse_8h.html#a1d2bc7f4962c55436daaba61ffaf1f7daeea581fa9c967d34ad5f062ef59718fd">00058</a> <a class="code" href="yajl__parse_8h.html#a1d2bc7f4962c55436daaba61ffaf1f7daeea581fa9c967d34ad5f062ef59718fd">yajl_status_error</a>
+<a name="l00059"></a>00059 } <a class="code" href="yajl__parse_8h.html#a1d2bc7f4962c55436daaba61ffaf1f7d">yajl_status</a>;
+<a name="l00060"></a>00060
+<a name="l00062"></a>00062 <span class="keyword">const</span> <span class="keywordtype">char</span> * <a class="code" href="yajl__common_8h.html#a112d9a9234313b4fa3d419c0723146c5">YAJL_API</a> <a class="code" href="yajl__parse_8h.html#a883c11ca49ee36d31b45925852e468d2">yajl_status_to_string</a>(<a class="code" href="yajl__parse_8h.html#a1d2bc7f4962c55436daaba61ffaf1f7d">yajl_status</a> code);
+<a name="l00063"></a>00063
+<a name="l00065"></a><a class="code" href="yajl__parse_8h.html#acb85b92f3d7cb6f0743b4e68d0172323">00065</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>yajl_handle_t * <a class="code" href="yajl__parse_8h.html#acb85b92f3d7cb6f0743b4e68d0172323">yajl_handle</a>;
+<a name="l00066"></a>00066
+<a name="l00088"></a><a class="code" href="structyajl__callbacks.html">00088</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{
+<a name="l00089"></a>00089 int (* yajl_null)(<span class="keywordtype">void</span> * ctx);
+<a name="l00090"></a>00090 int (* yajl_boolean)(<span class="keywordtype">void</span> * ctx, <span class="keywordtype">int</span> boolVal);
+<a name="l00091"></a>00091 int (* yajl_integer)(<span class="keywordtype">void</span> * ctx, <span class="keywordtype">long</span> integerVal);
+<a name="l00092"></a>00092 int (* yajl_double)(<span class="keywordtype">void</span> * ctx, <span class="keywordtype">double</span> doubleVal);
+<a name="l00095"></a>00095 int (* yajl_number)(<span class="keywordtype">void</span> * ctx, <span class="keyword">const</span> <span class="keywordtype">char</span> * numberVal,
+<a name="l00096"></a>00096 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> numberLen);
+<a name="l00097"></a>00097
+<a name="l00100"></a>00100 int (* yajl_string)(<span class="keywordtype">void</span> * ctx, <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> * stringVal,
+<a name="l00101"></a>00101 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> stringLen);
+<a name="l00102"></a>00102
+<a name="l00103"></a>00103 int (* yajl_start_map)(<span class="keywordtype">void</span> * ctx);
+<a name="l00104"></a>00104 int (* yajl_map_key)(<span class="keywordtype">void</span> * ctx, <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> * key,
+<a name="l00105"></a>00105 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> stringLen);
+<a name="l00106"></a>00106 int (* yajl_end_map)(<span class="keywordtype">void</span> * ctx);
+<a name="l00107"></a>00107
+<a name="l00108"></a>00108 int (* yajl_start_array)(<span class="keywordtype">void</span> * ctx);
+<a name="l00109"></a>00109 int (* yajl_end_array)(<span class="keywordtype">void</span> * ctx);
+<a name="l00110"></a>00110 } <a class="code" href="structyajl__callbacks.html">yajl_callbacks</a>;
+<a name="l00111"></a>00111
+<a name="l00113"></a><a class="code" href="structyajl__parser__config.html">00113</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{
+<a name="l00116"></a><a class="code" href="structyajl__parser__config.html#a756447fe054dc7a0b423d679e8391163">00116</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> allowComments;
+<a name="l00119"></a><a class="code" href="structyajl__parser__config.html#a33f7ab7fb27bf626441f15d649dea5d9">00119</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> checkUTF8;
+<a name="l00120"></a>00120 } <a class="code" href="structyajl__parser__config.html">yajl_parser_config</a>;
+<a name="l00121"></a>00121
+<a name="l00130"></a>00130 yajl_handle <a class="code" href="yajl__common_8h.html#a112d9a9234313b4fa3d419c0723146c5">YAJL_API</a> <a class="code" href="yajl__parse_8h.html#ab80d9d2cd7a50a9299b7d6a658a3eb7f">yajl_alloc</a>(<span class="keyword">const</span> <a class="code" href="structyajl__callbacks.html">yajl_callbacks</a> * callbacks,
+<a name="l00131"></a>00131 <span class="keyword">const</span> <a class="code" href="structyajl__parser__config.html">yajl_parser_config</a> * config,
+<a name="l00132"></a>00132 <span class="keyword">const</span> <a class="code" href="structyajl__alloc__funcs.html">yajl_alloc_funcs</a> * allocFuncs,
+<a name="l00133"></a>00133 <span class="keywordtype">void</span> * ctx);
+<a name="l00134"></a>00134
+<a name="l00136"></a>00136 <span class="keywordtype">void</span> <a class="code" href="yajl__common_8h.html#a112d9a9234313b4fa3d419c0723146c5">YAJL_API</a> <a class="code" href="yajl__parse_8h.html#a17a804d07aa6cb03c047096df4b2e866">yajl_free</a>(yajl_handle handle);
+<a name="l00137"></a>00137
+<a name="l00143"></a>00143 <a class="code" href="yajl__parse_8h.html#a1d2bc7f4962c55436daaba61ffaf1f7d">yajl_status</a> <a class="code" href="yajl__common_8h.html#a112d9a9234313b4fa3d419c0723146c5">YAJL_API</a> <a class="code" href="yajl__parse_8h.html#af7fc3bb5b868d2de99624d5a013fca8b">yajl_parse</a>(yajl_handle hand,
+<a name="l00144"></a>00144 <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> * jsonText,
+<a name="l00145"></a>00145 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> jsonTextLength);
+<a name="l00146"></a>00146
+<a name="l00156"></a>00156 <a class="code" href="yajl__parse_8h.html#a1d2bc7f4962c55436daaba61ffaf1f7d">yajl_status</a> <a class="code" href="yajl__parse_8h.html#ac348460bb319bcbeb646b542bf150b93">yajl_parse_complete</a>(yajl_handle hand);
+<a name="l00157"></a>00157
+<a name="l00168"></a>00168 <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> * <a class="code" href="yajl__common_8h.html#a112d9a9234313b4fa3d419c0723146c5">YAJL_API</a> <a class="code" href="yajl__parse_8h.html#ae665f5b192a777b7252edd0a1d4a40e8">yajl_get_error</a>(yajl_handle hand, <span class="keywordtype">int</span> verbose,
+<a name="l00169"></a>00169 <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> * jsonText,
+<a name="l00170"></a>00170 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> jsonTextLength);
+<a name="l00171"></a>00171
+<a name="l00184"></a>00184 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="yajl__common_8h.html#a112d9a9234313b4fa3d419c0723146c5">YAJL_API</a> <a class="code" href="yajl__parse_8h.html#a5a1afb1f97b6967bd27f53403f868f30">yajl_get_bytes_consumed</a>(yajl_handle hand);
+<a name="l00185"></a>00185
+<a name="l00187"></a>00187 <span class="keywordtype">void</span> <a class="code" href="yajl__common_8h.html#a112d9a9234313b4fa3d419c0723146c5">YAJL_API</a> <a class="code" href="yajl__parse_8h.html#ab752a2010e051cbef8169935b1476017">yajl_free_error</a>(yajl_handle hand, <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> * str);
+<a name="l00188"></a>00188
+<a name="l00189"></a>00189 <span class="preprocessor">#ifdef __cplusplus</span>
+<a name="l00190"></a>00190 <span class="preprocessor"></span>}
+<a name="l00191"></a>00191 <span class="preprocessor">#endif </span>
+<a name="l00192"></a>00192 <span class="preprocessor"></span>
+<a name="l00193"></a>00193 <span class="preprocessor">#endif</span>
+</pre></div></div>
+<hr size="1"/><address style="text-align: right;"><small>Generated on Fri Dec 18 09:38:45 2009 for YAJL by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
+</body>
+</html>
diff --git a/yajl-1.0.8/share/man/man3/yajl.3 b/yajl-1.0.8/share/man/man3/yajl.3
new file mode 100644
index 0000000..4c30698
--- /dev/null
+++ b/yajl-1.0.8/share/man/man3/yajl.3
@@ -0,0 +1,11 @@
+.TH "yajl" 3 "18 Dec 2009" "Version 1.0.8" "YAJL" \" -*- nroff -*-
+.ad l
+.nh
+.SH NAME
+yajl \-
+.SH SYNOPSIS
+.br
+.PP
+.SH "Author"
+.PP
+Generated automatically by Doxygen for YAJL from the source code.
diff --git a/yajl-1.0.8/share/man/man3/yajl_alloc_funcs.3 b/yajl-1.0.8/share/man/man3/yajl_alloc_funcs.3
new file mode 100644
index 0000000..257fdf3
--- /dev/null
+++ b/yajl-1.0.8/share/man/man3/yajl_alloc_funcs.3
@@ -0,0 +1,39 @@
+.TH "yajl_alloc_funcs" 3 "18 Dec 2009" "Version 1.0.8" "YAJL" \" -*- nroff -*-
+.ad l
+.nh
+.SH NAME
+yajl_alloc_funcs \-
+.SH SYNOPSIS
+.br
+.PP
+.PP
+\fC#include <yajl_common.h>\fP
+.SS "Data Fields"
+
+.in +1c
+.ti -1c
+.RI "\fByajl_malloc_func\fP \fBmalloc\fP"
+.br
+.ti -1c
+.RI "\fByajl_realloc_func\fP \fBrealloc\fP"
+.br
+.ti -1c
+.RI "\fByajl_free_func\fP \fBfree\fP"
+.br
+.ti -1c
+.RI "void * \fBctx\fP"
+.br
+.in -1c
+.SH "Detailed Description"
+.PP
+A structure which can be passed to yajl_*_alloc routines to allow the client to specify memory allocation functions to be used.
+.SH "Field Documentation"
+.PP
+.SS "void* \fByajl_alloc_funcs::ctx\fP"a context pointer that will be passed to above allocation routines
+.SS "\fByajl_free_func\fP \fByajl_alloc_funcs::free\fP"pointer to a function that can free memory allocated using reallocFunction or mallocFunction
+.SS "\fByajl_malloc_func\fP \fByajl_alloc_funcs::malloc\fP"pointer to a function that can allocate uninitialized memory
+.SS "\fByajl_realloc_func\fP \fByajl_alloc_funcs::realloc\fP"pointer to a function that can resize memory allocations
+
+.SH "Author"
+.PP
+Generated automatically by Doxygen for YAJL from the source code.
diff --git a/yajl-1.0.8/share/man/man3/yajl_callbacks.3 b/yajl-1.0.8/share/man/man3/yajl_callbacks.3
new file mode 100644
index 0000000..746c95a
--- /dev/null
+++ b/yajl-1.0.8/share/man/man3/yajl_callbacks.3
@@ -0,0 +1,71 @@
+.TH "yajl_callbacks" 3 "18 Dec 2009" "Version 1.0.8" "YAJL" \" -*- nroff -*-
+.ad l
+.nh
+.SH NAME
+yajl_callbacks \-
+.SH SYNOPSIS
+.br
+.PP
+.PP
+\fC#include <yajl_parse.h>\fP
+.SS "Data Fields"
+
+.in +1c
+.ti -1c
+.RI "int(* \fByajl_null\fP )(void *ctx)"
+.br
+.ti -1c
+.RI "int(* \fByajl_boolean\fP )(void *ctx, int boolVal)"
+.br
+.ti -1c
+.RI "int(* \fByajl_integer\fP )(void *ctx, long integerVal)"
+.br
+.ti -1c
+.RI "int(* \fByajl_double\fP )(void *ctx, double doubleVal)"
+.br
+.ti -1c
+.RI "int(* \fByajl_number\fP )(void *ctx, const char *numberVal, unsigned int numberLen)"
+.br
+.ti -1c
+.RI "int(* \fByajl_string\fP )(void *ctx, const unsigned char *stringVal, unsigned int stringLen)"
+.br
+.ti -1c
+.RI "int(* \fByajl_start_map\fP )(void *ctx)"
+.br
+.ti -1c
+.RI "int(* \fByajl_map_key\fP )(void *ctx, const unsigned char *key, unsigned int stringLen)"
+.br
+.ti -1c
+.RI "int(* \fByajl_end_map\fP )(void *ctx)"
+.br
+.ti -1c
+.RI "int(* \fByajl_start_array\fP )(void *ctx)"
+.br
+.ti -1c
+.RI "int(* \fByajl_end_array\fP )(void *ctx)"
+.br
+.in -1c
+.SH "Detailed Description"
+.PP
+yajl is an event driven parser. this means as json elements are parsed, you are called back to do something with the data. The functions in this table indicate the various events for which you will be called back. Each callback accepts a 'context' pointer, this is a void * that is passed into the yajl_parse function which the client code may use to pass around context.
+.PP
+All callbacks return an integer. If non-zero, the parse will continue. If zero, the parse will be canceled and yajl_status_client_canceled will be returned from the parse.
+.PP
+Note about handling of numbers: yajl will only convert numbers that can be represented in a double or a long int. All other numbers will be passed to the client in string form using the yajl_number callback. Furthermore, if yajl_number is not NULL, it will always be used to return numbers, that is yajl_integer and yajl_double will be ignored. If yajl_number is NULL but one of yajl_integer or yajl_double are defined, parsing of a number larger than is representable in a double or long int will result in a parse error.
+.SH "Field Documentation"
+.PP
+.SS "int(* \fByajl_callbacks::yajl_boolean\fP)(void *ctx, int boolVal)"
+.SS "int(* \fByajl_callbacks::yajl_double\fP)(void *ctx, double doubleVal)"
+.SS "int(* \fByajl_callbacks::yajl_end_array\fP)(void *ctx)"
+.SS "int(* \fByajl_callbacks::yajl_end_map\fP)(void *ctx)"
+.SS "int(* \fByajl_callbacks::yajl_integer\fP)(void *ctx, long integerVal)"
+.SS "int(* \fByajl_callbacks::yajl_map_key\fP)(void *ctx, const unsigned char *key, unsigned int stringLen)"
+.SS "int(* \fByajl_callbacks::yajl_null\fP)(void *ctx)"
+.SS "int(* \fByajl_callbacks::yajl_number\fP)(void *ctx, const char *numberVal, unsigned int numberLen)"A callback which passes the string representation of the number back to the client. Will be used for all numbers when present
+.SS "int(* \fByajl_callbacks::yajl_start_array\fP)(void *ctx)"
+.SS "int(* \fByajl_callbacks::yajl_start_map\fP)(void *ctx)"
+.SS "int(* \fByajl_callbacks::yajl_string\fP)(void *ctx, const unsigned char *stringVal, unsigned int stringLen)"strings are returned as pointers into the JSON text when, possible, as a result, they are _not_ null padded
+
+.SH "Author"
+.PP
+Generated automatically by Doxygen for YAJL from the source code.
diff --git a/yajl-1.0.8/share/man/man3/yajl_common.h.3 b/yajl-1.0.8/share/man/man3/yajl_common.h.3
new file mode 100644
index 0000000..acd9058
--- /dev/null
+++ b/yajl-1.0.8/share/man/man3/yajl_common.h.3
@@ -0,0 +1,50 @@
+.TH "yajl_common.h" 3 "18 Dec 2009" "Version 1.0.8" "YAJL" \" -*- nroff -*-
+.ad l
+.nh
+.SH NAME
+yajl_common.h \-
+.SH SYNOPSIS
+.br
+.PP
+.SS "Data Structures"
+
+.in +1c
+.ti -1c
+.RI "struct \fByajl_alloc_funcs\fP"
+.br
+.in -1c
+.SS "Defines"
+
+.in +1c
+.ti -1c
+.RI "#define \fBYAJL_MAX_DEPTH\fP 128"
+.br
+.ti -1c
+.RI "#define \fBYAJL_API\fP"
+.br
+.in -1c
+.SS "Typedefs"
+
+.in +1c
+.ti -1c
+.RI "typedef void *(* \fByajl_malloc_func\fP )(void *ctx, unsigned int sz)"
+.br
+.ti -1c
+.RI "typedef void(* \fByajl_free_func\fP )(void *ctx, void *ptr)"
+.br
+.ti -1c
+.RI "typedef void *(* \fByajl_realloc_func\fP )(void *ctx, void *ptr, unsigned int sz)"
+.br
+.in -1c
+.SH "Define Documentation"
+.PP
+.SS "#define YAJL_API"
+.SS "#define YAJL_MAX_DEPTH 128"
+.SH "Typedef Documentation"
+.PP
+.SS "typedef void(* \fByajl_free_func\fP)(void *ctx, void *ptr)"pointer to a free function, supporting client overriding memory allocation routines
+.SS "typedef void*(* \fByajl_malloc_func\fP)(void *ctx, unsigned int sz)"pointer to a malloc function, supporting client overriding memory allocation routines
+.SS "typedef void*(* \fByajl_realloc_func\fP)(void *ctx, void *ptr, unsigned int sz)"pointer to a realloc function which can resize an allocation.
+.SH "Author"
+.PP
+Generated automatically by Doxygen for YAJL from the source code.
diff --git a/yajl-1.0.8/share/man/man3/yajl_gen.h.3 b/yajl-1.0.8/share/man/man3/yajl_gen.h.3
new file mode 100644
index 0000000..7824672
--- /dev/null
+++ b/yajl-1.0.8/share/man/man3/yajl_gen.h.3
@@ -0,0 +1,170 @@
+.TH "yajl_gen.h" 3 "18 Dec 2009" "Version 1.0.8" "YAJL" \" -*- nroff -*-
+.ad l
+.nh
+.SH NAME
+yajl_gen.h \-
+.SH SYNOPSIS
+.br
+.PP
+\fC#include <yajl/yajl_common.h>\fP
+.br
+
+.SS "Data Structures"
+
+.in +1c
+.ti -1c
+.RI "struct \fByajl_gen_config\fP"
+.br
+.in -1c
+.SS "Typedefs"
+
+.in +1c
+.ti -1c
+.RI "typedef struct yajl_gen_t * \fByajl_gen\fP"
+.br
+.ti -1c
+.RI "typedef void(* \fByajl_print_t\fP )(void *ctx, const char *str, unsigned int len)"
+.br
+.in -1c
+.SS "Enumerations"
+
+.in +1c
+.ti -1c
+.RI "enum \fByajl_gen_status\fP { \fByajl_gen_status_ok\fP = 0, \fByajl_gen_keys_must_be_strings\fP, \fByajl_max_depth_exceeded\fP, \fByajl_gen_in_error_state\fP, \fByajl_gen_generation_complete\fP, \fByajl_gen_invalid_number\fP, \fByajl_gen_no_buf\fP }"
+.br
+.in -1c
+.SS "Functions"
+
+.in +1c
+.ti -1c
+.RI "\fByajl_gen\fP \fByajl_gen_alloc\fP (const \fByajl_gen_config\fP *config, const \fByajl_alloc_funcs\fP *allocFuncs)"
+.br
+.ti -1c
+.RI "\fByajl_gen\fP \fByajl_gen_alloc2\fP (\fByajl_print_t\fP callback, const \fByajl_gen_config\fP *config, const \fByajl_alloc_funcs\fP *allocFuncs, void *ctx)"
+.br
+.ti -1c
+.RI "void \fByajl_gen_free\fP (\fByajl_gen\fP handle)"
+.br
+.ti -1c
+.RI "\fByajl_gen_status\fP \fByajl_gen_integer\fP (\fByajl_gen\fP hand, long int number)"
+.br
+.ti -1c
+.RI "\fByajl_gen_status\fP \fByajl_gen_double\fP (\fByajl_gen\fP hand, double number)"
+.br
+.ti -1c
+.RI "\fByajl_gen_status\fP \fByajl_gen_number\fP (\fByajl_gen\fP hand, const char *num, unsigned int len)"
+.br
+.ti -1c
+.RI "\fByajl_gen_status\fP \fByajl_gen_string\fP (\fByajl_gen\fP hand, const unsigned char *str, unsigned int len)"
+.br
+.ti -1c
+.RI "\fByajl_gen_status\fP \fByajl_gen_null\fP (\fByajl_gen\fP hand)"
+.br
+.ti -1c
+.RI "\fByajl_gen_status\fP \fByajl_gen_bool\fP (\fByajl_gen\fP hand, int boolean)"
+.br
+.ti -1c
+.RI "\fByajl_gen_status\fP \fByajl_gen_map_open\fP (\fByajl_gen\fP hand)"
+.br
+.ti -1c
+.RI "\fByajl_gen_status\fP \fByajl_gen_map_close\fP (\fByajl_gen\fP hand)"
+.br
+.ti -1c
+.RI "\fByajl_gen_status\fP \fByajl_gen_array_open\fP (\fByajl_gen\fP hand)"
+.br
+.ti -1c
+.RI "\fByajl_gen_status\fP \fByajl_gen_array_close\fP (\fByajl_gen\fP hand)"
+.br
+.ti -1c
+.RI "\fByajl_gen_status\fP \fByajl_gen_get_buf\fP (\fByajl_gen\fP hand, const unsigned char **buf, unsigned int *len)"
+.br
+.ti -1c
+.RI "void \fByajl_gen_clear\fP (\fByajl_gen\fP hand)"
+.br
+.in -1c
+.SH "Detailed Description"
+.PP
+Interface to YAJL's JSON generation facilities.
+.SH "Typedef Documentation"
+.PP
+.SS "typedef struct yajl_gen_t* \fByajl_gen\fP"an opaque handle to a generator
+.SS "typedef void(* \fByajl_print_t\fP)(void *ctx, const char *str, unsigned int len)"a callback used for 'printing' the results.
+.SH "Enumeration Type Documentation"
+.PP
+.SS "enum \fByajl_gen_status\fP"generator status codes
+.PP
+\fBEnumerator: \fP
+.in +1c
+.TP
+\fB\fIyajl_gen_status_ok \fP\fP
+no error
+.TP
+\fB\fIyajl_gen_keys_must_be_strings \fP\fP
+at a point where a map key is generated, a function other than yajl_gen_string was called
+.TP
+\fB\fIyajl_max_depth_exceeded \fP\fP
+YAJL's maximum generation depth was exceeded. see YAJL_MAX_DEPTH
+.TP
+\fB\fIyajl_gen_in_error_state \fP\fP
+A generator function (yajl_gen_XXX) was called while in an error state
+.TP
+\fB\fIyajl_gen_generation_complete \fP\fP
+A complete JSON document has been generated
+.TP
+\fB\fIyajl_gen_invalid_number \fP\fP
+yajl_gen_double was passed an invalid floating point value (infinity or NaN).
+.TP
+\fB\fIyajl_gen_no_buf \fP\fP
+A print callback was passed in, so there is no internal buffer to get from
+.SH "Function Documentation"
+.PP
+.SS "\fByajl_gen\fP yajl_gen_alloc (const \fByajl_gen_config\fP * config, const \fByajl_alloc_funcs\fP * allocFuncs)"allocate a generator handle
+.PP
+\fBParameters:\fP
+.RS 4
+\fIconfig\fP a pointer to a structure containing parameters which configure the behavior of the json generator
+.br
+\fIallocFuncs\fP an optional pointer to a structure which allows the client to overide the memory allocation used by yajl. May be NULL, in which case malloc/free/realloc will be used.
+.RE
+.PP
+\fBReturns:\fP
+.RS 4
+an allocated handle on success, NULL on failure (bad params)
+.RE
+.PP
+
+.SS "\fByajl_gen\fP yajl_gen_alloc2 (\fByajl_print_t\fP callback, const \fByajl_gen_config\fP * config, const \fByajl_alloc_funcs\fP * allocFuncs, void * ctx)"allocate a generator handle that will print to the specified callback rather than storing the results in an internal buffer.
+.PP
+\fBParameters:\fP
+.RS 4
+\fIcallback\fP a pointer to a printer function. May be NULL in which case, the results will be store in an internal buffer.
+.br
+\fIconfig\fP a pointer to a structure containing parameters which configure the behavior of the json generator.
+.br
+\fIallocFuncs\fP an optional pointer to a structure which allows the client to overide the memory allocation used by yajl. May be NULL, in which case malloc/free/realloc will be used.
+.br
+\fIctx\fP a context pointer that will be passed to the printer callback.
+.RE
+.PP
+\fBReturns:\fP
+.RS 4
+an allocated handle on success, NULL on failure (bad params)
+.RE
+.PP
+
+.SS "\fByajl_gen_status\fP yajl_gen_array_close (\fByajl_gen\fP hand)"
+.SS "\fByajl_gen_status\fP yajl_gen_array_open (\fByajl_gen\fP hand)"
+.SS "\fByajl_gen_status\fP yajl_gen_bool (\fByajl_gen\fP hand, int boolean)"
+.SS "void yajl_gen_clear (\fByajl_gen\fP hand)"clear yajl's output buffer, but maintain all internal generation state. This function will not 'reset' the generator state, and is intended to enable incremental JSON outputing.
+.SS "\fByajl_gen_status\fP yajl_gen_double (\fByajl_gen\fP hand, double number)"generate a floating point number. number may not be infinity or NaN, as these have no representation in JSON. In these cases the generator will return 'yajl_gen_invalid_number'
+.SS "void yajl_gen_free (\fByajl_gen\fP handle)"free a generator handle
+.SS "\fByajl_gen_status\fP yajl_gen_get_buf (\fByajl_gen\fP hand, const unsigned char ** buf, unsigned int * len)"access the null terminated generator buffer. If incrementally outputing JSON, one should call yajl_gen_clear to clear the buffer. This allows stream generation.
+.SS "\fByajl_gen_status\fP yajl_gen_integer (\fByajl_gen\fP hand, long int number)"
+.SS "\fByajl_gen_status\fP yajl_gen_map_close (\fByajl_gen\fP hand)"
+.SS "\fByajl_gen_status\fP yajl_gen_map_open (\fByajl_gen\fP hand)"
+.SS "\fByajl_gen_status\fP yajl_gen_null (\fByajl_gen\fP hand)"
+.SS "\fByajl_gen_status\fP yajl_gen_number (\fByajl_gen\fP hand, const char * num, unsigned int len)"
+.SS "\fByajl_gen_status\fP yajl_gen_string (\fByajl_gen\fP hand, const unsigned char * str, unsigned int len)"
+.SH "Author"
+.PP
+Generated automatically by Doxygen for YAJL from the source code.
diff --git a/yajl-1.0.8/share/man/man3/yajl_gen_config.3 b/yajl-1.0.8/share/man/man3/yajl_gen_config.3
new file mode 100644
index 0000000..ed28596
--- /dev/null
+++ b/yajl-1.0.8/share/man/man3/yajl_gen_config.3
@@ -0,0 +1,31 @@
+.TH "yajl_gen_config" 3 "18 Dec 2009" "Version 1.0.8" "YAJL" \" -*- nroff -*-
+.ad l
+.nh
+.SH NAME
+yajl_gen_config \-
+.SH SYNOPSIS
+.br
+.PP
+.PP
+\fC#include <yajl_gen.h>\fP
+.SS "Data Fields"
+
+.in +1c
+.ti -1c
+.RI "unsigned int \fBbeautify\fP"
+.br
+.ti -1c
+.RI "const char * \fBindentString\fP"
+.br
+.in -1c
+.SH "Detailed Description"
+.PP
+configuration structure for the generator
+.SH "Field Documentation"
+.PP
+.SS "unsigned int \fByajl_gen_config::beautify\fP"generate indented (beautiful) output
+.SS "const char* \fByajl_gen_config::indentString\fP"an opportunity to define an indent string. such as \\t or some number of spaces. default is four spaces ' '. This member is only relevant when beautify is true
+
+.SH "Author"
+.PP
+Generated automatically by Doxygen for YAJL from the source code.
diff --git a/yajl-1.0.8/share/man/man3/yajl_parse.h.3 b/yajl-1.0.8/share/man/man3/yajl_parse.h.3
new file mode 100644
index 0000000..a7a266e
--- /dev/null
+++ b/yajl-1.0.8/share/man/man3/yajl_parse.h.3
@@ -0,0 +1,142 @@
+.TH "yajl_parse.h" 3 "18 Dec 2009" "Version 1.0.8" "YAJL" \" -*- nroff -*-
+.ad l
+.nh
+.SH NAME
+yajl_parse.h \-
+.SH SYNOPSIS
+.br
+.PP
+\fC#include <yajl/yajl_common.h>\fP
+.br
+
+.SS "Data Structures"
+
+.in +1c
+.ti -1c
+.RI "struct \fByajl_callbacks\fP"
+.br
+.ti -1c
+.RI "struct \fByajl_parser_config\fP"
+.br
+.in -1c
+.SS "Typedefs"
+
+.in +1c
+.ti -1c
+.RI "typedef struct yajl_handle_t * \fByajl_handle\fP"
+.br
+.in -1c
+.SS "Enumerations"
+
+.in +1c
+.ti -1c
+.RI "enum \fByajl_status\fP { \fByajl_status_ok\fP, \fByajl_status_client_canceled\fP, \fByajl_status_insufficient_data\fP, \fByajl_status_error\fP }"
+.br
+.in -1c
+.SS "Functions"
+
+.in +1c
+.ti -1c
+.RI "const char * \fByajl_status_to_string\fP (\fByajl_status\fP code)"
+.br
+.ti -1c
+.RI "\fByajl_handle\fP \fByajl_alloc\fP (const \fByajl_callbacks\fP *callbacks, const \fByajl_parser_config\fP *config, const \fByajl_alloc_funcs\fP *allocFuncs, void *ctx)"
+.br
+.ti -1c
+.RI "void \fByajl_free\fP (\fByajl_handle\fP handle)"
+.br
+.ti -1c
+.RI "\fByajl_status\fP \fByajl_parse\fP (\fByajl_handle\fP hand, const unsigned char *jsonText, unsigned int jsonTextLength)"
+.br
+.ti -1c
+.RI "\fByajl_status\fP \fByajl_parse_complete\fP (\fByajl_handle\fP hand)"
+.br
+.ti -1c
+.RI "unsigned char * \fByajl_get_error\fP (\fByajl_handle\fP hand, int verbose, const unsigned char *jsonText, unsigned int jsonTextLength)"
+.br
+.ti -1c
+.RI "unsigned int \fByajl_get_bytes_consumed\fP (\fByajl_handle\fP hand)"
+.br
+.ti -1c
+.RI "void \fByajl_free_error\fP (\fByajl_handle\fP hand, unsigned char *str)"
+.br
+.in -1c
+.SH "Detailed Description"
+.PP
+Interface to YAJL's JSON parsing facilities.
+.SH "Typedef Documentation"
+.PP
+.SS "typedef struct yajl_handle_t* \fByajl_handle\fP"an opaque handle to a parser
+.SH "Enumeration Type Documentation"
+.PP
+.SS "enum \fByajl_status\fP"error codes returned from this interface
+.PP
+\fBEnumerator: \fP
+.in +1c
+.TP
+\fB\fIyajl_status_ok \fP\fP
+no error was encountered
+.TP
+\fB\fIyajl_status_client_canceled \fP\fP
+a client callback returned zero, stopping the parse
+.TP
+\fB\fIyajl_status_insufficient_data \fP\fP
+The parse cannot yet complete because more json input text is required, call yajl_parse with the next buffer of input text. (pertinent only when stream parsing)
+.TP
+\fB\fIyajl_status_error \fP\fP
+An error occured during the parse. Call yajl_get_error for more information about the encountered error
+.SH "Function Documentation"
+.PP
+.SS "\fByajl_handle\fP yajl_alloc (const \fByajl_callbacks\fP * callbacks, const \fByajl_parser_config\fP * config, const \fByajl_alloc_funcs\fP * allocFuncs, void * ctx)"allocate a parser handle
+.PP
+\fBParameters:\fP
+.RS 4
+\fIcallbacks\fP a yajl callbacks structure specifying the functions to call when different JSON entities are encountered in the input text. May be NULL, which is only useful for validation.
+.br
+\fIconfig\fP configuration parameters for the parse.
+.br
+\fIctx\fP a context pointer that will be passed to callbacks.
+.RE
+.PP
+
+.SS "void yajl_free (\fByajl_handle\fP handle)"free a parser handle
+.SS "void yajl_free_error (\fByajl_handle\fP hand, unsigned char * str)"free an error returned from yajl_get_error
+.SS "unsigned int yajl_get_bytes_consumed (\fByajl_handle\fP hand)"get the amount of data consumed from the last chunk passed to YAJL.
+.PP
+In the case of a successful parse this can help you understand if the entire buffer was consumed (which will allow you to handle 'junk at end of input'.
+.PP
+In the event an error is encountered during parsing, this function affords the client a way to get the offset into the most recent chunk where the error occured. 0 will be returned if no error was encountered.
+.SS "unsigned char* yajl_get_error (\fByajl_handle\fP hand, int verbose, const unsigned char * jsonText, unsigned int jsonTextLength)"get an error string describing the state of the parse.
+.PP
+If verbose is non-zero, the message will include the JSON text where the error occured, along with an arrow pointing to the specific char.
+.PP
+\fBReturns:\fP
+.RS 4
+A dynamically allocated string will be returned which should be freed with yajl_free_error
+.RE
+.PP
+
+.SS "\fByajl_status\fP yajl_parse (\fByajl_handle\fP hand, const unsigned char * jsonText, unsigned int jsonTextLength)"Parse some json!
+.PP
+\fBParameters:\fP
+.RS 4
+\fIhand\fP - a handle to the json parser allocated with yajl_alloc
+.br
+\fIjsonText\fP - a pointer to the UTF8 json text to be parsed
+.br
+\fIjsonTextLength\fP - the length, in bytes, of input text
+.RE
+.PP
+
+.SS "\fByajl_status\fP yajl_parse_complete (\fByajl_handle\fP hand)"Parse any remaining buffered json. Since yajl is a stream-based parser, without an explicit end of input, yajl sometimes can't decide if content at the end of the stream is valid or not. For example, if '1' has been fed in, yajl can't know whether another digit is next or some character that would terminate the integer token.
+.PP
+\fBParameters:\fP
+.RS 4
+\fIhand\fP - a handle to the json parser allocated with yajl_alloc
+.RE
+.PP
+
+.SS "const char* yajl_status_to_string (\fByajl_status\fP code)"attain a human readable, english, string for an error
+.SH "Author"
+.PP
+Generated automatically by Doxygen for YAJL from the source code.
diff --git a/yajl-1.0.8/share/man/man3/yajl_parser_config.3 b/yajl-1.0.8/share/man/man3/yajl_parser_config.3
new file mode 100644
index 0000000..c9360a2
--- /dev/null
+++ b/yajl-1.0.8/share/man/man3/yajl_parser_config.3
@@ -0,0 +1,31 @@
+.TH "yajl_parser_config" 3 "18 Dec 2009" "Version 1.0.8" "YAJL" \" -*- nroff -*-
+.ad l
+.nh
+.SH NAME
+yajl_parser_config \-
+.SH SYNOPSIS
+.br
+.PP
+.PP
+\fC#include <yajl_parse.h>\fP
+.SS "Data Fields"
+
+.in +1c
+.ti -1c
+.RI "unsigned int \fBallowComments\fP"
+.br
+.ti -1c
+.RI "unsigned int \fBcheckUTF8\fP"
+.br
+.in -1c
+.SH "Detailed Description"
+.PP
+configuration structure for the generator
+.SH "Field Documentation"
+.PP
+.SS "unsigned int \fByajl_parser_config::allowComments\fP"if nonzero, javascript style comments will be allowed in the json input, both slash star and slash slash
+.SS "unsigned int \fByajl_parser_config::checkUTF8\fP"if nonzero, invalid UTF8 strings will cause a parse error
+
+.SH "Author"
+.PP
+Generated automatically by Doxygen for YAJL from the source code.